之前python3文章中有if __name__ == '__main__'这个,很多初学者搞不懂,为啥要写这个呢,又是啥意思呢,今天小雨就用一篇文章来把这个东西讲透彻:
新建test.py文件,代码如下:
# coding=utf-8 print('Python从入门到入魔') def main(): print('Python从入门到入魔') print(__name__) if __name__ == '__main__': main() print('Python从入门到入魔,群号274728691')
运行后结果如下:
我们可以看到此时__name__的值为__main__ 所以if语句判断成立,后面的代码就都成功执行了。
我们再到和test.py同一个目录下新建一个python文件,代码如下:
import test
运行结果如下:
我们我们可以看到此时__name__的值为test,也就是引入的文件的文件名,所以if语句判断成立,后面的代码就没有执行。
总结:if __name__ == '__main__' 的意思是:当python文件被直接运行时,if __name__ == '__main__' 之下的代码块将被运行;当python文件以模块形式被导入时,if __name__ == '__main__' 之下的代码块不被运行。