Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 无法从相同/其他目录中的脚本导入模块_Python_Python 3.x_Python 2.7 - Fatal编程技术网

Python 无法从相同/其他目录中的脚本导入模块

Python 无法从相同/其他目录中的脚本导入模块,python,python-3.x,python-2.7,Python,Python 3.x,Python 2.7,目录结构: . ├── classification │   ├── lstm_repres.py │   ├── lstm_test.py │   ├── lstm_train.py │   ├── lstm_utils.py │   ├── lstm_utils.pyc │   └── svm_run.py ├── utils │   ├── data_splits.py │   ├── evaluation.py │   ├── load_data.py │   ├── NLTKPrepr

目录结构:

.
├── classification
│   ├── lstm_repres.py
│   ├── lstm_test.py
│   ├── lstm_train.py
│   ├── lstm_utils.py
│   ├── lstm_utils.pyc
│   └── svm_run.py
├── utils
│   ├── data_splits.py
│   ├── evaluation.py
│   ├── load_data.py
│   ├── NLTKPreprocessor.py
│   ├── resources.py
│   ├── TfIdf.py
│   └── vector_utils.py
lstm\u train.py

from classification.lstm_utils import *
当我尝试同时使用
python2 lstm_train.py
python3 lstm_train.py
运行时,我得到:

Traceback (most recent call last):
  File "classification/lstm_train.py", line 7, in <module>
    from classification.lstm_utils import *
ModuleNotFoundError: No module named 'classification'
这里的问题是什么?为什么格式
来自。导入*
在这里似乎不起作用


编辑 正如@deathangel908所建议的,我已经在两个目录中添加了
\uuu init\uuu.py
空文件,但错误仍然存在。

  • 为了将目录标记为要导入的包,它需要在该目录中具有最少的空
    \uuuu init\uuuu.py
    。因此,将
    \uuuu init\uuuuu.py
    文件添加到
    分类
    utils
    目录中

  • 为了导入绝对路径包,您需要从根包作为模块运行python解释器:
    python3-m“classification.lstm\u train”


touch\uuuu init\uuuuuuuy.py做的,但是我仍然得到相同的错误。我应该调用
python2 classification/lstm_train.py
还是从同一个dir works调用?使用相对路径,或者设置公共路径请查看我的编辑,并使用相对路径或公共路径更新您的问题。按照你的描述,它将不起作用。尝试使用
python2/3 classification/lstm\u train.py从根目录运行时,会产生相同的错误,并将
添加到导入行前面。
并从
classification
dir内调用会给出:
from..classification.lstm\u utils导入*值错误:尝试的相对导入超出了顶级包装
from utils.data_splits import get_train, get_val