基本的なことかもしれませんが、知らなかったので
__enter__、__exit__はwithに入ったとき、抜けるときに自動的にやることを記述できる
__call__は関数やクラスが呼び出されたときに自動でやることを記述できる
class A:
def __init__(self):
pass
def __call__(self, a):
print("A called")
とすると。
A(a)
とするとコールされたので
A called
とプリントされます。
__future__はPython2,3の互換性のためにある
おまじない的に。標準モジュールを絶対パス?でインポートするfrom __future__ import absolute_import
__class__はクラスタイプを知るために使う
>>> a = 1
>>> a.__class__
<class 'int'>
>>>import re
>>>re.__class__
<class 'module'>
ということで、クラスの型を出力してくれます。__type__ではないのが少し不思議ですが、そういうものなのでしょう。
0 件のコメント:
コメントを投稿