Virtualenv介绍、基本使用及在Pycharm下配置环境[通俗易懂]

Virtualenv介绍、基本使用及在Pycharm下配置环境[通俗易懂]Virtualenv是一个创建独立Python运行环境的工具,主要解决Python软件开发过程中版本和依赖性问题。本文对Virtualenv做了简单的介绍、如何建立虚拟环境以及如何在Pycharm下配置Virtualenv环境

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

Introduction

virtualenv是一个创建独立Python运行环境的工具,主要解决Python软件开发过程中版本和依赖性问题。比如,有一个应用需要用到LibFoo 1.0,但其他应用要用2.0。那如何解决应用间兼容问题?比如在一个共享主机上,不能直接将包安装在全局目录下的问题。virtualenv创建一个拥有自己安装目录的环境,各个环境之间的库各自独立。

Installation

$ sudo pip install virtualenv

Basic Use

假设我们要开发一个新项目,需要一套独立的Python运行环境

首先,创建目录

$ mkdir newproject
$ cd newproject

然后,利用virtualenv创建一个独立运行环境

$ virtualenv ENV

ENV就是新建虚拟环境的目录。ENV下拥有binincludelib三个文件夹。本虚拟环境所有安装的Python库将存放在ENV/lib/pythonX.X/site-packages/下。
当脚本带有#! /path/to/ENV/bin/python则该脚本将在此虚拟python解释器下运行。
如果创建环境的时候想指定python版本,可以使用-p PYTHON_EXE

$ virtualenv -p /usr/bin/python2.7 ENV2.7

当环境创建完毕后,激活virtualenv

$ source ENV/bin/activate

此时,命令提示符改变,有个(ENV)前缀,表示现在在一个名为ENV的Python环境。

接下来就可以利用pip安装各种第三方包

$ pip install Flask

查看当前库

$ pip list

ENV环境下,用pip安装的第三方库都会被安装到ENV这个环境下,系统的Python环境不受任何影响。

关闭当前环境

$ deactivate

在Pycharm中配置Virtualenv环境

Pycharm自动配置

创建新工程时,可以在Interpreter处选择Create VirtualEnv
Create VirtualEnv

配置虚拟环境的目录名、位置以及解释器版本
VirtualEnv简单设置

创建完毕后就可以直接安装库了
安装库

手动配置本地虚拟环境

首先,创建Virtualenv虚拟环境,步骤如上介绍
然后,在Pycharm中创建工程,在Interpreter处选择Add Local
选择之前创建的环境即可
配置本地虚拟环境

More

Virtualenv官方参考文档

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/174982.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 练习PYTHON之EVENTLET

    练习PYTHON之EVENTLET

    2021年9月10日
    45
  • 阻塞与非阻塞的区别verilog_如何理解阻塞和非阻塞

    阻塞与非阻塞的区别verilog_如何理解阻塞和非阻塞简单点说:阻塞就是干不完不准回来,非阻塞就是你先干,我现看看有其他事没有,完了告诉我一声我们拿最常用的send和recv两个函数来说吧…比如你调用send函数发送一定的Byte,在系统内部s

    2022年8月1日
    7
  • 门面模式和适配器模式_数字化门店转型

    门面模式和适配器模式_数字化门店转型门面模式Facade动机模式定义结构要点总结笔记动机上述A方案的问题在于组件的客户和组件中各种复杂的子系统有了过多的耦合,随着外部客户程序和各子系统的演化.这种过多的耦合面临很多变化的挑战如何简化外部客户端和系统间的交互接口呢?如何将外部客户程序的演化和内部子系统的变化之间的依赖相互解耦模式定义为子系统中的一组接口提供一个**一致(稳定)**的界面,Facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用(复用)结构要点总结从客户程序的角度来看,Facade模式简化了整个

    2022年8月9日
    3
  • 列存储、行存储

    列存储、行存储一、定义 1.1定义Sybase在2004年左右就推出了列存储的SybaseIQ数据库系统,主要用于在线分析、数据挖掘等查询密集型应用。列存储,缩写为DSM,相对于NSM(N-arystoragemodel),其主要区别在于:DSM将所有记录中相同字段的数据聚合存储;NSM将每条记录的所有字段的数据聚合存储;其实列存储并不是什么新概念,

    2022年7月14日
    16
  • C语言中sprintf()函数的用法

    C语言中sprintf()函数的用法sprintf函数的用法1、该函数包含在stdio.h的头文件中。2、sprintf和平时我们常用的printf函数的功能很相似。sprintf函数打印到字符串中(要注意字符串的长度要足够容纳打印的内容,否则会出现内存溢出),而printf函数打印输出到屏幕上。sprintf函数在我们完成其他数据类型转换成字符串类型的操作中应用广泛。3、sprintf函数的格式:intsprintf(

    2022年6月15日
    30
  • windows计算哈希值_哈希校验

    windows计算哈希值_哈希校验哈希算法校验

    2022年9月13日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号