【文件属性】:
文件名称:模块对象-dsp28335数据手册 中文版
文件大小:1.45MB
文件格式:PDF
更新时间:2024-06-27 18:31:55
Python笔记 雨痕 Python编程 深入python python学习
6.1 模块对象
模块对象有⼏几个重要属性:
• __name__: 模块名 .,在 sys.modules 中以此为主键。
• __file__: 模块完整⽂文件名。
• __dict__: 模块 globals 名字空间。
除使⽤用 py ⽂文件外,还可动态创建模块对象。
>>> import sys, types
>>> m = types.ModuleType("sample", "sample module.")!! # ⽤用 type 创建对象。
>>> m
>>> m.__dict__
{'__name__': 'sample', '__doc__': 'sample module.'}
>>> "sample" in sys.modules! ! ! ! ! # 并没有添加到 sys.modules。
False
>>> def test(): print "test..."
>>> m.test = test! ! ! ! ! ! ! # 动态添加模块成员。
>>> m.test()
test...
为模块动态添加函数成员时,须注意函数所引⽤用的是其定义模块的名字空间。
>>> def test(): print "test:", __name__
>>> test()
test: __main__
>>> m.test = test
>>> m.test()
test: __main__
imp.new_module() 也可⽤用来动态创建模块对象,同样不会添加到 sys.modules。
>>> import imp
82