python代码下面__name__= __main__怎么使用 作用是什么?,__name____main_,name = '__ma
python代码下面__name__= __main__怎么使用 作用是什么?,__name____main_,name = '__ma
name = '__main__' 的作用
有句话经典的概括了这段代码的意义:
“Make a script both importable and executable”
意思就是说让你写的脚本模块既可以导入到别的模块中用,另外该模块自己也可执行。
def foo():
print('in foo')
print(__name__)
foo()
if __name__=='__main__':
foo()
返回结果
main 意思是__name__=__main,所以if语句判断True。
ob05.py
def func():
print("func() in ob05.py")
print("top-level in ob05.py")
if name == "__main__":
print("ob05.py is being run directly")
else:
print("ob05.py is being imported into another module")
结果:
top-level in ob05.py
ob05.py is being run directly
ob06.py
import ob05
print("top-level in ob06.py")
ob05.func()
if name == "__main__":
print("ob06.py is being run directly")
else:
print("ob06.py is being imported into another module")
结果:
top-level in ob05.py
ob05.py is being imported into another module
top-level in ob06.py
func() in ob05.py
ob06.py is being run directly
Thus, when module one gets loaded, its name equals "one" instead of __main__.
意思是ob05模块被导入的话,ob05模块中的__name__=__main__
解释错或不对不完善 麻烦完善下
那import是干嘛用呢,就引入了一个func()?name == "__main__" 是什么意思 起什么作用
简单来说就是每一个Python代码文件里都可以写上一段
if __name__ == '__main__': doSomething()
这里的dosomething只会在你直接在终端执行这个文件的时候会被调用,而不会在作为包import到其他文件并执行那个文件时调用。
这样理解python中的if name == 'main':
https://github.com/pythonpeix...
__name__:表示模块,类等的名字;
__main__:表示模块,xxx.py文件本身.
函数有两个主要作用:1、代码重用。 2、过程分解。这就意味这你写别的程序的时候可能会调用现在写的这个函数。编写好一个函数后,我们需要测试这个函数或者用它做一些工作,那我们就把要做的事情写在 if __name__=='__main__': 里面 。二天你写别的程序调用这个模块的时候,它会执行 if __name__=='__main__':前面的函数,而不会执行if __name__=='__main__':里面的代码。
编橙之家文章,
相关内容
- python2.7和python3面对编码得出不一样的结果是为什么,
- 请问fedora19部署django+apache2不成功如何调试,fedora19dja
- 异常处理try在for循环中应该加在循环里还是循环外,异
- Python flask无法正常启动celery任务队列出现什么问题了,
- Python菜鸟完成基础教程后再如何进阶,python基础教程
- 学习Python GUI编程要先了哪些方面知识,pythongui,零基础
- Python用什么方法输出值在list中的位置?,pythonlist,team
- Python转码问题求助,字典字符串类型转换失败源码如何修
- python编程语言能在android系统下做为shell应用可行性分析
- Python 文件添加列表数据后TypeError原因,pythontypeerror,#
评论关闭