每个模块都有一个名称,在模块中可以通过语句来找出模块的名称。
这在一个场合特别有用——就如前面所提到的,
当一个模块被第一次输入的时候,这个模块的主块将被运行。假如我们只想在程序本身被使用的时候运行主块,而在它被别的模块输入的时候不运行主块,我们该怎么做呢?这可以通过模块的__name__属性完成。
每个Python模块都有它的__name__,如果它是'__main__',这说明这个模块被用户单独运行,我们可以进行相应的恰当操作
-
'''
-
# Filename: mymodule.py
-
@author: king
-
'''
-
def sayHello():
-
print 'king'
-
-
name='verson1'
-
-
if __name__ == '__main__':
-
print 'This program is being run by itself'
-
else:
-
print 'I am being imported from another module'
直接运行mymodule.py
输出:This program is being run by itself
通过另外一个程序调用运行
-
#Filename: moduleTest.py:
-
-
import mymodule
-
-
mymodule.sayHello()
-
-
print mymodule.name
输出:
I am being imported from another module
king
verson1
阅读(2626) | 评论(0) | 转发(1) |