VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > temp > python入门教程 >
  • 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 批处理命令的使用方法,若有不足,请多指教。

出处:https://www.cnblogs.com/zhiders/p/python_venv_copy.html


相关教程