Python中if __name__==‘__main__‘怎么使用
导读:本文共1494.5字符,通常情况下阅读需要5分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: 前言:我们先定义一个test01.py的文件。test01.py中代码如下所示:defstep(): print(__name__)print('step1买菜''step2洗菜''step3切菜''step4炒菜')if__name__=='__main__':... ...
目录
(为您整理了一些要点),点击可以直达。前言:
我们先定义一个test01.py的文件。
test01.py中代码如下所示:
defstep(): print(__name__)print('step1买菜''step2洗菜''step3切菜''step4炒菜')if__name__=='__main__':print('准备制作菜品')step()print('制作完成')
输出结果:
注意:这段代码中输出的第一句。
print(__name__)
if __name__=='__main__'
是一个判断模块是以什么形式运行的语句。
如果这个模块本身不被其他模块调用,而是自己运行的,,那么有没有if __name__=='__main__'
,执行效果应该都是一样的,这时__name__
的值就等于'__本模块名 + main__'
;
如果这个模块被其他模块调用。会出现什么情况呢?
如图所示定义一个test02.py文件:
输出结果如图所示:
我们发现,在test01中的输出语句“准备制作菜品”、“制作完成”
并没有输出。
不难看出,test02不符合test01中if __name __= __main__
的判断条件。
敲黑板总结啦:
__name__是用来标识模块名字的一个系统变量。这里分两种情况:第一种情况指的是当前运行的模块,那么当前模块__name__的值就为"main";
第二种情况指的是该模块是使用import导入的模块,那么这个被导入模块的__name__变量的值为该模块的文件名。
再来看一个例子:
test_one.py:
deftest_function():print(__name__)deftest1_function(name):print(type(name),name)
test.py:
fromtest_oneimport*test_function()test1_function(__name__)
输出结果:
</div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
Python中if __name__==‘__main__‘怎么使用的详细内容,希望对您有所帮助,信息来源于网络。