python学习之----用虚拟环境保存库文件

如果你同时负责多个Python 项目,或者想要轻松打包某个项目及其关联的库文件,再

或者你担心已安装的库之间可能有冲突,那么你可以安装一个Python 虚拟环境来分而

治之。

当一个Python 库不用虚拟环境安装的时候,你实际上是全局安装它。这通常需要有管

理员权限,或者以root 身份安装,这个库文件对设备上的每个用户和每个项目都是存

在的。好在创建虚拟环境非常简单:

$ virtualenv scrapingEnv

这样就创建了一个叫作scrapingEnv 的新环境,你需要先激活它再使用:

$ cd scrapingEnv/

$ source bin/activate

激活环境之后,你会发现环境名称出现在命令行提示符前面,提醒你当前处于虚拟环

境中。后面你安装的任何库和执行的任何程序都是在这个环境下运行。

在新建的scrapingEnv 环境里,可以安装并使用BeautifulSoup:

(scrapingEnv)ryan$ pip install beautifulsoup4

(scrapingEnv)ryan$ python

> from bs4 import BeautifulSoup

>

当不再使用虚拟环境中的库时,可以通过释放命令来退出环境:

(scrapingEnv)ryan$ deactivate

ryan$ python

> from bs4 import BeautifulSoup

Traceback (most recent call last):

File "<stdin>", line 1, in <module>

ImportError: No module named ‘bs4‘

将项目关联的所有库单独放在一个虚拟环境里,还可以轻松打包整个环境发生给其他

人。只要他们的Python 版本和你的相同,你打包的代码就可以直接通过虚拟环境运

行,不需要再安装任何库。

时间: 2024-10-26 19:39:40

python学习之----用虚拟环境保存库文件的相关文章

Python学习教程(Python学习路线):Pandas库基础分析-详解时间序列的处理

Python学习教程(Python学习路线):Pandas库基础分析-详解时间序列的处理 在使用Python进行数据分析时,经常会遇到时间日期格式处理和转换,特别是分析和挖掘与时间相关的数据,比如量化交易就是从历史数据中寻找股价的变化规律.Python中自带的处理时间的模块有datetime,NumPy库也提供了相应的方法,Pandas作为Python环境下的数据分析库,更是提供了强大的日期数据处理的功能,是处理时间序列的利器. 1.生成日期序列 主要提供pd.data_range()和pd.p

python学习笔记-对象持久化保存与恢复

序列化的概念很简单.内存里面有一个数据结构,你希望将它保存下来,重用,或者发送给其他人.你会怎么做?嗯, 这取决于你想要怎么保存,怎么重用,发送给谁.很多游戏允许你在退出的时候保存进度,然后你再次启动的时候回到上次退出的地方.(实际上, 很多非游戏程序也会这么干.) 在这个情况下, 一个捕获了当前进度的数据结构需要在你退出的时候保存到磁盘上,接着在你重新启动的时候从磁盘上加载进来.这个数据只会被创建它的程序使用,不会发送到网络上,也不会被其它程序读取.因此,互操作的问题被限制在保证新版本的程序能

Python学习笔记14:标准库之信号量(signal包)

signal包负责在Python程序内部处理信号,典型的操作包括预设信号处理函数,暂停并等待信号,以及定时发出SIGALRM等. 要注意,signal包主要是针对UNIX平台(比如Linux, MAC OS),而Windows内核中由于对信号机制的支持不充分, 所以在Windows上的Python不能发挥信号系统的功能. 定义信号名 signal包定义了各个信号名及其对应的整数,比如 import signal print signal.SIGALRM print signal.SIGCONT

Python学习笔记13:标准库之子进程(subprocess包)

ubprocess包主要功能是执行外部的命令和程序.从这个意义上来说,subprocess的功能与shell类似. subprocess以及常用的封装函数 当我们运行python的时候,我们都是在创建并运行一个进程. 在Python中,我们通过标准库中的subprocess包来fork一个子进程,并运行一个外部的程序. subprocess包中定义有数个创建子进程的函数,这些函数分别以不同的方式创建子进程,所以我们可以根据需要来从中选取一个使用. 另外subprocess还提供了一些管理标准流(

Python学习笔记9:标志库之路径和文件

一 os.path包 且看代码: import os.path path="/home/User/Document/test.txt" print(os.path.basename(path)) # 查询路径中包含的文件名 print(os.path.dirname(path)) # 查询路径中包含的目录 info = os.path.split(path) # 将路径分割成文件名和目录两个部分,放在一个表中返回 print(info) path2 = os.path.join('/'

Python学习笔记15:标准库之获取进程信息(os包)

Python的os包中有查询和修改进程信息的函数. 进程信息 os包中相关函数如下: uname() 返回操作系统相关信息,类似于Linux上的uname命令. umask() 设置该进程创建文件时的权限mask,类似于Linux上的umask命令. get*() 查询 (*由以下代替) uid, euid, resuid, gid, egid, resgid :权限相关,其中resuid主要用来返回saved UID. pid, pgid, ppid, sid                

Python学习笔记8:标志库之正则表达式

Python拥有强大的标准库.从现在起,开始学习标准库中提供的一些常用功能. 首先看正则表达式(regular expression),它的主要功能是从字符串(string)中通过特定的模式(pattern),搜索想要找到的内容. 例如:要从一个字符串中找出所有的数字,我们可以这样做: import re str = "int2str" m = re.search("[0-9]",str) print(m.group(0)) 输出:2 re.search()接收两个

python学习笔记-day03 (函数和文件操作)

函数(代码块,按功能划分(也可按其他方式划分)) 内置函数第三方函数自定义函数 内置函数:help()dir()type()reload()id() vars()  # 获取脚本中的变量,当前模块的所有变量    {'__name__': '__main__',  #被执行的脚本,__name__ 的值为__main__    '__builtins__': <module '__builtin__' (built-in)>,     '__file__': '/PYthon/test/tes

Python学习笔记12:标准库之对象序列化(pickle包,cPickle包)

计算机的内存中存储的是二进制的序列. 我们能够直接将某个对象所相应位置的数据抓取下来,转换成文本流 (这个过程叫做serialize),然后将文本流存入到文件里. 因为Python在创建对象时,要參考对象的类定义,所以当我们从文本中读取对象时,必须在手边要有该对象的类定义,才干懂得怎样去重建这一对象. 从文件读取时,对于Python的内建(built-in)对象 (比方说整数.词典.表等等),因为其类定义已经加载内存,所以不须要我们再在程序中定义类. 但对于用户自行定义的对象,就必需要先定义类,