我有一个目录结构
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_dedupe_main.py
中的
from log_dedupe import parse_arguments
结果
ImportError: No module named log_dedupe
如果我添加了setup.py
并安装了一个包,那么我就不会再收到此错误了。但是,如果我在 init .py中更改某些内容,则必须重新安装。
注意我还考虑在我的文件中从__init__
导入,但我不确定这是不是一个好主意。
我浪费了一个小时的时间,我发现自己想知道是否有办法
答案 0 :(得分:1)
更改目录log_dedupe/
并调用log_dedupe_main.py
,如下所示:
python -m log_dedupe.log_dedupe_main`
或者更好的是,将log_dedupe_main.py
重命名为__main__.py
并按如下方式调用它:
python -m log_dedupe