我们可能会在很多代码中出现这句话,这是什么意思呢?
我们用python有两种方式,一是直接执行,二是import:
1.实例详解:
①。新建一个文件First.py,里面写入
print("Row One")
if __name__ == '__main__':
print("Row two")
②。然后执行该文件。
windows系统中是 py First.py, Linux系统中是 python First.py
发现结果是:(两行话都执行了)
③。然后创建一个新文件Second.py,里面写入:
import First
④。执行Second.py,得到:(只执行了一行)
2.详细解释:
相信读者已经发现一些规律了,那就是:
当我们直接执行一个.py文件时,if __name__ == '__main__':后的话一定会执行
而当import时不会执行后面的话。
这是因为 __name__其实是python的一个内置变量,如果你print(__name__),那么它会直接显示"__main__",在程序运行过程中,__name__会替换为该文件的文件名+.py, 而当import时,__name__会替换为该文件的文件名。因为执行者是import另外的,所以名字不同,故不会打印这句话。
3.Note:
你可能会发现多了.pyc这个文件,不要担心,这是一种机制,助于快速运行python文件。详细的 .pyc 内容请参考一下网址:
https://www.cnblogs.com/zoe233/p/6993972.html