pyinstaller打包後讀不到配置文件的解決方法

pyinstaller打包好一個exe後,運行此exe,會把此文件解壓縮到code

C:\Users\xxxx\AppData\Local\Temp\ 目錄下,而後運行。table

而配置文件通常放置在exe同級別目錄下。假如os.path.dirname(os.path.realpath(__file__))import

來獲取目錄,會定位到解壓縮後的地址。打包

解決方法:配置

使用以下代碼來獲取文件夾:file

os.path.dirname(os.path.realpath(sys.argv[0]))方法

附各類獲取文件目錄的方法,能夠對比嘗試下:im

import os, sys


print('__file__:', __file__)
print('realpath of __file__:', os.path.realpath(__file__))
print('sys.executable:', sys.executable)
print('realpath of sys.executable:', os.path.realpath(sys.executable))
print('sys.argv[0]:', sys.argv[0])
print('realpath of sys.argv[0]:', os.path.realpath(sys.argv[0]))
print('sys.path[0]:', sys.path[0])
print('realpath of sys.path[0]:', os.path.realpath(sys.path[0]))
相關文章
相關標籤/搜索