7.5.5 モジュールオブジェクト (module object)

モジュールオブジェクト固有の関数は数個しかありません。

PyTypeObject PyModule_Type
この PyTypeObject のインスタンスは Python のモジュールオブジェクト 型を表現します。 このオブジェクトは、Python プログラムには types.ModuleType として公開されています。

int PyModule_Check(PyObject *p)
o がモジュールオブジェクトかモジュールオブジェクトのサブタイプで あるときに真を返します。 バージョン 2.2 で 変更 された仕様: サブタイプを引数にとれるようになりました

int PyModule_CheckExact(PyObject *p)
o がモジュールオブジェクトで、かつモジュールオブジェクトの サブタイプでないときに真を返します。 PyModule_Type. バージョン 2.2 で 新たに追加 された仕様です。

PyObject* PyModule_New(const char *name)
戻り値: 新たな参照.
__name__ 属性が name に設定された新たなモジュール オブジェクトを返します。モジュールの __doc__ および __name__ 属性だけに値が入っています; __file__ 属性に値を入れるのは呼び出し側の責任です。

PyObject* PyModule_GetDict(PyObject *module)
戻り値: 借りた参照.
module の名前空間を実現する辞書オブジェクトを返します; このオブジェクトはモジュールオブジェクトの __dict__ と同じです。この関数が失敗することはありません。 拡張モジュールでは、この関数で得たモジュールの__dict__ を直接いじるより、他のPyModule_*() および PyObject_*() 関数を使うよう勧めます。

char* PyModule_GetName(PyObject *module)
module__name__ の値を返します。 モジュールがこの属性を提供していない場合や文字列型でない場合、 SystemError を送出して NULL を返します。

char* PyModule_GetFilename(PyObject *module)
module をロードするために使ったファイルの名前を、module__file__ 属性から調べて返します。__file__ が定義されていない場合や文字列型でない場合、 SystemError を送出して NULL を返します。

int PyModule_AddObject(PyObject *module, const char *name, PyObject *value)
module にオブジェクトをname として追加します。 この関数はモジュールの初期化関数から利用される便宜関数です。 エラーのときには -1 を、成功したときには 0 を 返します。 バージョン 2.0 で 新たに追加 された仕様です。

int PyModule_AddIntConstant(PyObject *module, const char *name, long value)
module に整数定数をname として追加します。 この便宜関数はモジュールの初期化関数から利用されています。 エラーのときには -1 を、成功したときには 0 を 返します。 バージョン 2.0 で 新たに追加 された仕様です。

int PyModule_AddStringConstant(PyObject *module, const char *name, char *value)
module に文字列定数をname として追加します。 この便宜関数はモジュールの初期化関数から利用されています。 文字列 value は null 終端されていなければなりません。 エラーのときには -1 を、成功したときには 0 を 返します。 バージョン 2.0 で 新たに追加 された仕様です。

ご意見やご指摘をお寄せになりたい方は、 このドキュメントについて... をご覧ください。