创建和激活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
相关推荐
C137的本贾尼8 分钟前
MCP 完全指南:从零开始掌握模型上下文协议
人工智能·python
阿pin13 分钟前
Java随笔-GC收集器工作机制
java·开发语言·jvm·gc
2601_9624408417 分钟前
计算机毕业设计之jsp旅游网站管理系统
java·开发语言·算法·课程设计·旅游·推荐算法
默默敲代码的徐哥儿27 分钟前
八股文整理——后端
java·开发语言·spring boot·后端·学习
matlab代码34 分钟前
基于matlab人脸门禁识别系统(可增加其它人脸图像)源码40期】
开发语言·matlab·人脸识别·人脸门禁
李少兄1 小时前
Java CompletableFuture 解析(含常见面试题)
java·开发语言
威联通安全存储1 小时前
SMT表面贴装线AOI检测网中TS-h2287XU-RP混合架构的物理部署
python·架构
大鱼>1 小时前
Scikit-learn Pipeline:构建可复用的 ML 流水线
python·机器学习·scikit-learn
闲猫1 小时前
深入理解 Skills:从 API 调用到智能体行为封装
人工智能·python·langchain
还是鼠鼠1 小时前
AI掘金头条新闻系统 (Toutiao News)-缓存相关推荐新闻
后端·python·mysql·fastapi·web