打包后有两个文件夹,一个是dist,另外一个是build,可执行文件在dist文件夹里面,但是会有许多依赖是独立文件存在
pyinstaller -F hello.py
使用-F参数后,打包的可执行文件是一个整体,只有一个.exe文件。 获取文件路径的方式有四种,可以在打包成exe文件后,获取.exe文件的当前路径
import sys
import os
print(sys.path[0])
print(sys.argv[0])
print(os.path.dirname(os.path.realpath(sys.executable)))
print(os.path.dirname(os.path.realpath(sys.argv[0])))
在编辑器中:
c:\Users\admin\Desktop\upload
c:\Users\admin\Desktop\upload\test.py
C:\Users\admin\AppData\Local\Programs\Python\Python37
c:\Users\admin\Desktop\upload
编译成exe:
C:\Users\admin\AppData\Local\Temp\_MEI221802\base_library.zip
test.exe
C:\Users\admin\Desktop\upload\dist
C:\Users\admin\Desktop\upload\dist
C:\Users\admin\Desktop\upload\dist>
解决代码中路径用第四个
os.path.dirname(os.path.realpath(sys.argv[0]))