获取python生成exe释放出来的文件路径

admin Python评论172字数 1054阅读模式

当使用Python的`pyinstaller`库将Python脚本打包成可执行文件(.exe)时,可以使用`sys._MEIPASS`变量来获取可执行文件释放出来的文件路径。下面是一个示例代码:

import sys
import os

# 获取可执行文件的路径
exe_path = sys.executable

# 获取可执行文件所在的目录
exe_dir = os.path.dirname(exe_path)

# 获取释放出来的文件路径
release_file_path = os.path.join(exe_dir, "path/to/release/file")

# 打印释放出来的文件路径
print(release_file_path)

在上面的代码中,`sys.executable`变量用于获取当前可执行文件的路径。然后,使用`os.path.dirname()`函数获取可执行文件所在的目录。最后,使用`os.path.join()`函数将释放出来的文件路径与可执行文件所在目录拼接起来。

请注意,`sys._MEIPASS`变量也可以用于获取可执行文件释放出来的文件路径。但是,`sys._MEIPASS`变量在某些情况下可能不可用,因此推荐使用上述方法来获取释放出来的文件路径。

第二种方法:

在使用`pyinstaller`等工具进行打包时,可以通过`sys._MEIPASS`来获取`--add-data`参数指定的文件释放出来的路径。

以下是一个示例代码:

import sys
import os

# 获取打包释放出来的路径
base_path = getattr(sys, '_MEIPASS', os.path.dirname(os.path.abspath(__file__)))

# 添加--add-data参数指定的文件路径
data_path = os.path.join(base_path, 'data')

# 输出文件路径
print("文件路径:", data_path)

在这个示例中,我们使用`getattr(sys, '_MEIPASS', os.path.dirname(os.path.abspath(__file__)))`来获取打包释放出来的路径。如果`sys._MEIPASS`存在,则返回该路径,否则返回脚本所在的目录。

然后,我们使用`os.path.join()`函数将`data`文件夹与打包释放出来的路径拼接在一起,得到最终的文件路径。

这样,你就可以获取到`--add-data`参数指定的文件释放出来的路径了。

希望对你有所帮助!

 

版权声明:文章图片资源来源于网络,如有侵权,请留言删除!!!
admin
  • 本文由 发表于 2023年7月19日 22:00:08
  • 转载请务必保留本文链接:https://www.58pxe.com/10770.html
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: