Python」カテゴリーアーカイブ

プログラミング言語「Python」に関するカテゴリーです。

PythonでExifの取得

PIL(Python Imaging Library)を使ってExifを取得できます。

>>> from PIL import Image
>>> img = Image.open('example.jpg')
exif = img._getexif()

Tag IDをTag Nameに変換して出力します。

>>> from PIL.ExifTags import TAGS
>>> for k, v in exif.iteritems():
...   print TAGS.get(k, k), ':', v
...
ExifVersion : 0220
ExifImageWidth : 1200
DateTimeOriginal : 2013:07:07 00:00:00
DateTimeDigitized : 2013:07:07 00:00:00
(以下省略)

Pythonでクリップボードの読み書き

クリップボードの読み書きをする方法はいろいろあると思いますが、Tkinterを使うと手軽にPythonでクリップボードの読み書きが実装できます。

クリップボードの内容を取得

from Tkinter import Tk
r = Tk()
r.withdraw()
r.clipboard_get()

クリップボードの内容を更新

r.clipboard_append('hello')

クリップボードの内容を消去

r.clipboard_clear()

使い終わったウィンドウの破棄

r.destroy()

Pythonのコンストラクタとデストラクタ

__init____del__を定義することで、クラスの生成時および破棄時に実行したい処理を記述できます。

>>> class C:
...   def __init__(self):
...     print '__init__'
...   def __del__(self):
...     print '__del__'
...
>>> c = C()
__init__
>>> del c
__del__

Pythonの__init__はただの関数であって、厳密にはコンストラクタとは呼べないそうです。