我有一个程序,有一个模块和一个单独的文件,如下所示 模块:
def area_of_Triangle(b, h, units = "square centimeters"):
aot = (b * h) / 2
return "{0} {1}".format(aot, units)
def MyTuple(*args):
result = 0
for arg in args:
result += arg
return result
divide = lambda x, y: x / y if y != 0 else "Not Allowed"
单独的文件:
import MODULE1
print (area_of_Triangle(4.5, 5.6, units="square inches"))
print (MyTuple(1, 2, 3, 4, 5, 6, 7, 8, 9, 10))
print (divide(2, 3))
每次我试着运行它时,它总是说“area\u of_Triangle”这个名字没有定义
您正在尝试从其他文件调用MODULE1函数。您需要在调用中指定MODULE1
或者可以显式导入它们
为什么会有额外的麻烦?如果您同时导入了MODULE1和一些MODULE2,并且都定义了一个名为
area_of_Triangle
的函数,会怎么样?你如何区分哪个是哪个您仅使用导入模块
import Module1
如果要导入python文件中的所有方法和变量,请使用*符号
比如说
from <modulename> import *
所以在你的情况下是这样的
from Module1 import *
或者,您也可以使用相同的方法导入特定方法,但不必使用*方法的名称
比如说
from Module1 import area_of_Triangle
如果您不希望执行上述操作
import Module1
也可以,只需调用如下方法:
Module1.area_of_Triangle(4.5, 5.6, units="square inches")
注意
Module1.area_of_Triangle()
你必须写
MODULE1.area_of_triange(<parameters>)
并打印出来。或者,如果不想一次又一次地写入模块1,可以从模块中导入特定函数,或者使用from MODULE1 import *
行导入所有函数,然后直接使用这些函数,而无需一次又一次地写入模块名称相关问题 更多 >
编程相关推荐