擅长:python、mysql、java
<pre><code>import os
import sys
if getattr(sys, 'frozen', False):
# we are running in a |PyInstaller| bundle
base_path = sys._MEIPASS
extDataDir = os.getcwd()
print base_path
print extDataDir
else:
# we are running in a normal Python environment
base_path = os.getcwd()
extDataDir = os.getcwd()
</code></pre>
<p>sys.\u MEIPASS变量是程序运行时应用程序绑定文件的运行位置。这与应用程序所在的位置不同。为了让您的程序找到并操作这个非绑定的.json文件,我使用<code>os.getcwd()</code>来获取应用程序所在的文件夹。在</p>
<p>在操作系统getcwd()获取可执行文件所在的当前工作目录。如果.json文件位于名为<code>config</code>的文件夹中,并且该文件夹位于运行exe的当前工作目录中,则可以使用</p>
<p><code>ext_config = os.path.join(extDataDir, 'config', 'your.json')</code></p>