- 本书赞誉
- 前言
- 目标读者
- 不适合阅读本书的读者
- 本书结构
- 什么是数据处理
- 遇到困难怎么办
- 排版约定
- 使用代码示例
- 致谢
- 第 1 章 Python 简介
- 第 2 章 Python 基础
- 第 3 章 供机器读取的数据
- 第 4 章 处理 Excel 文件
- 第 5 章 处理 PDF 文件 以及用 Python 解决问题
- 第 6 章 数据获取与存储
- 第 7 章 数据清洗:研究、匹配与格式化
- 第 8 章 数据清洗:标准化和脚本化
- 第 9 章 数据探索和分析
- 第 10 章 展示数据
- 第 11 章 网页抓取:获取并存储网络数据
- 第 12 章 高级网页抓取:屏幕抓取器与爬虫
- 第 13 章 应用编程接口
- 第 14 章 自动化和规模化
- 第 15 章 结论
- 附录 A 编程语言对比
- 附录 B 初学者的 Python 学习资源
- 附录 C 学习命令行
- 附录 D 高级 Python 设置
- 附录 E Python 陷阱
- 附录 F IPython 指南
- 附录 G 使用亚马逊网络服务
- 关于作者
- 关于封面
D.8 学习我们的新环境(Windows、Mac、Linux)
这里展示的例子是面向 Mac 的,但是过程与 Windows 和 Linux 上是相同的。在这一节中,我们会学习一些关于如何使用设置并确保所有的组件一起工作的知识。
让我们通过创建一个名为 testprojects 的新环境开始。我们会在任何需要一个快速的环境来练习测试或做其他事情时,激活并使用它。运行下面的命令来创建它:
$ mkvirtualenv testprojects
创建环境后,你会看到控制台提示的前面添加了环境名称。对我来说,像下面这样:
(testprojects)Jacquelines-MacBook-Pro:~ jacquelinekazil$
让我们安装一个 Python 库到环境中。我们会安装的第一个库称为 ipython。在你的激活环境中,运行下面的命令:
(testprojects) $ pip install ipython
如果这个命令是成功的,那么你输出的最后几行看起来像下面这样:
Installing collected packages: ipython, gnureadline Successfully installed ipython gnureadline Cleaning up...
现在,如果你输入 pip freeze 到控制台,会看到当前环境的库,同时还有每个安装的版本号。输出会类似下面这样:
gnureadline==6.3.3 ipython==2.1.0 wsgiref==0.1.2
这些输出告诉我们,在 testprojects 环境中,我们安装了 3 个库:gnureadline、ipython 和 wsgiref。ipython 是我们刚刚安装的库。gnureadline 是在安装 ipython 时安装的库,因为这是一个依赖库。(这让你避免了需要直接安装依赖的库。很好,不是吗?)第三个库是 wsgiref。它默认存在,但是不是必需的。
所以我们已经安装了一个叫 ipython 的库,但是我们可以用它做些什么呢?IPython 是一个易于使用的 Python 默认解释器的替代(你可以在附录 F 中读到更多关于 IPython 的信息)。为了启动 IPython,直接输入 ipython。
你会看到类似下面的输入提示:
IPython 3.1.0 -- An enhanced Interactive Python. ? -> Introduction and overview of IPython's features. %quickref -> Quick reference. help -> Python's own help system. object? -> Details about 'object', use 'object??' for extra details. In [1]:
对其进行测试,输入下面命令:
In [1]: import sys In [2]: import pprint In [3]: pprint.pprint(sys.path)
你应该会看到与我们确认环境工作时相同的输出。sys 和 pprint 是标准库模块,打包在 Python 之中。
有两种方法退出 IPython。你可以按下 Ctrl+D,在提示时输入 y(yes),或者只是输入 quit()。它的工作方式同默认的 Python shell 一样。
一旦你退出了,你会回到命令行。现在我们有了一个叫 testprojects 的环境,有 3 个库已经安装。但是如果我们致力于其他项目,想要有另一个环境呢?首先,输入下面的命令禁用当前的环境:
$ deactivate
之后创建一个新的叫作 sandbox 的环境:
$ mkvirtualenv sandbox
完成之后,你会进入新环境。如果输入 pip freeze,你会看到这个环境还没有安装 IPython。因为这是一个全新的环境,与 testprojects 环境完全分离。如果我们在这个环境中安装 IPython,它会在计算机上安装第二个实例。这保证我们在一个环境中所做的任何事不会影响其他的环境。
为什么它很重要?随着新项目的进行,你会想安装不同的库以及不同版本的库。我们建议为本书创建一个虚拟环境,但是如果你启动了一个新的项目,你会想要创建一个新的虚拟环境。正如你所见,随着项目的切换,在不同的环境中切换是很容易的。
有时候,你可能会碰到所有依赖都存储在一个名为 requirements.txt 文件中的仓库。库作者使用虚拟环境和 pip freeze 来保存列表,这样用户可以安装库和依赖。从 requirements 文件安装包,你需要运行 pip install -r requirements.txt。
我们知道如何创建和禁用环境,但是我们不知道如何激活一个已经存在的环境。为了激活我们名为 sandbox 的样例环境,输入下面的命令(如果你已经在其中了,需要先 deactivate 它,来看有什么区别):
$ workon sandbox
最后,你如何摧毁一个环境呢?首先,确保你不在想要删除的环境中。如果你键入了 workon sandbox,那么你应该在 sandbox 环境中了。为了删除它,首先你需要禁用它,然后移除它:
$ deactivate $ rmvirtualenv sandbox
现在,你唯一应该拥有的环境为 testprojects。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论