file.py
包含一个名为function
的函数。我该如何导入它?
from file.py import function(a,b)
上述代码出现了错误:
ImportError: 找不到名为 'file.py' 的模块; file 不是一个包
首先,从file.py
中导入function
:
from file import function
稍后,使用以下方式调用该函数:
function(a, b)
请注意,file
是 Python 核心模块之一,因此我建议您将 file.py
的文件名更改为其他名称。
请注意,如果您正在尝试从 a.py
导入函数到名为 b.py
的文件中,则需要确保 a.py
和 b.py
在同一个目录中。
导入时不要写 .py
。
file_a.py
包含一些函数:
def f():
return 1
def g():
return 2
要将这些函数导入到file_z.py
中,请执行以下操作:
from file_a import f, g
def add(arg1, arg2):
return arg1 + arg2
def sub(arg1, arg2) :
return arg1 - arg2
def mul(arg1, arg2) :
return arg1 * arg2
如果你想从Example3.py
调用不同的函数,可以按照以下方式进行:
在Example3.py
中定义导入语句-导入所有函数的文件。
from com.my.func.DifferentFunction import *
或者定义每个你想要导入的函数名称
from com.my.func.DifferentFunction import add, sub, mul
然后在Example3.py
中,您可以调用函数以执行:
num1 = 20
num2 = 10
print("\n add : ", add(num1,num2))
print("\n sub : ", sub(num1,num2))
print("\n mul : ", mul(num1,num2))
输出:
add : 30
sub : 10
mul : 200
方法1。 从file.py中导入您需要的特定函数:
from file import function
方法二:导入整个文件:
import file as fl
接下来,要调用file.py内的任何函数,请使用:
fl.function(a, b)
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 .file import function
可以从.py文件中导入函数(当然也可以在不同的目录中),只需先写目录,然后再写文件名,但不需要包括 .py扩展名:
from directory_name.file_name import function_name
之后可以使用:function_name()
将模块重命名为除'file'以外的其他名称。
在调用该函数时,请确保:
1)如果您正在导入整个模块,则在调用它时重新输入模块名称:
import module
module.function_name()
或者import pizza
pizza.pizza_function()
2)如果您正在导入具有别名的特定函数、函数或所有函数,使用*,则不需要重复模块名:
from pizza import pizza_function
pizza_function()
或者from pizza import pizza_function as pf
pf()
或者from pizza import *
pizza_function()
首先以 .py 文件格式保存文件(例如 my_example.py
)。如果文件中有函数,
def xyz():
--------
--------
def abc():
--------
--------
在调用函数中,您只需要键入以下行。
文件名:my_example2.py
============================
import my_example.py
a = my_example.xyz()
b = my_example.abc()
============================
import fn
(没有扩展名),并直接在主文件中使用它们 fn.my_function()
。当我使用 import fn.py
时,它会尝试加载 py.py 文件,但该文件不存在。使用 from fn.py import funcname
也不起作用。谢谢。 - m3nda如果您想要导入与正在运行代码相同目录下的文件,需要在文件名前添加一个点.
。
例如,我正在运行名为a.py
的文件,并且我想要导入一个名为addFun
的方法,该方法被写在b.py
中,并且b.py
就在相同的目录中。
from .b import addFun
file.py
导入函数,请确保您的目录中没有名为file
的包。 - SomeBruhfrom your_file_name import *
对我有效。 - Doğaç