如果你同时负责多个Python 项目,或者想要轻松打包某个项目及其关联的库文件,再 或者你担心已安装的库之间可能有冲突,那么你可以安装一个Python 虚拟环境来分而 治之. 当一个Python 库不用虚拟环境安装的时候,你实际上是全局安装它.这通常需要有管 理员权限,或者以root 身份安装,这个库文件对设备上的每个用户和每个项目都是存 在的.好在创建虚拟环境非常简单: $ virtualenv scrapingEnv 这样就创建了一个叫作scrapingEnv 的新环境,你需要先激活它再使用…
如果你同时负责多个 Python 项目,或者想要轻松打包某个项目及其关联的库文件,再或者你担心已安装的库之间可能有冲突,那么你可以安装一个 Python 虚拟环境来分而治之.当一个 Python 库不用虚拟环境安装的时候,你实际上是全局安装它.这通常需要有管理员权限,或者以 root 身份安装,这个库文件对设备上的每个用户和每个项目都是存在的.好在创建虚拟环境非常简单:$ virtualenv scrapingEnv这样就创建了一个叫作 scrapingEnv 的新环境,你需要先激活它再使用:$…
signal包负责在Python程序内部处理信号.典型的操作包含预设信号处理函数,暂停并等待信号,以及定时发出SIGALRM等. 要注意,signal包主要是针对UNIX平台(比方Linux, MAC OS).而Windows内核中因为对信号机制的支持不充分, 所以在Windows上的Python不能发挥信号系统的功能. 定义信号名 signal包定义了各个信号名及其相应的整数.比方 import signal print signal.SIGALRM print signal.SIGCONT…
在开发python应用程序的时候,系统安装的python3只有一个版本:3.4.所有的第三方的包都回被pip安装到python3的site-packages目录下. 如果我们要要同时开发多个应用程序,那这些应用都共用一个python,就是安装在系统的python3.如果应用A需要jinja 2.7,而应用B需要jinja 2.6怎么办? 这种情况下,每个应用需要各自拥有一套"独立"的python运行环境.有两个常用工具用于创建python"独立"环境: venv i…
ubprocess包主要功能是运行外部的命令和程序.从这个意义上来说,subprocess的功能与shell类似. subprocess以及经常使用的封装函数 当我们执行python的时候,我们都是在创建并执行一个进程. 在Python中.我们通过标准库中的subprocess包来fork一个子进程,并执行一个外部的程序. subprocess包中定义有数个创建子进程的函数.这些函数分别以不同的方式创建子进程.所以我们能够依据须要来从中选取一个使用. 另外subprocess还提供了一些管理标准…
Python 文件读写 Python内置了读写文件的函数,用法和C是兼容的.本节介绍内容大致有:文件的打开/关闭.文件对象.文件的读写等. 本章节仅示例介绍 TXT 类型文档的读写,也就是最基础的文件读写,也需要注意编码问题:其他文件的读写及编码相关详见专题的博文. open()   close()     with open(...) as ... 看以下示例就能了解 Python 的 open() 及 close() 函数.这边调用 read()方法可以一次读取文件的全部内容,Python把…
引入configparser,直接read整个INI文件,再调用get即可.但需要注意的是,如果INI文件本身不太规范,就会报各种错,而这又常常不可避免的.本文自定义函数通过try...except..来自动纠正再重读. 此外,注册表导出文件大概齐就是INI文件格式,但取初一行的声明也会被认定为没有SECTION头而报错.本文也进行了自动纠正. 极大概率是早有人造过更好的轮子,我写在这里权当作自己学习Python的笔记.功能.特色如下: getINIValue函数三个参数,iniFile, se…
Python拥有强大的标准库.从如今起,開始学习标准库中提供的一些经常使用功能. 首先看正則表達式(regular expression),它的主要功能是从字符串(string)中通过特定的模式(pattern),搜索想要找到的内容. 比如:要从一个字符串中找出全部的数字,我们能够这样做: import re str = "int2str" m = re.search("[0-9]",str) print(m.group(0)) 输出:2 re.search()接收…
1.使用文本来存储python对象时,必须使用转换工具把对象转成字符串 2.内置函数eval可以把字符串当做可执行程序代码:eg  s = ‘[1,2,3]’    eval(s) -->[1,2,3],这里eval及时把字符串转化为列表对象 3.pickle模块能够直接存储对象 D= {‘a’:1,‘b’:2} F= open('datafile.pkl','wb') pickle.dump(D,F) F.close() F = open('datafile.pkl','rb') E = pi…
#Python打开读取一个文件内容,然后写入一个新的文件中,并对某些字段进行提取,写入新的字段的脚本,与大家共同学习. import os import re def get_filelist(dir): os.getcwd() #get current work direction. os.chdir(path) #change direction Filelist = [] for home, dirs, files in os.walk(path): for filename in fil…