当前位置:首页 > 话题广场 > 财经专区 > 黄金

【#NAME?】「Python」__name__ 是什么?

前言 在我们浏览一下 python 文件或者自己写 python 代码的时候,时常会在代码的最后加上这样的一行代码 if __name__ == '__main__': func_name()那么这一行代码有什么具体的作用呢,不加的话会对我们的结果造成影响吗?

__name__

首先对于用双下划线开头且结尾的变量,在 Python 中被称为 内置变量 ,除了 __name__ ,我们常见的还有 __init__ , __dict__ 等等.那么有多少内置变量呢?我们可以通过下面在交互界面输入下面的命令,查看 Python 全部内置变量和内置函数 >>> dir(__builtins__)结果如下图: (9500.163.com)

不同情况下的 __name__ 的值

首先我们需要知道 __name__ 在不同情况下会有不同值,它的值取决于我们是如何执行脚本的.我们可以通过几个例子感受一下:

Example 0

# print(f'__name__ 在 值为 {__name__}')然后直接执行一下代码 $ python 然后看一下输出 $ python __name__ 在 值为 __main__在这个例子中,我们发现 __name__ 的值是 __main__

Example 1

在这个例子中,我们重新创建一个脚本 然后我们在 中调用 # import test print(f'__name__ 在 值为 {__name__}')接着执行一下 ,再看一下输出 python __name__ 在 值为 test __name__ 在 值为 __main__结果是不是很有意思?整个过程是什么样子的呢?简单的画了一个图 (9501.163.com)

什么时候使用 __name__

有时候,我们用 Python 写了一个脚本,当我们既希望这个脚本可以单独运行,同样希望它可以在其他的脚本中发挥作用. 这个时候就需要考虑使用 __name__ 了. 这里通过改造上面 Example 1的例子来直观感受一下 修改一下 文件 # def hello(name): print(f'Hello,{name}') if __name__ == '__main__': hello("test")再修改一下 文件 # from test import hello hello("test1")然后让我们先尝试直接运行一下 ,很显然这个时候, if 语句条件满足,会输出 Hello,test $ python Hello,test这个时候我们如果运行 ,程序就会输出 Hello,test1 了 $ python Hello,test1如果我们把 if __name__ == "__main__" 在 去掉会发生什么呢? $ python Hello,test Hello,test1 达到当天最大量API KEY 超过次数限制

1.《【#NAME?】「Python」__name__ 是什么?》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《【#NAME?】「Python」__name__ 是什么?》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/caijing/2172270.html

上一篇

100元能买黄金龙骨吗专题之和平精英:玩家800买皇冠账号,本以为血亏,祭出截图让网友羡慕

下一篇

【0.0275克黄金是多少克】48只个股创5178点以来新低

#NAME?看这里!c#10中的namespace

#NAME?看这里!c#10中的namespace

#NAME?相关介绍,a,namespace是c#用于管理类型分离的关键字。其他namespace可以具有相同的名称类型,namespace可以嵌套。 Demo01.cs namespace NameSpaceDemo {...

#NAME?,干货看这篇!浅析python 中__name__ = '__main__' 的作用!容易忽略的问题

#NAME?,干货看这篇!浅析python 中__name__ = '__main__' 的作用!容易忽略的问题

#NAME?相关介绍,很多新手刚开始学习python的时候,经常会看到python中_ _ name _ _=\ ' _ _ _ main _ _ \ '这样的代码,可能很多新手在python中_ _; 有...

#NAME?看这里!浅析python 中__name__ = '__main__' 的作用!容易忽略的问题

#NAME?看这里!浅析python 中__name__ = '__main__' 的作用!容易忽略的问题

#NAME?相关介绍,很多新手刚开始学习python的时候,经常会看到python中_ _ name _ _=\ ' _ _ _ main _ _ \ '这样的代码,可能很多新手在python中_ _; 有...

#NAME?,干货看这篇!浅析python 中__name__ = '__main__' 的作用!容易忽略的问题

#NAME?,干货看这篇!浅析python 中__name__ = '__main__' 的作用!容易忽略的问题

#NAME?相关介绍,很多新手刚开始学习python的时候经常会看到python 中__name__ = \'__main__\' 这样的代码,可能很多新手一开始学习的时候都比较疑惑,python 中__n...

【#NAME?】专题避免这些VLOOKUP函数错误,主管都佩服地跪下了

【#NAME?】专题避免这些VLOOKUP函数错误,主管都佩服地跪下了

#NAME?相关介绍,目前职场excel办公室最受欢迎的是什么?毫无疑问是VLOOKUP函数。上一篇文章中的小编已经说明了VLOOKUP函数,没有举过几个例子的朋友以后能推翻的话,会很有帮助。(大卫亚设)。 回归到今天的主...

#NAME?,干货看这篇!避免这些VLOOKUP函数错误,主管都佩服地跪下了

#NAME?,干货看这篇!避免这些VLOOKUP函数错误,主管都佩服地跪下了

#NAME?相关介绍,目前职场excel办公室最受欢迎的是什么?毫无疑问是VLOOKUP函数。上一篇文章中的小编已经说明了VLOOKUP函数,没有举过几个例子的朋友以后能推翻的话,会很有帮助。(大卫亚设)。 回归到今天的主...

关于#NAME?我想说超详细的Oracle19c修改数据库用户名教程

关于#NAME?我想说超详细的Oracle19c修改数据库用户名教程

#NAME?相关介绍,概述 由于开发很多视图指定了某个用户名,故需修改数据库用户名srmpro为srm。 达到当天最大量API KEY 超过次数限制以下为操作过程.. 1、停止应用 防止修改用户名密码后应用一直在发起错误连...

#NAME?看这里!避免这些VLOOKUP函数错误,主管都佩服地跪下了

#NAME?看这里!避免这些VLOOKUP函数错误,主管都佩服地跪下了

#NAME?相关介绍,目前职场excel办公室最受欢迎的是什么?毫无疑问是VLOOKUP函数。上一篇文章中的小编已经说明了VLOOKUP函数,没有举过几个例子的朋友以后能推翻的话,会很有帮助。(大卫亚设)。 回归到今天的主...