<p>首先,您必须了解<code>import</code>单独工作的方式:</p>
<pre><code>import test.submodule.do_something
</code></pre>
<p>试图从<code>submodule</code>加载<code>do_something</code>本身从<code>test</code>加载。</p>
<p>你想从<code>subpackage</code>加载一些内容,那么从这个开始:</p>
<pre><code>import subpackage
</code></pre>
<p>很好,<code>subpackage/__init__.py</code>已加载。</p>
<p>现在,您需要文件中的<code>do_something()</code>函数(一个“模块”)<code>hello_world.py</code>。简单:</p>
<pre><code>from subpackage.hello_world import do_something
</code></pre>
<p>你完了!只要大声读这一行,它就会按它所说的做:从<code>subpackage</code>包中的模块<code>hello_world</code>导入<code>do_something</code>。</p>
<p>在<code>test.py</code>中尝试</p>
<pre><code>from subpackage.hello_world import do_something
do_something()
</code></pre>
<p>它应该工作得很好。</p>
<p>现在,第二期:</p>
<p><code>__init__.py</code>不会在<code>package/</code>中调用,因为您不使用<code>package/</code>作为包。<code>__init__.py</code>将用于导入<code>package/</code>或其中的任何内容,例如:</p>
<pre><code>from package import test
</code></pre>
<p>否则,它根本不会加载。</p>
<p>但是,如果要在导入子包时加载<code>do_something()</code>,请将<code>from submodule.hello_word import do_something</code>放入<code>subpackage/__init__.py</code>,然后在<code>test.py</code>中执行<code>import subpackage</code>。</p>