创建和激活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
相关推荐
深度学习入门17 分钟前
机器学习,深度学习,神经网络,深度神经网络之间有何区别?
人工智能·python·深度学习·神经网络·机器学习·机器学习入门·深度学习算法
TNTLWT18 分钟前
Qt控件:交互控件
开发语言·qt
量化金策21 分钟前
震荡指标工具
开发语言
北漂老男孩23 分钟前
ChromeDriver进程泄漏问题分析与最佳实践解决方案
开发语言·爬虫
李迟28 分钟前
Golang实践录:在go中使用curl实现https请求
开发语言·golang·https
森哥的歌1 小时前
Python uv包管理器使用指南:从入门到精通
python·开发工具·uv·虚拟环境·包管理
qq_214782611 小时前
给你的matplotlib images添加scale Bar
python·数据分析·matplotlib
Johny_Zhao1 小时前
Vmware workstation安装部署微软SCCM服务系统
网络·人工智能·python·sql·网络安全·信息安全·微软·云计算·shell·系统运维·sccm
waterHBO1 小时前
python + flask 做一个图床
python
运维-大白同学1 小时前
go-数据库基本操作
开发语言·数据库·golang