Python基础内容:怎样快速理解if __name__ ==‘main’语句(python中if的用法,关键词优化)

时间:2024-05-04 10:48:28 作者 : 石家庄SEO 分类 : 关键词优化
  • TAG :

    Python%E5%9F%BA%E7%A1%80%E5%86%85%E5%AE%B9%EF%BC%9A%E6%80%8E%E6%A0%B7%E5%BF%AB%E9%80%9F%E7%90%86%E8%A7%A3if+__name__+%3D%3D%E2%80%98main%E2%80%99%E8%AF%AD%E5%8F%A5

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

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

我们先新建一个text的py文件,并写入以下内容并运行

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

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

为什么会这样呢?别急,我们稍微处理下代码就可以看明白了:在 if __name__=="__main__"之前加入一行代码:print(__name__),即打印出__name__,然后我们在重新分别执行2个代码看看

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

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

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

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

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

本文:Python基础内容:怎样快速理解if __name__ ==‘main’语句的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:Python学习中文件读写的方式下一篇:

4 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18