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

【Python】if __name__ == '__main__'

2013-02-23 23:54 477 查看
Python脚本和模块都是一个以.py结束的文件,那程序是如何判断一个.py文件是作为脚本还是模块呢?关键是一个名为__name__的变量,如果它的值是__main__,则不能作为模块,只能作为脚本直接运行。所以在很多脚本的最后都有一段类似下面的语句,限制只能以脚本方式运行,不作为模块:

if__name__=='__main__':
main()
最近一直在学习用python,因为遇到过几次if__name__=="__main__"表达式,当时没当作回事,其实这个作用挺大的,因此写下来记录一下备忘。
python的语法我就不在此描述了,因为相关文档很多。

test.py
<

CodehighlightingproducedbyActiproCodeHighlighter(freeware)http://www.CodeHighlighter.com/
>

deftest():


print"testisrunning"




if__name__=="__main__":#自运行时调用该程序块


print"testmainisworking"




if__name__=="test":#import时调用该程序块


print"testisinvoked"
自执行效果如图:



import执行效果如图:



执行test()方法效果如图:



通过这个例子,python应用模块的自测试程序都放在if__name__=="__main__"条件块下是多么方便。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: