python多版本与虚拟环境

本文介绍了在macOS和Windows上管理多个Python版本的方法,包括使用`where`命令查找Python路径,通过重命名方式区分不同版本。还讨论了为何需要虚拟环境,以及如何使用pipenv创建和管理虚拟环境,以解决不同项目之间的库版本冲突问题。
摘要由CSDN通过智能技术生成

这篇纯python技术文章,我自己平时也会用到,在此记录一下。

为什么会用到多个Python版本?
用macOS和Ubutntu的同学都知道系统默认安装的Python2.7.x,然后,我们平时python开发用的python3,所以,需要额外安装一个Python3.x的版本。

之前,我想是使用robotframework-ride但它只支持python3.7,于是,我安装python3.7。(注:现在已经支持3.8了)

前几天,我想学习一下tinygrad,他支持python3.8,于是,我又装了3.8。

python多版本管理
使用Where查找安装的python、python3 路径。
macOS终端:
❯ where python
/usr/bin/python # 2.7.16

❯ where python3
/Library/Frameworks/Python.framework/Versions/3.7/bin/python3 # 3.7.9
/usr/local/bin/python3 # 3.7.9
/usr/bin/python3 # 3.7.3
windows命令提示符
❯ where python
C:\Python37\python.exe
C:\Python38\python.exe
C:\Users\fnngj\AppData\Local\Microsoft\WindowsApps\python.exe
为不同的python 改名字。
比如, C:\Python38\python.exe 文件拷贝改名为 C:\Python38\py8.exe,那我就可以愉快的使用py8这个命令了。
❯ py8
Python 3.8.6 (tags/v3.8.6:db45529, Sep 23 2020, 15:52:53) [MSC v.1927 64 bit (AMD64)] on win32
Type “help”, “copyright”, “credits” or “license” for more information.

为不同的python 安装库。
每个python版本下面都有 pip,我们在使用pip的安装库的时候,经常不知道他安装在哪个python下面了。

❯ py8 -m pip install selenium
❯ py8 -m pip show selenium

Location: c:\python38\lib\site-packages

带上 python -m的前缀,这样永远不会装错。

为什么会用虚拟环境?
作为一个使用python开发过大型项目的同学,一定会碰到python库的版本依赖。

例如 直接依赖:

A项目:使用 django 2.2
B项目:使用 django 3.1
还有复杂的间接依赖:

A项目:使用A框架 ——> 依赖 requests 1.10
B项目:使用B库 ——> 依赖 requests 2.x
而你又需要同时开发A、B两个项目,总不能在运行不同的项目的时候,就把不同项目的依赖库装一遍吧!

虚拟环境管理
python的虚拟环境管理工具挺多的,virtualenv、virtualenvwrapper、pipenv,pyenv。其实明白了原理这些工具都不复杂,这里以pipenv为例。

安装pipenv
❯ pip install pipenv
创建虚拟环境
进入到项目目录,创建虚拟环境。

❯ cd mypro # 进入项目目录

❯ pipenv --python py8 # 指定基于哪个python版本创建虚拟环境。
Creating a virtualenv for this project…
Pipfile: D:\github\mypro\Pipfile
Using C:/Python38/py8.exe (3.8.6) to create virtualenv…

Successfully created virtual environment!
Virtualenv location: C:\Users\fnngj.virtualenvs\mypro-D2Xyk8c9
安装依赖
这一步从Pipfile.loc中安装依赖。
http://www.taom8.com
http://www.hmgczx.com
http://www.bizhizhigan.com
http://www.quanshengbio.com
http://www.0596pzh.com
http://www.hlzxcy8899.cn
http://www.mingyan365.cn
http://www.20862.cn

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值