python:_name_属性
2021/5/16 12:25:26
本文主要是介绍python:_name_属性,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
__name__属性
#每一个python模块运行时都会有一个__name__属性,当作为模块导入时,则其__name__属性的值会被自动设置为模块名,如果作为程序直接运行是,其__name__属性自动设置为__main__
在python中一个.py文件就是一个模块.如果在同一个包demo.py文件想用demos.py文件那就可以将demos.py作为模块导入到demo.py中就可以使用demos中的函数,
如果你发现在同一个包下导入自定模块报错解决办法:点包名右键单击–>Mak Directory --> soarces Root 即可
先创建一个demo3.py
def add(a,b): return (a + b) print(f'测试:{add(1,1)}') print(f'__name__={__name__}')#name前后都是两个下划线
如果单独运行这个程序结果如下:
测试:2
name=main
我们会发现我们并没有对__name__赋值但取出现__main__所以这是系统自动赋值的,作为程序直接运行是,其__name__属性自动设置为__main__*
在创建一个demo4文件在demo4中导入demo3
import demo3 print(f'结果:{demo3.add(1,6)}')
结果为:
测试:2
name=demo3
结果:7
我们发现在这里不仅打印出了测试,而且还打印出了__name__这些都是demo3的所以在demo3的__name__属性就自动成了自己作为模块导入其他文件时自己的名字
我们也会发现我们是要得到结果,但不想得到测试的结果,所以根据__name__属性在两种境况下的值不同可以让测试在导入文件中不会被调用
修改demo3
def add(a,b): return (a + b) if __name__ == '__main__': print(f'测试:{add(1,1)}')
在运行demo4
结果
结果:7
这篇关于python:_name_属性的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-25Python编程基础:变量与类型
- 2024-11-25Python编程基础与实践
- 2024-11-24Python编程基础详解
- 2024-11-21Python编程基础教程
- 2024-11-20Python编程基础与实践
- 2024-11-20Python编程基础与高级应用
- 2024-11-19Python 基础编程教程
- 2024-11-19Python基础入门教程
- 2024-11-17在FastAPI项目中添加一个生产级别的数据库——本地环境搭建指南
- 2024-11-16`PyMuPDF4LLM`:提取PDF数据的神器