Python 无法从包中导入某些模块
我知道有很多这样的问题,但即使在阅读了所有这些答案后,我也无法解决我的问题 问题是,我不能从一个模块导入几个python文件,但我可以导入其他文件。 我有以下模块结构:Python 无法从包中导入某些模块,python,Python,我知道有很多这样的问题,但即使在阅读了所有这些答案后,我也无法解决我的问题 问题是,我不能从一个模块导入几个python文件,但我可以导入其他文件。 我有以下模块结构: test_module ├── __init__.py ├── keyword_extractor.py └── word2vec └── test3.py 我的\uuuu init\uuuu.py包含以下代码 import sys import os sys.path.append(os.path.join('..',
test_module
├── __init__.py
├── keyword_extractor.py
└── word2vec
└── test3.py
我的\uuuu init\uuuu.py包含以下代码
import sys
import os
sys.path.append(os.path.join('..', 'test_module'))
import word2vec, keyword_extractor, test3
我尝试以这种方式导入:
import sys
import os
sys.path.append(os.path.join("..", "..", "test_module"))
sys.path.append(path)
import test_module as tm
我可以成功导入word2vec文件
tm.word2vec.some_fuction()
但是,当我尝试导入关键字\u提取器时,我遇到了错误
keywords = tm.keyword_extractor.get_keywords()
AttributeError: 'module' object has no attribute 'keyword_extractor'
我尝试了不同的方法,如:
我在\uuuu init\uuuuuuuuuuupy.py中添加了\uuuuuu all\uuuuuuuuuuuu,并从测试模块导入了所有python文件
__all__=["word2vec","keyword_extractor", "test3"]
但是我仍然得到了关键字提取程序的错误
关键字提取程序包含以下代码:
def get_keywords():
return ["keywords"]
将
dm.keyword\u提取器
更改为tm.keyword\u提取器
。我希望这只是一个输入错误将测试模块导入为tm
dm.keyword\u提取器。获取关键字()
是的,是输入错误,抱歉,这不是错误的原因。