浅墨散人 浅墨散人
  • 基础
  • 设计模式
  • JVM
  • Maven
  • SpringBoot
  • 基础
  • Flask
  • Diango
  • Pandas
  • SqlAlchemy
  • Sqoop
  • Flume
  • Flink
  • Hadoop
  • Hbase
  • Hive
  • Kafka
  • Kylin
  • Zookeeper
  • Tez
  • MySQL
  • Doris
  • Chrome
  • Eclipse
  • IDEA
  • iTerm2
  • Markdown
  • SublimeText
  • VirtualBox
  • WebStrom
  • Linux
  • Mac
  • Hexo
  • Git
  • Vue
  • VuePress
  • 区块链
  • 金融
数据仓库
数据治理
读书笔记
关于我
GitHub (opens new window)
  • 基础
  • 设计模式
  • JVM
  • Maven
  • SpringBoot
  • 基础
  • Flask
  • Diango
  • Pandas
  • SqlAlchemy
  • Sqoop
  • Flume
  • Flink
  • Hadoop
  • Hbase
  • Hive
  • Kafka
  • Kylin
  • Zookeeper
  • Tez
  • MySQL
  • Doris
  • Chrome
  • Eclipse
  • IDEA
  • iTerm2
  • Markdown
  • SublimeText
  • VirtualBox
  • WebStrom
  • Linux
  • Mac
  • Hexo
  • Git
  • Vue
  • VuePress
  • 区块链
  • 金融
数据仓库
数据治理
读书笔记
关于我
GitHub (opens new window)
  • Python基础

    • Python基础
    • Python基础
    • 在MacOS上安装Python2和Python3
    • 在MacOS上使用python安装pymssql库
    • 使用Python构建交互式的Dashboard
    • Python一行代码实现文件共享服务器
    • Python浏览器自动化工具splinter
    • Python将txt转为xlsx文件
    • Python的virtualenv虚拟环境
      • 介绍
      • 安装
      • 使用
        • 创建一个虚拟环境
        • OPTIONS
        • 激活环境
        • 关闭环境
        • 删除环境
      • 常用命令
        • 选项列表
  • Python
  • Basic
2018-09-22
目录

Python的virtualenv虚拟环境

# 介绍

virtualenv 是一个创建独立Python环境的工具。

# 安装

参考官网 (opens new window)地址

本次安装版本为:16.0.0

建议安装virtualenv-1.9或更高版本。在1.9版之前,virtualenv中包含的pip没有通过SSL从PyPI下载。

要使用pip进行全局安装(如果全局安装了pip 1.3或更高版本):

$ [sudo] pip install virtualenv
1

或者获取最新的未发布的开发版本:

$ [sudo] pip install https://github.com/pypa/virtualenv/tarball/master
1

要从源代码全局安装XX版本:

$ curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-X.X.tar.gz
$ tar xvfz virtualenv-X.X.tar.gz
$ cd virtualenv-X.X
$ [sudo] python setup.py install
1
2
3
4

要从源本地使用:

$ curl -O https://pypi.python.org/packages/source/v/virtualenv/virtualenv-X.X.tar.gz
$ tar xvfz virtualenv-X.X.tar.gz
$ cd virtualenv-X.X
$ python virtualenv.py myVE
1
2
3
4

# 使用

# 创建一个虚拟环境

创建虚拟环境命令为:

$ virtualenv ENV
1

其中:ENV表示你想在哪个目录下创建虚拟环境, 它在目录 ENV 里会初始化虚拟环境的相关目录和文件,包括 Python 语言本身的环境以及 pip 等相关程序都会在这个目录里创建(拷贝)一份新的。

例如:创建一个虚拟环境为django,则命令如下:

$ virtualenv django
New python executable in /Users/fangzheng/PycharmProjects/django/bin/python
Installing setuptools, pip, wheel...done.
1
2
3

如果django这个目录不存在,则会自动创建。

# OPTIONS

# --no-site-packages 参数:

默认情况下,虚拟环境会依赖系统环境中的 sit package,就是说系统中已经安装好的第三方 package 也会安装在虚拟环境中,如果不想依赖这些 package,那么可以加上 --no-site-packages 参数建立虚拟环境。

$  virtualenv --no-site-packages [虚拟环境名称]
1

# --system-site-packages 参数:

如果你使用 --system-site-packages 参数创建虚拟环境,你创建的虚拟环境会继承 /usr/local/python34/lib/python3.4/site-packages

$ virtualenv --system-site-packages ENV
1

# --extra-search-dir 参数:

如果你使用 --extra-search-dir 参数创建虚拟环境,这允许你提供自己的 setuptools 版本,而不是使用虚拟环境中嵌入的版本。

$ virtualenv --extra-search-dir=/path/to/distributions ENV
1

/path/to/distributions 参数:    指定一个包含 setuptools 以及 pip、wheels 等的目录。virtualenv 命令会在指定的目录中,寻找 wheels,但是会使用 pip 的标准的算法来选择安装的 wheel。

# 激活环境

激活命令为:source {虚拟环境目录}bin/activate

例如:激活刚才创建的django环境

fangzheng@localhost$ cd django
fangzheng@localhost$ source bin/activate
(django)  fangzheng@localhost$
1
2
3

激活成功后,virtualenv还将修改shell提示符以指示当前活动的环境。这里是(django)

# 关闭环境

要关闭虚拟环境,不用进入bin目录,只需直接执行deactivate即可。

$ deactivate
1

# 删除环境

要删除环境,需要先关闭环境,然后直接删除虚拟环境的目录即可。

(django)$ deactivate
$ rm -r django
1
2

# 常用命令

命令语法:virtualenv [OPTIONS] ENV_DIR

其中ENV_DIR表示虚拟环境的绝对路径或者相对路径

# 选项列表

选项
--version
显示程序的版本号并退出

-h, --help
显示此帮助消息并退出

-v, --verbose
增加冗长度。

-q, --quiet
减少冗长。

-p PYTHON_EXE, --python=PYTHON_EXE
要使用的Python解释器,例如-python = python2.5,将使用python2.5解释器来创建新环境。默认是virtualenv安装的解释器(如/usr/bin/python)

例如:创建一个python3的虚拟环境
virtualenv -p/usr/local/bin/python3 data_quality

--clear
清除非root用户安装并从头开始。

--system-site-packages
授予虚拟环境访问全局站点包的权限。

--always-copy
始终复制文件而不是符号链接。

--relocatable
使一个现有的virtualenv环境可重定位。这会修复脚本并使所有.pth文件相对。

--unzip-setuptools
安装时解压缩Setuptools。

--no-setuptools
不要在新的virtualenv中安装setuptools。

--no-pip
不要在新的virtualenv中安装pip。

--no-wheel
不要在新的virtualenv中安装车轮。

--extra-search-dir=DIR
用于查找setuptools / pip分布的目录。可以多次指定此选项。

--prompt=PROMPT
为此环境提供备用提示前缀。

--download
从PyPI下载预安装的软件包。

--no-download
不要从PyPI下载预安装的软件包。

--no-site-packages
已过时。仅保留向后兼容性。现在无法访问全局站点包是默认行为。

--distribute
--setuptools
遗产; 现在没有效果。在版本1.10之前,这些可用于选择是否将Distribute或Setuptools安装到创建的virtualenv中。Distribute现已合并到Setuptools中,后者始终安装。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
#Python#virtualenv
最后更新时间: 2022/8/21 19:26:03
Python将txt转为xlsx文件

← Python将txt转为xlsx文件

最近更新
01
分区分桶
08-21
02
数据模型(重要)
08-21
03
安装和编译
08-21
更多文章>
Theme by Vdoing
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式