.py文件打包成.exe文件

文章介绍了如何使用Pyinstaller将Python程序打包成.exe文件,以便在没有Python环境的电脑上运行。打包过程中涉及的原理是Pyinstaller将程序解压缩到临时文件夹并通过_MEIPASS2环境变量存储路径。同时,文章提供了一段代码示例,用于在.py和.exe运行时正确处理文件路径,确保程序在两种环境下都能正常工作。
摘要由CSDN通过智能技术生成

(新人学习记录)

打包原因:

     在电脑上运行.exe文件时无需下载python与所需用到的相应库

打包方式:

  1. cmd所想要打包的py文件(一般为主程序)地址下
  2. Pyinstaller -F xx.py(首先需下载Pyinstaller包)

     详细可参考:     (32条消息) pyinstaller打包python文件成exe(原理.安装.问题)_清华使者的博客-CSDN博客

pyinstaller打包原理:

    pyinstaller将您的数据解压缩到一个临时文件夹中,并将此目录路径存储在_MEIPASS2环境变量中

    详细可参考:使用PyInstaller捆绑数据文件(--onefile)_编程黑洞网

.exe和.py的文件运行路径

   由于打包成的.exe文件在运行时对文件路径的引用将会发生变化,因此对于文件路径的引用需要     进行判断说明,以下代码无论在IDE中运行或.exe运行都将不会出错(可直接使用)

  1. 该代码放于主程序
  2. 通过if语句对.py文件和.exe文件的路径进行返回
#所使用模块:sys,os
if hasattr(sys, '_MEIPASS'):
    pypath = os.path.dirname(os.path.realpath(sys.executable))#返回文件路径
    print("The one is:"+pypath)
else:
    pypath, filename = os.path.split(os.path.abspath( __file__))#返回ide地址
    print("The two is:"+pypath)
pypathlevel0 = os.path.dirname(pypath)
#打包完的文件,pypathlevel0为上一级目录,pypath为该.exe文件的所在目录
#未打包的文件,pypathlevel0为上一级目录,pypath为该.py文件的所在目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值