Python 相对导入造成意外行为

Python relative imports creating unexpected behavior

我目前有一个目录结构如下的项目:

/reports/
  /supermart_reports/
    __init__.py
    load_check.py
    db_connection.py
    ahs_report/
      create_ahs_report.py

我使用 python3.4 -m supermart_reports.ahs_report.create_ahs_reportreports/ 调用 create_ahs_report.py,在该文件中我使用 from ... import db_connection 和 [ 导入 db_connectionload_check =18=]。这些导入似乎有效。但是,现在当我 运行 脚本时,在 load_check.py 中,我的行 import db_connection 不再工作,显示 ImportError: No module named 'db_connection'。我做了什么弄乱了相对进口?

load_check 导入 db_connection 时,使用 from . import db_connectionimport .db_connection
参见 https://docs.python.org/2.5/whatsnew/pep-328.html