【发布时间】:2020-02-22 22:37:00
【问题描述】:
我正在阅读这个article。
我想知道为什么文章中的以下陈述是正确的?因为我可以使用解决方案 1 - 即 - python -m packA.a2,它工作正常。
为了给你一些背景信息,Solution 1 说:
使用以 test/ 目录为根的绝对导入(即中间列 在上表中)。这保证了直接运行
start.py将永远有效。为了直接运行a2.py,请将其作为 导入模块而不是作为脚本:
- 在控制台中将目录更改为
test/python -m packA.a2
但是在Case 3作者说:
sys.path可能会改变(需要 2 个)一个更难处理的问题是下面的例子。假设
a2.py永远不需要直接运行, 但它是由直接运行的start.py和a1.py导入的。在这种情况下,使用上述解决方案 1 将不起作用。然而, 其他解决方案仍然有效。
但我尝试了这个并使用 python -m packA.a1 让它工作
【问题讨论】:
标签: python python-import