Python 2.7 __当前工作目录中的init__u;.py
我有一个目录结构Python 2.7 __当前工作目录中的init__u;.py,python-2.7,Python 2.7,我有一个目录结构 log_dedupe ├── dedupe │ ├── __init__.py │ ├── __init__.pyc │ ├── sha_dedupe.py │ ├── sha_dedupe.pyc │ └── test_sha_dedupe.pyc ├── globals.py ├── globals.pyc ├── __init__.py ├── __init__.pyc ├── log_dedupe_main.py ├── log_dedupe_mai
log_dedupe
├── dedupe
│ ├── __init__.py
│ ├── __init__.pyc
│ ├── sha_dedupe.py
│ ├── sha_dedupe.pyc
│ └── test_sha_dedupe.pyc
├── globals.py
├── globals.pyc
├── __init__.py
├── __init__.pyc
├── log_dedupe_main.py
├── log_dedupe_main.pyc
在log\u deplicate\u main.py中
from log_dedupe import parse_arguments
导致
ImportError: No module named log_dedupe
如果我添加了一个setup.py
并安装了一个软件包,我就不会再收到这个错误了。但是如果我在init.py中更改了某些内容,我就必须重新安装
注意我也考虑过在我的文件中从\uuuu init\uuuu
导入,但我不确定这是否是个好主意
在浪费了一个小时的时间后,我发现自己在想,是否有办法做到这一点
更改到目录
log\u dedupe/
中,并调用log\u dedupe\u main.py
,如下所示:
python -m log_dedupe.log_dedupe_main`
python -m log_dedupe
或者更好的方法是,将log\u deplicate\u main.py
重命名为\uuu main\uuuu.py
,并按如下方式调用它:
python -m log_dedupe.log_dedupe_main`
python -m log_dedupe