pyinstaller打包程序运行后路径报错:系统找不到指定的路径。

1、场景

  • 用pyinstaller打包程序后放到远程电脑的D盘中,然后运行。
  • 运行后提示报错,找不到指定的路径:"c:\\……"

2、原因

很明显,理论上路径应该是D开头,但实际是C。

程序中使用了 os.path.dirname(__file__) 来获取基础目录,但是输出的路径是在 C 盘的某个位置,可能是因为 PyInstaller 打包后的可执行文件在运行时会解压缩到临时目录中,然后再运行。因此,__file__ 所得到的路径实际上是解压缩后的临时路径,而不是打包后的文件所在的路径。

3、解决办法

使用 sys.argv[0] 获取可执行文件路径

import sys
import os

base_dir = os.path.dirname(sys.argv[0])

发表评论

评论列表,共 0 条评论

    暂无评论