python的venv迁移
python的venv
Python我们使用Pycharm创建项目时,默认会以venv的形式创建项目的Python环境。
虚拟环境有以下几个好处:
- 多个Python版本之间不会影响。当前基于哪个Python版本创建的虚拟环境,则虚拟环境中的Python版本就为多少。相比较于Anaconda,其更加轻量化。
- 可以为当前项目个性化定制需要哪些包,不需要哪些包。所有项目都基于本地Python环境的话,python的三方苦包会变得十分臃肿。
- 同一个包的不同版本可以基于项目个性化选择。每个项目的虚拟环境中的三方包版本可以不同。
创建虚拟环境(Python3.3及以上):python3 -m venv 新环境目录
激活和退出环境:
系统 | 进入命令 | 退出命令 |
---|---|---|
Windows | 进入“Scripts目录”,执行activate.bat |
deactivate |
Linux or Mac | 进入“bin目录”,执行source activate |
deactivate |
venv的迁移
在本地计算机上完成开发后,直接将文件夹拷贝到服务器上是无法运行的,可能会需要各种各样的问题,虚拟环境的迁移如下:
- 本地开发机器执行:
pip freeze > requirement.txt
,导入当前环境pip按照包列表。 - 在服务器上,新建虚拟环境并选择和本地开发机器相同的python版本。(服务器端python需要pip安装virtualenv工具,具体安装方式可以搜索查找)
- 将本地开发机器中的开发文件和requirement.txt文件拷贝至服务器端。
- 进入服务器端虚拟环境后,执行
pip install -r ./requirement.txt
,安装所需包。
这样我们的服务器端环境就可以正确运行了。