python文件中的

您所在的位置:网站首页 python怎么调用模块 python文件中的

python文件中的

#python文件中的| 来源: 网络整理| 查看: 265

最近学习python的时候经常会看到好多py文件中都有if _name_ == ‘_main_‘: 这句话,所以就花点儿时间来研究一下,总结了一下使用方法及原则。

平时我们使用python IDE编写py程序的时候 一般是很少用到if name == ‘main‘:这句话的,因为我们在运行py文件时,没有牵扯到其他目录下自定义的py文件,所以不用写这句话就可以无忧地执行当前py文件中的函数,但 想想 如果要是需要调用其他的py文件中的自定义函数呢?这就需要使用if name == ‘main‘:了。

举例:

def a(x): return x*2 if __name__=="__main__": print a(2) #print 4

这里使用的单文件运行,输出为4;并且这里使用了 if name==”main“: (如果不使用这句话,输出效果是一样的)

如果在test1.py文件中定义了一个函数a,想要在test2.py文件中调用a函数,这时候就需要if name==”main“:了。 举例说明: test1.py

def a(x): return x*2 if __name__=="__main__": print a(2)

test2.py

from test1 import * print a(3) #6

这里在test2中调用test1中自定义函数a,输出结果为6。 这里如果在test1中没有使用if name==”main“:这句话,则输出结果中会多出一次计算结果,原因是如果没有if name==”main“:则test2中会对该文件中的可执行语句都会执行(相当于没有main函数)。如果有if name==”main“:的话,相当于判断一下test1文件是否是单独执行的test1文件还是在其他文件中调用的自定义函数,这里的例子就是第二种情况了,所以在if name==”main“:下面的语句就不会执行。

另外,这里也讲讲如何在另一个文件中调用当前文件中的自定义函数?

例如,需要在python文件a中调用同级目录test文件夹中的b文件中的c()自定义函数,如何在a文件中实现?

from test.b import * #从文件路径为test.b的文件中导入所有的函数 c( ) #调用b文件中的c函数


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3