0
对不起,愚蠢的问题。我有这些文件:还是不明白蟒蛇进口
a\
|-__init__.py
|-b\
|---__init__.py
|---c.py
c.py包含类'd'。
这种形式的作品:
>>> import a.b.c as c
>>> from a import b
这些形式不起作用:
>>> from a.b import c
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: cannot import name 'c'
cannot import name 'c'
>>> from a.b.c import d
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named 'a.b.c'
No module named 'a.b.c'
- 如果
from a import b
作品,为什么from a.b import c
抛出一个错误? - 如果
import a.b.c
有效,为什么from a.b import c
会抛出错误? - 如果
'd' from 'c'
有效,为什么from a.b.c import d
会抛出错误?
你所有的“破”的例子都在我的Python 2.7和3.4系统上工作。 –
我同意John的说法,但只是为了检查:你是否始终从项目的根目录运行(意思是工作目录的子目录,而不是从a中运行) – Foon