当执行 Python 文件时, 它会创建许多特殊的变量, 例如__name__
变量__name__
您问题的答案是:
if __name__ == "__main__":
# Do something
这意味着,如果所执行的文件的名称作为源文件运行,并且非模块然后它会运行里面的代码。 这可以用简单的示例来证明。 创建两个 Python 文件,foo.py
和second.py
。然后在foo.py
,类型如下:
if __name__ == "__main__":
print("file is not imported")
else:
print("file is imported")
和在second.py
,类型如下:
import foo
if foo.__name__ == "__main__":
print("file is not imported")
else:
print("file is imported")
除此以外,如果你们要这样做,print(__name__)
然后将打印__main__
为什么?
因为文件以主要源代码,如果你愿意print(foo.__name__)
将打印fuo fuo的默认值,因为__name__
变量是文件的名称,默认是文件的默认名称,我的意思是,您也可以更改它。要做到这一点,只需去foo.py
并做此操作的文件 :__name__ = "name"
。然后当你运行文件,例如,
__name__ = "Hello, World!"
print(__name__)
然后产出将是:
Hello, World!