File.py包含一个名为function的函数。如何导入?
from file.py import function(a,b)
上面给出了一个错误:
ImportError:没有名为'file.py'的模块;文件不是包
File.py包含一个名为function的函数。如何导入?
from file.py import function(a,b)
上面给出了一个错误:
ImportError:没有名为'file.py'的模块;文件不是包
当前回答
MathMethod.Py内部。
def Add(a,b):
return a+b
def subtract(a,b):
return a-b
内部Main.Py
import MathMethod as MM
print(MM.Add(200,1000))
输出:1200
其他回答
导入时不要写.py。
让file_a.py包含一些函数:
def f():
return 1
def g():
return 2
要将这些函数导入file_z.py,请执行以下操作:
from file_a import f, g
.py文件中的函数(当然)可以在不同的目录中)可以简单地导入,只需先写入目录,然后写入没有.py扩展名的文件名:
from directory_name.file_name import function_name
function_name()
您也可以从不同的目录调用该函数,以防您不能或不希望在您正在工作的同一目录中拥有该函数。你可以通过两种方式做到这一点(也许还有更多的选择,但这些是对我有效的方法)。
选择1 临时更改工作目录
import os
os.chdir("**Put here the directory where you have the file with your function**")
from file import function
os.chdir("**Put here the directory where you were working**")
选择2 将函数所在的目录添加到sys.path
import sys
sys.path.append("**Put here the directory where you have the file with your function**")
from file import function
以上任何一种方法都不适合我。我得到ModuleNotFoundError:没有模块命名任何错误。 所以我的解决方案是像下面这样导入
from . import filename # without .py
在我的第一个文件中,我定义了如下函数fun
# file name is firstFile.py
def fun():
print('this is fun')
在第二个文件中,假设我想把这个函数命名为fun
from . import firstFile
def secondFunc():
firstFile.fun() # calling `fun` from the first file
secondFunc() # calling the function `secondFunc`
在我的例子中,我将我的文件命名为help .scrap.py,直到我将其更改为help .py,它才能正常工作