我有一个名为 hotel_helper.py
的文件,我想从中导入一个名为 demo1
的函数,但我无法导入它。
我的hotel_helper.py
文件:
def demo1():
print('\n\n trying to import this function ')
我的其他文件:
from hotel.helpers.hotel_helper import demo1
demo1()
但我得到:
ImportError: cannot import name 'demo1' from 'hotel.helpers.hotel_helper'
当我使用 from hotel.helpers.hotel_helper import *
而不是 from hotel.helpers.hotel_helper import demo1
导入时,它可以工作并且该函数被调用。我尝试使用 from hotel.helpers import hotel_helper
导入整个文件,然后使用 hotel_helper.demo1()
调用该函数,效果很好。我不明白第一种方法有什么问题。我想直接导入函数,而不是使用 *
或导入整个文件。
最佳答案
如果您的文件名是 hotel_helper.py,您必须选择如何导入 demo1:
您可以将整个模块 hotel_helper 导入为,然后调用您的函数:
import hotel_helper as hh
hh.demo1()
您只能从模块中导入函数 demo1:
from hote_helpers import demo1
demo1()
关于python - 无法从另一个文件导入函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58117373/