Python3---常见函数---"if __name__ == __main__"
前言
该文章讲解了语句 if __name__ =='__main__'的作用
2020-01-13
天象独行
Python是一种解释型脚本语言,在执行过程中从模块顶行运行,逐行进行翻译执行。所以,对于Python来说,它不需要向Java,c等语言需要一个统一的main()作为程序入口。
在了解if __name__ == __main__之前我们先看看“__name__ ”?
“__name__”:表示当前模块的名称(A模块下“__name__”的值等于A,B模块下“__name__”的值等于B)。
那么下面举例说明:
模块A:
1 #A 2 a = 100 3 print("A") 4 print("A".format(__name__)) 5 print("--------------------------") 6 if __name__ == '__main__': 7 print("A")
模块B
#B import A b = 200 print("B") print("B".format(__name__))
运行结果:
/home/aaron/桌面/Python3-Test/venv/bin/python /home/aaron/桌面/Python3-Test/B.py A A -------------------------- B B Process finished with exit code 0
很明显,我们看到在A被B调用之后,A模块当中的代码if __name__ == __main__包含的代码没有被执行。它的作用已经很明显了。在被调用的之后,不想被执行的代码可以放在if __name__ == __main__里面。那么他是如何实现的呢?
首先,在模块A当中“__name__”的值等于“A”。在B被调用之后,if语句不再成立,导致里面的代码不被执行。