擅长:python、mysql、java
<p>对我有用。结构:</p>
<pre><code>.
└── beatles
├── george
│ ├── harrison.py
│ ├── __init__.py
├── __init__.py
├── john
│ ├── __init__.py
│ ├── lennon.py
├── paul
│ ├── __init__.py
│ └── mccartney.py
└── ringo
├── __init__.py
└── starr.py
</code></pre>
<p>以及:</p>
<pre><code>$ cat beatles/john/lennon.py
from beatles.george.harrison import Guitar
def Guitar(x):
return "John's guitar"
</code></pre>
<p>以及:</p>
<pre><code>$ cat beatles/george/harrison.py
def Guitar(x):
return "George's guitar"
</code></pre>
<p>我可以这样做,<strong>我的工作目录是<code>beatles</code>文件夹</strong>:</p>
<pre><code>>>> from beatles.john.lennon import Guitar
>>> Guitar(1)
"John's guitar"
</code></pre>
<p>这似乎正是您所描述的设置,但在<code>lennon.py</code>从<code>harrison.py</code>导入<code>Guitar</code>时不会给出错误消息。你知道吗</p>
<pre><code>Python 2.7.6 (default, Jun 22 2015, 17:58:13)
</code></pre>
<p>以及</p>
<pre><code>>>> sys.path
['', '/usr/lib/py...[etc]
</code></pre>
<p>因此,我的工作目录是路径中的第一项。你试过安装你的软件包吗?还是在你的工作目录里?你知道吗</p>