创建和激活python虚拟环境(venv), 以及在vscode上运行python虚拟环境

最近使用python做项目,发现佬们都是在用python的虚拟环境来放项目。发现确实有一些优势在这之中,

  1. 首先就是隔离性,我们将每个项目放入相对应的环境配置,可以有效避免乱七八糟的库出现在解释器中。
  2. 其次就是可移植性强,假如我们想让别人运行我们的项目,我们就不用挨个儿告诉他,python需要安装什么什么库,以及版本是多少多少, 如果我们在项目文件夹中启动了一个python虚拟环境,那么对方也只需要在项目文件夹中运行这个虚拟环境即可。

1. 借助shell来创建python虚拟环境

准备工作 : 我们应确保安装了 "python虚拟环境" 相关的库

shell 复制代码
pip install virtualenv

我们首先创建一个文件夹,并在cmd中打开这个文件夹(也就是在cmd中设置工作目录为这个文件夹)

接下来在shell中输入:

shell 复制代码
python -m venv .pvenv

等待数秒,我们就创建好了基本的虚拟环境

激活python虚拟环境

在linux操作系统的shell中,我们使用如下指令来激活python虚拟环境

shell 复制代码
source ./.pvenv/bin/activate

在Windows操作系统中,我们使用

shell 复制代码
 .\.pvenv\Scripts\activate

该命令可能需要管理员权限,Linux系统请使用sudo提升指令权限, Windows则选择使用"以管理员的身份打开cmd",然后运行命令。

接下来我们就进入了python的虚拟环境

在shell的输入栏的最左端,显示"(.pvenv)" , 即为已经进入了虚拟环境

这时候我们再进行python相关的操作(如python打开解释器,pip安装库文件等)都会对该虚拟环境进行。

更新pip: 接下来使用如下指令来更新虚拟环境中的pip

shell 复制代码
python -m pip install --upgrade pip

安装所需的第三方模块

python 复制代码
pip install numpy pandas matplotlib

退出虚拟环境 ,在命令行中输入deactivate即可

shell 复制代码
deactivate

2. 在vscode中使用python虚拟环境

第一步当然是使用vscode打开项目文件夹(将整个文件夹拖到vscode的图标中,或者在vscode中使用"打开文件夹")

更改解释器

在vscode中,使用ctrl + shift + p 快捷键来打开命令面板(或者在vscode的选项卡中选择"查看" -> "命令面板")。

在命令面板中输入Python:Select Interpreter,(或者输入"选择解释器")

点击该命令后, 会提示选择一个解释器,我们选择 .pvenv即可。

3.(Windows)使用powershell来激活虚拟环境

或许你认为使用管理员模式打开cmd不够简单,那么可以使用windows中的Powershell来激活虚拟环境。

  1. 打开powershell,输入以下命令来更改执行策略(允许未签名的脚本运行)
powershell 复制代码
Set-ExecutionPolicy Bypass -Scope Process -Force
  1. 在项目的工作目录下,输入以下命令来运行脚本
powershell 复制代码
.\.venv\Scripts\activate
  1. 切换回原先的执行策略(保证安全性)
powershell 复制代码
Set-ExecutionPolicy RemoteSigned -Scope Process -Force

这样我们就在终端中激活虚拟环境啦。

可以将上面三行命令存入文件中 activate.ps1 , 这样之后只需要在powershell中运行这个文件就可以激活虚拟环境了

powershell 复制代码
# vv.ps1
# 激活虚拟环境
Set-ExecutionPolicy Bypass -Scope Process -Force
.\.venv\Scripts\activate
Set-ExecutionPolicy RemoteSigned -Scope Process -Force
相关推荐
萧鼎40 分钟前
Python pyzmq 库详解:从入门到高性能分布式通信
开发语言·分布式·python
艾伦~耶格尔1 小时前
【集合框架LinkedList底层添加元素机制】
java·开发语言·学习·面试
yujkss2 小时前
Python脚本每天爬取微博热搜-终版
开发语言·python
yzx9910132 小时前
小程序开发APP
开发语言·人工智能·python·yolo
飞翔的佩奇2 小时前
【完整源码+数据集+部署教程】二维码与查找模式检测系统源码和数据集:改进yolo11-CSwinTransformer
python·yolo·计算机视觉·数据集·yolo11·二维码与查找模式检测
大霞上仙2 小时前
实现自学习系统,输入excel文件,能学习后进行相应回答
python·学习·excel
啊阿狸不会拉杆2 小时前
《算法导论》第 32 章 - 字符串匹配
开发语言·c++·算法
Caven772 小时前
【pytorch】reshape的使用
pytorch·python
无规则ai2 小时前
动手学深度学习(pytorch版):第四章节—多层感知机(5)权重衰减
人工智能·pytorch·python·深度学习
你知道网上冲浪吗3 小时前
【原创理论】Stochastic Coupled Dyadic System (SCDS):一个用于两性关系动力学建模的随机耦合系统框架
python·算法·数学建模·数值分析