Python基础内容:怎样快速理解if __name__ == 'main'语句

__name__ 是当前模块名,当模块被直接运行时模块名为 __main__ 。这句话的意思就是,当模块被直接运行时,如下代码块将被运行,当模块是被导入时,代码块不被运行。python

Python基础内容:怎样快速理解if __name__ == 'main'语句

相信好多初学者在学习python的过程当中,常常会遇到if __name__ == 'main'语句,可能你知道它的做用,也可能很模糊,今天就给你们分享下个人理解。学习

咱们先新建一个text的py文件,并写入如下内容并运行3d

Python基础内容:怎样快速理解if __name__ == 'main'语句

而后呢,在同一个文件夹中在新建一个py文件text1,写入一行代码:import text 而后运行看看结果blog

Python基础内容:怎样快速理解if __name__ == 'main'语句

与以前test.py代码运行结果比较,只有输出学习Python,也就是if __name__=="__main__": 以前的语句被执行,以后的没有被执行。test

为何会这样呢?别急,咱们稍微处理下代码就能够看明白了:import

在 if __name__=="__main__"以前加入一行代码:print(__name__),即打印出__name__,而后咱们在从新分别执行2个代码看看基础

Python基础内容:怎样快速理解if __name__ == 'main'语句

这就很清楚了,在text中__name__变量的值为__main__,而在text1中,__name__的值为text,明显不知足if语句,所以,后面的代码没法执行!变量

仔细想一想,它的原理也就是:原理

每一个python模块(文件)都包含内置的变量__name__,当该模块被执行的时候,__name__就等于文件名。而import到其余模块(文件)中,则__name__等于当前的模块名,而__main__等于当前文件名,因此直接执行模块的时候if __name__=="__main__"为真,能够执行;import到其余模块(文件)中,if __name__=="__main__"为假,那固然就不执行对应的代码了。im

简单说就是:__name__是当前的模块名字,在当前文件时能够被执行,而模块被导入时,代码不被运行!

Python基础内容:怎样快速理解if __name__ == 'main'语句

喜欢就关注下呗( ̄ε  ̄)

相关文章
相关标签/搜索