如何理解__name__
我们可以把他简单地理解为C中的main,但是其又不完全和main一致,首先呢,一般python项目中我们会约定俗成是把包含__name__=='main’部分当作项目的入口。
先看如下程序:test.py
print('恋习python')
def main():
print('恋习python')
print(__name__)
if __name__ == '__main__'
main()
print('跟我分析,恋习练习')
输出结果: 恋习python main 恋习python 跟我分析,恋习练习
根据程序我们得知:如果python中没有import其他程序模块,那么__name__都会等于__main,我们一般默认这里是程序入口。
然后那么如果我们在某个py文件里import了其他模块又会出现什么情况下呢? 我们继续看如下程序:import.py
import test
print(__name__)
输出结果: 恋习python test 跟我分析,恋习练习 main 由此我们可以看出,import其他模块的__name__,输出的话结果是当前文件名,也就是test。而自己的__name__,其输出结果依然是__main__。我们如何看__name__是否会等于__main__,就要看这个__name__是在哪个文件中的
|