【Python】绿色便携版Python制作(发布)方法
1 背景
写了python脚本,却无法分享给没有安装python环境的同事,将脚本打包成exe又比较麻烦,尤其是脚本依赖很多第三方库的时候,打包exe就更麻烦了。有什么好方法么?
文章最后有打包好的绿色可移植(嵌入)的Python运行环境,欢迎下载使用。
2 一种方案
经过测试,使用embed版的python是个可行方案。
2.1 下载嵌入版Python(embed Python)
在Python官网有各个平台的embed版本python包。
这里使用 Python 3.8.10 版本为例。虽然该版本较旧,但为了在32位Win7电脑上使用python脚本,它是最后一个支持win7的版本了。
https://www.python.org/downloads/release/python-3810/
在网页中找到【Windows embeddable package (32-bit)】 ,下载后是个文件夹,这就是嵌入版python的全部了。
2.2 设置运行环境
2.2.1 添加临时环境变量
在文件夹中创建bat文件 run.bat,内容为:
@echo offREM 将目录添加到 PATH 环境变量,建议加在path最前,防止被已有python遮蔽
REM %~dp0表示当前目录,含反斜线 \
set path=;%~dp0;%~dp0Scripts;%path%;
REM echo Current Env: %~dp0
REM 设置当前目录为工作目录
cd /d %~dp0
REM 打印python版本
python --version
pause
python版本应显示 3.8.10,即我们的嵌入式python的版本号。
若能正确显示python版本,说明python运行环境已设置正确。
2.2.2 运行python脚本
文件夹中创建 main.py,内容如下:
print("hello, python!")
修改下刚才的run.bat,增加一行:
python main.py
即:
@echo offREM 将目录添加到 PATH 环境变量,建议加在path最前,防止被已有python遮蔽
REM %~dp0表示当前目录,含反斜线 \
set path=;%~dp0;%~dp0Scripts;%path%;
REM echo Current Env: %~dp0
REM 设置当前目录为工作目录
cd /d %~dp0
REM 打印python版本
python --version
python main.py
pause
双击运行 run.bat。
若一切正常,应显示
hello, python!
2.2.3 优化——建立自己的工作目录
自己创建的两个文件run.bat和main.py和python本身的文件放在一起,显得杂乱。
我们把自己的文件整理到新建文件夹中,命名为mycode。
文件结构:
- embed-python\mycode\run.bat
- embed-python\mycode\main.py
这时要修改 run.bat 中的内容。
因为Python的环境在上级目录中,所以要上级目录(%~dp0..)添加到环境变量中。但是python脚本在本级目录,所以要打开当前目录作为工作目录(使用 cd /d %~dp0)。
@echo offREM 将上级目录添加到 PATH 环境变量
set path=;%~dp0..;%~dp0..Scripts;%path%;
REM 设置当前目录为工作目录
cd /d %~dp0
python main.py
pause
这样,双击 run.bat 即可执行python脚本。
这样,以后要运行其他功能的脚本时,复制mycode文件夹,修改为其它名称即可,各文件夹间的脚本运行互不影响。
2.3 安装第三方库
Python之所以强大,是可以方便的利用优秀的第三方库。
嵌入版Python如何安装第三方库呢?
使用 get-pip.py。(此处参考博文:探秘Python安装神器:get-pip-CSDN博客)
get-pip.py
是一个引导脚本,用于在没有预装 pip、setuptools 和 wheel 的 Python 环境中安装这些工具。
详细步骤如下:(以下python命令均需要先按前文讲到的设置好环境变量后运行)
1. 下载 get-pip.py 文件。[参考1,参考2,参考3]
2. 使用下面命令运行该脚本,此脚本会为嵌入式Python安装pip工具。
python get-pip.py
3. 有了pip工具,就可使用下面命令安装任意的第三方库。
python -m pip install xxx -i https://mirrors.aliyun.com/pypi/simple
第三方库会自动保存到嵌入版文件夹的 Lib\site-packages 文件夹中。
3 结语
这样,我们可以通过替换不同版本的python环境,就能便捷的替换Python版本,分享给不同操作系统、不同位数的电脑运行。
好处:
1. 灵活使用各个版本的python ;
2. 快速的分享python脚本;
3. 随处运行python脚本。
4 下载
打包文件内含适用于win7_x64即32位win7嵌入版python官方包,以及已安装好的嵌入版pip工具,及已安装好的第三方库:pandas等,可下载直接双击mycode\run.bat运行python脚本,方便实用。
1. CSDN官方下载地址:
https://download.csdn.net/download/qilei2010/90227198?spm=1001.2014.3001.5501
2. X度网盘下载:
链接: https://pan.baidu.com/s/1q1rmPlAxuYtaoYa6a3JaWA?pwd=54wm 提取码: 54wm