我遇到了python中的一行:
def somefunc:
[...]
if __name__ == '__main__':
somefunc
我不明白if __name…是干什么用的。
假设有:
if __name__ == '__main__': main()
#this code will find main
那么这是否类似于C/c++中的main()函数,它在任何其他函数之前执行?
如果您直接执行脚本,而不导入它,则__name__
将等于__main__
。但是如果您导入这个文件,__name__
将等于导入它的模块的名称。此条件确保从该文件执行代码。
你可以认为这是C中的main()或perl中的BEGIN{}块。
使用python file1.py运行代码。
__name__
在file1.py中等于'__main__'
,但在file1.py导入的其他文件中,变量是别的东西