Python3 虚拟环境迁移复制一键脚本 on Windows
核心思路#
首先,对方电脑上需要已经配置好 Python 环境变量,可以直接使用 python 指令运行,而虚拟环境之间相差的只有 Python 版本构建出来的虚拟环境。
因此,可以写出一个一键将当前目录构建成虚拟环境的脚本。
笔者在 Windows 系统上使用 Python,因此为了向下兼容,使用了 bat 文件作为脚本语言。
准备工作#
为了开箱即用,可以把 python 包先保存下来。
以下命令会进入虚拟环境,生成包列表,然后使用 pip 下载到 whls
文件夹下。
@echo off
:: 进入虚拟环境
call .\venv\Scripts\activate.bat
:: 生成requirements.txt
pip freeze > requirements.txt
:: 获取whls文件
mkdir whls
cd whls
pip download -r ..\requirements.txt
迁移工作#
然后,将你的源代码文件和 whls
文件夹打包即可。
在另外一个电脑上,再次创建虚拟环境并安装我们已经准备好的包,脚本如下。
@echo off
:: 作者:ZHider
:: 判断python大版本>=3.4
echo 1. Judging Python version...
FOR /F "tokens=2,3* delims=. " %%i in ('python --version') do (
IF NOT %%i GEQ 3 (
echo Python3 not detected!
pause
goto eof
)
IF %%j LSS 4 (
echo Python3 version less than 3.4!
pause
goto eof
)
)
:: 创建虚拟环境
echo 2. Creating Python virtual environment...
python -m venv venv
:: 进入虚拟环境
echo 3. Activate virtual environment...
call .\venv\Scripts\activate.bat
:: 安装模块
echo 4. Installing pip modules...
pip install --no-index --find-links=.\whls -r .\requirements.txt
:: 运行命令
set curd=%~dp0%
echo.
echo %curd:~0,-1%^>python eims_arg.py -h
python eims_arg.py -h
echo.
call cmd
:eof
在判断 Python 版本时,你可以定义自己的任何条件,修改一下即可。
最后的运行命令部分可以是任何命令,此处使用了程序的帮助命令,查看程序是否正常运行。
笔者花了一晚上学习了一下 bat 批处理命令的使用方法,若有不足,请多指教。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义