我有一个名为sinfun的模块:
#!/usr/bin/env python
#sinfun.py
def newsin(x):
return sin(x)/x
,我想在此程序中使用它:
#!/usr/bin/env python
from math import *
import sinfun
x = input("enter x: ")
x = float(x)
y = sinfun.newsin(x)
print(y)
此示例中的问题是什么,必须执行哪些操作才能使代码正常工作?
答案 0 :(得分:2)
如果将'from math import *'放到sinfun.py中,则可以使用。这将是使“ sinfun.py”成为各种黑匣子的首选设置吗?如所写,我收到一个找不到“罪恶”的错误。
答案 1 :(得分:1)
如前所述,这是因为sinfun.py
无权访问您的math
导入;想必是您的主力军。快速的解决方案是将数学导入移至sinfun
。
但是,您也可以将sinfun
移到另一个名为maths
的文件夹('packages')中,并添加仅包含__init__.py
的{{1}},然后您可以从主菜单导入from math import *
,然后您的功能将按预期运行。
import maths.sinfun as sinfun