ユーザーが使用できるシェルを提供するwxPythonアプリを作成しています。(これはwx.lib.shell.PyShell
、wxPythonに付属しているシェルです。)
問題は、このシェルで作成された定義の.__module__
属性が悪いことです。例えば:
>>> def f(): 0
...
>>> f.__module__
>>> f.__module__ is None
True
>>> class A(object):
... pass
...
>>>
>>> A.__module__
'__builtin__'
.__module__
これら両方のオブジェクトの属性はである必要があると思います__main__
。わからない。None
しかし、それは間違いなくまたはのいずれかであってはなりません__builtin__
。
.__module__
シェルにこれらの関数とクラスに適切な属性を与えるにはどうすればよいですか?