主题问:如何在主程序中导入/引用另一个已编写的(外部)程序?
如果我在其中有一个名为Squares.py的文件:
def squares(x):
for i in x:
return i*i
squares(x)
...如何告诉伞形程序引用它?我是否在开销程序的顶部使用导入命令?我该怎么写呢?
答案 0 :(得分:1)
由于import Squares
未在最后一行定义,因此您无法x
def squares(x):
for i in x:
return i*i
squares([23])
您需要先解决该问题
这个功能本身可能不会做你想要的。 x
应该是list
还是int
还是其他什么?
假设你修复了这些问题,你应该用测试来隔离底部
def squares(x):
for i in x:
return i*i
if __name__ == "__main__":
squares([23])
这将阻止在导入模块时隐式调用squares
然后您就可以使用:
import Squares
result = Squares.square([23])
或
from Squares import square
result = square([23])
答案 1 :(得分:0)
您显示的squares.py
模块已损坏 - 在运行或导入时,它将因异常而死亡,因为它使用未定义的全局变量squares
调用x
。
假设您的模块不已损坏,并且它位于sys.path
上列出的目录中,那么
import squares
在另一个Python文件的顶部将导入squares
作为另一个Python文件中的模块。