您的位置:首页 > 编程语言 > Python开发

Python:if __name__ == '__main__'

2014-08-28 14:42 519 查看
很多模块里都会看到这句话,一般用于模块自测时使用。

所有的模块都有一个内置属性 __name__。

一个模块的 __name__ 的值取决于您如何应用模块。

一个Python文件有两种使用方式,直接使用或者是作为模块使用。

1.如果像一个标准的程序那样,直接运行模块,在这种情况下 __name__ 的值将是一个缺省"__main__":

#创建一个名叫task.py的文件,内容如下:

print("This is task.py")
print("Name is:",__name__)

if __name__ =="__main__":
print 'hello,my name is main'

if __name__ =="task":
print 'hello,my name is task'


#运行之后结果是;
#This is task.py
#Name is: __main__
#hello,my name is main


2. 如果 import 一个模块,那么模块__name__ 的值通常为模块文件名,不带路径或者文件扩展名。

#新建一个test.py文件,把task.py作为一个模块导入
import task

#结果如下
#This is task.py
#name is: task
#hello,my name is task


所以说模块自测的时候,写在if __name__ == '__main__':里的代码,会直接执行;

作为模块被调用的时候,写在if __name__ == '__main__':里的代码,不会被执行。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: