擅长:python、mysql、java
<p>在导入<code>my_project</code>之后,我使用<code>__file__</code>计算出模块根路径:</p>
<pre><code>In [1]: import my_project
In [2]: print(my_project.__file__)
Out[2]: /Users/me/projects/my_project.__init__.py
</code></pre>
<p>通过一些字符串操作,去掉<code>.__init__.py</code>以到达模块根目录:</p>
^{pr2}$
<p>将此方法应用于上面的代码示例中,无论当前工作目录是什么,都可以恢复数据,如下所示:</p>
<pre><code>import my_project
import pandas as pd
my_project_dir = '/'.join(str(my_project.__file__).split('/')[:-1])
df = pd.read_excel(my_project_dir+'data/datafile.xlsx')
</code></pre>
<p>我已经测试过了,现在我可以从<code>code</code>目录以及{<cd2>}目录中成功运行<code>analysiscode.py</code>,并且从<code>my_project</code>目录运行{<cd7>}。在</p>