Python Zen说:
应该有一个 - 最好只有一个 - 显而易见的方法
从Python 2.7中的同一文件夹导入另一个文件的正确方法
.
└── myfolder
├── file1.py
├── file2.py
└── __init__.py
(假设__init__.py
为空)
file2.py
应包含
from myfolder import file1
这很好用:python -m myfolder/file2
然而,这种方法需要在任何地方命名myfolder
(这看起来很愚蠢:你不应该用姓氏和原籍城市来引用你的家庭成员)
另一方面,这失败了" ValueError:尝试在非包裹中进行相对导入":
from . import file1
就像这样:
from __future__ import absolute_import
from . import file1
这个版本失败了"没有名为file1"的模块:
import file1
将每个文件放在其旁边有__init__.py
的自己的文件夹中,这似乎也不是一个非常理智的方法。
答案 0 :(得分:2)
三件事:
__init__.py
中 myfolder
<{1}}中的
:
file2.py
或
from .file1 import *
from . import file1
(请注意python -m myfolder.file2
而不是.
)