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'的模块;文件不是包
当前回答
你不需要添加file.py。
只要将该文件与要导入的文件放在相同的位置即可。然后导入你的函数:
from file import a, b
其他回答
假设你想调用的文件是anotherfile.py,你想调用的方法是method1,那么首先导入文件,然后导入方法
from anotherfile import method1
如果method1是一个类的一部分,那么这个类是class1,那么
from anotherfile import class1
然后创建一个对象class1,假设对象名称为ob1,则
ob1 = class1()
ob1.method1()
将模块重命名为'file'以外的内容。
当你调用这个函数时,也要确保:
1)如果你导入了整个模块,你在调用它的时候重复模块名:
import module
module.function_name()
or
import pizza
pizza.pizza_function()
2)或者如果你导入特定的函数,带有别名的函数,或者所有使用*的函数,你不需要重复模块名:
from pizza import pizza_function
pizza_function()
or
from pizza import pizza_function as pf
pf()
or
from pizza import *
pizza_function()
在我的主脚本detectiverb .py文件中,我需要调用passGen函数,生成密码哈希,该函数在模块\passwordGen.py下
对我来说最快最简单的解决办法是
下面是我的目录结构
所以在detectiveROB.py中,我用下面的语法导入了我的函数
从模块。passwordGen导入passGen
在我的例子中,我将我的文件命名为help .scrap.py,直到我将其更改为help .py,它才能正常工作
附加一个点。在文件名前面,如果你想导入这个文件,这个文件在你运行代码的同一个目录下。
例如,我正在运行一个名为a.py的文件,我想导入一个名为addFun的方法,它是用b.py写的,b.py在同一个目录中
from .b import addFun