我有一个具有以下结构的包:
my_package
|-- src
| |-- __init.py__
| |-- __main.py__
| |-- foo.py
| |-- bar.py
|-- setup.py
我正在尝试在main.py中导入 foo 和 bar ,但它在使用来自终端的命令python my_package执行时给出了ModuleNotFoundError ,但使用来自my_package目录的命令python -m src运行得非常好。我想排除 -m 标志。我在互联网上找到的所有材料都指向两件事
- 将包位置设置为 sys.path。
- 将包位置设置为 PYTHONPATH 变量。
我做了这两件事,但到目前为止没有一个对我有用。
编辑:正如评论中所建议的,包装器是合适的解决方案。但我无法弄清楚那里有什么逻辑。任何帮助都会有所帮助。