python特殊变量name_一文掌握 __name__ 变量和在Python中的用法
【python特殊变量name_一文掌握 __name__ 变量和在Python中的用法】_原题是:一文掌握 __name__ 变量和在Python中的用法
在研究Python代码时,你可能经常会看到__name__变量。下面是一个示例代码:
if__name__ == '__main__':
main
下面,我们将向你展示如何使用这个变量在Python中创建模块。
为什么使用__name__变量?
__name__变量(前后两个下划线)是一个特殊的Python变量。它的值取决于我们如何执行包含它的脚本。
有时候,在编写的脚本中包含的函数可能在其他脚本中也很有用。在Python中,你可以将该脚本作为模块导入到另一个脚本中。
由于这个特殊的变量,你可以决定是否要运行脚本。或者希望导入脚本中定义的函数。
__name__变量包含哪些值?
运行脚本时,__name__变量等于__main__。当你导入包含脚本时,它将包含脚本的名称。
让我们看一下这两个用法,并用两个例子描述这个过程。
场景1:运行脚本
假设我们编写的脚本name.py如下:
defmyFunction:
print'The value of __name__ is '+ __name__
defmain:
myFunction
if__name__ == '__main__':
main
如果你运行name.py,过程如下:
文章图片
在运行所有其他代码之前,将__name__变量设置为__main__。然后,运行main和myFunctiondef声明。因为条件的值为true,所以调用main函数。反过来调用myFunction。打印出__main__的值。
场景2:在另一个脚本中导入脚本
如果我们想在另一个脚本中重用myFunction,例如importing.py。我们可以将namespace .py作为模块导入。
importing.py的代码如下:
importname asns
ns.myFunction
然后我们有两个作用域:一个是importing,另一个是name。在下图中,你会看到它与第一个例子的不同之处。
文章图片
在importing.py中,将__name__变量设置为__main__。通过导入name,Python开始通过在模块名中添加.py来查找文件。然后运行导入文件中包含的代码。
但这次它被设置为name。再次运行main和myFunction的def语句。但是,现在条件计算为false,main未被调用。
在importing.py中,我们调用myFunction来输出name。myFunction在定义函数时知道Name。
如果你要在importing中打印__name__,那么将输出__main__。原因是Python使用了importing范围内已知的值。
总结
在这篇简短的文章中,我们解释了如何使用__name__变量来编写模块。你还可以自己运行这些模块进行测试和使用。返回搜狐,查看更多
责任编辑:
推荐阅读
- python中row是什么意思_一文搞懂Python中的yield
- 可能尚未为Cursor android初始化局部变量
- 如何在Python应用程序中查找安全漏洞()
- Intellij(Android studio)成员变量前缀
- Spectron,mocha和chai可以声称变量在Electron-app中具有预期值吗()
- Python数据分析--工具安装及Numpy介绍(1)
- 【Python 技巧】类继承和内置的 issubclass()
- 【Python 技巧】“for”(和“while”)循环可以有一个“else”分支
- python删除列表中特定元素的几种方法
- Python中五种实现字符串反转的方法