一文教你如何创建 Python 虚拟环境

news2024/11/25 0:24:15

pyme


目录

    • 前言
    • 一、配置虚拟环境
      • 1.1 Windows
      • 1.2 Linux
    • 二、常用管理命令
    • 三、FAQ


前言

其实这都是 Python 基础该掌握的,今天博客记录一下,方便自己或其他人阅读。虚拟环境的好处在于达到环境上的隔离,如:不同的项目有自己独特的环境,有自己项目的第三方包等等,而如果所有项目的环境都在一起,那势必会造成环境冲突。因此对于开发人员而言,学会配置虚拟环境显然是有很必要的。

一、配置虚拟环境

1.1 Windows

1、虚拟工具安装

  • cmd 终端窗口安装虚拟环境管理工具

    pip install virtualenv virtualenvwrapper-win
    
    # 下图可见,当你安装virtualenvwrapper-win时,也会自动安装virtualenv
    

    image-20230812132508454

  • 验证是否安装

    pip freeze
    

    image-20230812133644852

  • 添加环境变量(可选)

    默认情况下,使用 mkvirtualenv 创建虚拟环境后,会在C盘用户目录下的 Envs 文件夹中生成相应的虚拟环境。

    因此我们可以添加 WORKON_HOME 环境变量来指定你的虚拟环境路径,当我们没有指定虚拟环境目录的时候,就会默认创建在环境变量 WORKON_HOME 指定的目录中。

    当我们创建虚拟环境且指定了其他虚拟环境目录(不管是否配置了 WORKON_HOME 环境变量),最终会在我们指定的路径下创建虚拟环境。

    计算机右键 > 属性 > 高级系统设置 > 环境变量 > 系统变量 > 新建

    image-20230812145922425

2、创建虚拟环境

工具安装完成后,就可以来创建虚拟环境里

  • cmd 命令行方式

    你要在哪里创建虚拟环境,你就进入哪个目录执行该命令即可

    mkvirtualenv myvenv3
    

    image-20230812143726134

    这个时候,就可以用我们的 Pycharm 集成开发工具来打开我们的虚拟环境:

    image-20230812151229768

    紧接着往下配置:

    image-20230812150508601

    image-20230812150623295

    点击 Create 后,我们打开终端,就可看见当前的

    image-20230812150935831

  • Pycharm 客户端方式

    File - - > New Project - - > Pure Python - - > New environment using

    选择要创建虚拟环境的目录,客户端方式会为我们自动创建虚拟环境,无需我们手动安装工具和创建虚拟环境以及上面的各种点点操作。

    image-20230812134239484

1.2 Linux

1、虚拟工具安装

  • shell 终端执行安装

    与 Windows不同的是 Linux 下 virtualenvwrapper 不需要后缀 -win

    pip install virtualenv virtualenvwrapper
    
  • 验证是否安装

    pip freeze
    
  • 配置环境变量

    在 .bashrc、.bash_profile 或 .zshrc 文件中添加如下三行内容

    vim ~/.bash_profile
    
    export WORKON_HOME=~/.virtualenvs
    export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
    source /usr/local/bin/virtualenvwrapper.sh
    
    # 说明:
    # WORKON_HOME:虚拟环境的存储位置
    # VIRTUALENVWRAPPER_PYTHON:指定 Python 解释器的路径
    
    source ~/.bash_profile
    

2、创建虚拟环境

同 Windows 操作。

二、常用管理命令

1、创建新的虚拟环境

mkvirtualenv <your_env_name>

2、查看所有虚拟环境

仅限于查看通过命令行方式创建的虚拟环境。

workon

3、进入虚拟环境

workon /yourpath/<your_env_name>

4、退出虚拟环境

deactivate

5、删除虚拟环境

rmvirtualenv <your_env_name>

三、FAQ

virtualenv 和 virtualenvwrapper 的区别

  1. virtualenv 是一个独立的 Python 包,它提供了创建和管理虚拟环境的功能。你可以使用 virtualenv 命令来创建虚拟环境,并使用 activate 命令来激活虚拟环境。virtualenv 可以在任何操作系统上使用。
  2. virtualenvwrapper 是 virtualenv 的一个扩展工具,它提供了更方便的命令和功能来管理虚拟环境。它是基于 virtualenv 构建的,并提供了一组额外的命令,如 mkvirtualenv(创建虚拟环境)、workon(激活虚拟环境)、lsvirtualenv(列出虚拟环境)等。virtualenvwrapper 主要在 Linux 和 macOS 上使用,但也可以在 Windows 上使用。

总结来说,virtualenv 是一个基本的虚拟环境管理工具,而 virtualenvwrapper 是对 virtualenv 的扩展,提供了更多的便利功能和命令来管理虚拟环境。选择使用哪个工具取决于你的需求和个人偏好。

—END

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/868257.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Spring Boot 统一功能处理(拦截器实现用户登录权限的统一校验、统一异常返回、统一数据格式返回)

目录 1. 用户登录权限校验 1.1 最初用户登录权限效验 1.2 Spring AOP 用户统⼀登录验证 1.3 Spring 拦截器 &#xff08;1&#xff09;创建自定义拦截器 &#xff08;2&#xff09;将自定义拦截器添加到系统配置中&#xff0c;并设置拦截的规则 1.4 练习&#xff1a;登录…

app测试和web测试的区别是什么?【软件测试经典面试题】

单纯从功能测试的层面上来讲的话&#xff1a; APP 测试、web 测试 在流程和功能测试上是没有区别的。 1.系统架构方面&#xff1a; web项目&#xff0c;一般都是b/s架构&#xff0c;基于浏览器的 app项目&#xff0c;则是c/s的&#xff0c;必须要有客户端&#xff0c;用户需…

AI绘画(1)stable diffusion安装教程

1、引言 stable diffusion 是一款免费开源的AI绘画工具&#xff0c;它能够帮助任何人轻松地进行绘画创作。不论你是有绘画基础还是完全没有经验&#xff0c;stable diffusion 都能让你在数字画布上释放创造力。 stable diffusion 提供了丰富多样的绘画工具和选项&#xff0c;…

公会在tiktok发展,有哪些国家,怎么入驻呢?

在秀场直播领域&#xff0c;众多公会都将目光聚焦在TikTok上。TikTok已成为一个新的金矿&#xff0c;许多公会已在这个平台上赚得盆满钵满。 这些公会在TikTok上月流水达到数百万美元&#xff0c;甚至在一场PK中流水达到40万美元&#xff0c;分成比例高达80%。TikTok的秀场直播…

PostGIS 矢量瓦片

title: PostGIS 矢量瓦片 date: 2023-08-07 author: ac tags: vector tile categories:Database Martin - 基于PostGIS的矢量瓦片服务器 1. 简介 目前流行的矢量瓦片的切图方案&#xff1a; mapbox gl tippecanoe &#xff1a;v2收费&#xff0c;tippecanoe是mapbox官方推…

【C语言】结构体详解

现实生活中一个事物&#xff0c;会有许多属性连接起来。而C语言引入一种构造数据类型——结构体 将属于一个事物的多个数据组织起来以体现其内部联系。 一、结构体类型的定义 结构体类型 是一种 构造类型&#xff0c;它是由若干成员组成的&#xff0c;每个成员可以是一个基本…

python:使用geopandas和rasterio将矢量范围内的栅格值赋为0并重新输出

需求&#xff1a;有一个点shp文件和一个栅格&#xff0c;想要构建shp中每个点的缓冲区&#xff0c;并且缓冲区范围内的栅格值重新赋为0并输出新的tif文件 解决方法&#xff1a;使用python中的geopandas和rasterio中的掩膜操作实现 代码如下&#xff1a; import numpy as np …

数据结构(一):顺序表详解

在正式介绍顺序表之前&#xff0c;我们有必要先了解一个名词&#xff1a;线性表。 线性表&#xff1a; 线性表是&#xff0c;具有n个相同特性的数据元素的有限序列。常见的线性表&#xff1a;顺序表、链表、栈、队列、数组、字符串... 线性表在逻辑上是线性结构&#xff0c;但…

【验证码逆向专栏】最新某度旋转验证码 v2 逆向分析

声明 本文章中所有内容仅供学习交流使用&#xff0c;不用于其他任何目的&#xff0c;不提供完整代码&#xff0c;抓包内容、敏感网址、数据接口等均已做脱敏处理&#xff0c;严禁用于商业用途和非法用途&#xff0c;否则由此产生的一切后果均与作者无关&#xff01; 本文章未…

使用requests如何实现自动登录

不知道大家有没有注意到&#xff0c;好多网站我们登录过后&#xff0c;在之后的某段时间内访问该网页时&#xff0c;不会给出请登录的提示&#xff0c;时间到期后就会提示请登录&#xff01;这样在使用爬虫访问网页时还要登录&#xff0c;打乱我们的节奏&#xff0c;那么如何使…

ISC 2023 大会成功举办,向量数据库公司 Zilliz 成大模型论坛焦点

近日,第十一届互联网安全大会(ISC 2023)在北京盛大开幕。大会由 ISC 互联网安全大会组委会、中国互联网协会、中国网络空间安全协会、全国工商联大数据运维(网络安全)委员会、中国人工智能学会、中国软件行业协会、中国企业联合会、360 互联网安全中心主办;中国通信企业协…

使用阿里云服务器部署和使用GitLab

本文阿里云百科分享使用阿里云服务器部署和使用GitLab&#xff0c;GitLab是Ruby开发的自托管的Git项目仓库&#xff0c;可通过Web界面访问公开的或者私人的项目。本教程介绍如何部署和使用GitLab。 目录 准备工作 部署GitLab环境 使用GitLab 登录GitLab 生成密钥对文件并…

HoloLens 2设备MR 应用交互设计

AR 眼镜实现了虚拟世界与现实世界的融合&#xff0c;完成屏幕的“跨越”&#xff0c;人机交互设计也从二维平面迈向三维世界。目前&#xff0c;MR 应用的人机交互界面仍然处于早期发展阶段&#xff0c;各种理念和方法仍处于逐步形成与应用阶段&#xff0c;低成本地完成使用者从…

记录一下Java实体转json字段顺序问题

特殊需求&#xff0c;和C交互他们那边要求字段顺序要和他们定义的一致(批框架) 如下&#xff1a; Data public class UserDto {private String name;private Integer age;private String addr; }未转换前打印&#xff1a; 转换后打印&#xff1a; 可以看到转换为json顺序打印…

第9届Python编程挑战赛北京赛区复赛真题剖析-2023年全国青少年信息素养大赛

[导读]&#xff1a;超平老师计划推出《全国青少年信息素养大赛Python编程真题解析》50讲&#xff0c;这是超平老师解读Python编程挑战赛系列的第16讲。 全国青少年信息素养大赛&#xff08;原全国青少年电子信息智能创新大赛&#xff09;是“世界机器人大会青少年机器人设计与…

Spring与Spring Bean

Spring 原理 它是一个全面的、企业应用开发一站式的解决方案&#xff0c;贯穿表现层、业务层、持久层。但是 Spring 仍然可 以和其他的框架无缝整合。 Spring 特点 轻量级 控制反转 面向切面 容器 框架集合 Spring 核心组件 Spring 总共有十几个组件核心容器(Spring core) S…

02.Deep Visual-Semantic Alignments for Generating Image Descriptions

目录 前言泛读摘要IntroductionRelated Work小结 精读Model3.1 学习对齐视觉与语言数据图片表征句子表征对齐目标损失函数解码文本片段对齐图像 MRNN生成描述优化 实验结论 代码 前言 本课程来自深度之眼《多模态》训练营&#xff0c;部分截图来自课程视频。 文章标题&#xf…

湘大 XTU OJ 1290 Alice and Bob 题解(非常详细):字符串 分类讨论 简单模拟

一、链接 1290 Alice and Bob 二、题目 题目描述 Alice和Bob玩剪刀-石头-布的游戏&#xff0c;请你写个程序判断一下比赛的结果。 输入 第一行是一个整数K&#xff0c;表示样例的个数。 以后每行两个单词&#xff0c;rock表示石头&#xff0c;paper表示布&#xff0c;scis…

ETL技术入门之ETLCloud初认识

首先ETL是什么&#xff1f; ETL代表“Extract, Transform, Load”&#xff0c;是一种用于数据集成和转换的过程。它在数据管理和分析中扮演着重要的角色。下面我们将分解每个步骤&#xff1a; Extract&#xff08;抽取&#xff09;&#xff1a; 这一步骤涉及从多个不同的数据源…

小说推文怎么做详细教程。小说推文项目拆解及分享

科思创业汇 大家好&#xff0c;这里是科思创业汇&#xff0c;一个轻资产创业孵化平台。赚钱的方式有很多种&#xff0c;我希望在科思创业汇能够给你带来最快乐的那一种&#xff01; 如何制作小说推文的详细教程&#xff01; 我做自媒体已经五年了&#xff0c;在自媒体行业也…