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('..',

我知道有很多这样的问题,但即使在阅读了所有这些答案后,我也无法解决我的问题

问题是,我不能从一个模块导入几个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'))

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提取器。获取关键字()
是的,是输入错误,抱歉,这不是错误的原因。