注:文章原文为Dr. Charles Severance 的 <Python for Informatics>.文中代码用3.4版改写,并在本机测试通过. 11.1 正则表达式的字符匹配 我们可以用许多其它的特殊字符创建更加强大的正则表达式.最常用的特殊符号是可匹配任何字符的句号(".").在以下的示例中,正则表达式”F..m:“将匹配”From:”,“Fxxm:",”F12m:“,或者”F!@m:“等类似字符串,因为表达式中间的句号可匹配任何字符. import…
注:文章原文为Dr. Charles Severance 的 <Python for Informatics>.文中代码用3.4版改写,并在本机测试通过. 11.4 转义字符 之前我们在正则表达式中使用特殊字符来匹配一行的开头和结尾,或者是指定通配符,当我们想匹配象"$"或"^"的实际字符时,我们需要一个方法来表示这些“正常”的字符. 我们可以简单的在字符前添加反斜线"\"即可实现匹配.例如,我们可以使用下面的正则表达式找到金钱数额:…
注:文章原文为Dr. Charles Severance 的 <Python for Informatics>.文中代码用3.4版改写,并在本机测试通过. 11.7 调试 Python有一些简单和基本的内置文档,当你想快速复习触发你记忆的特定方法,这将非常有用.这个文档可以通过Python解释器在互动模式下查看. 你可以使用help()命令带出互动的帮助系统 >>> help() Welcome to Python 3.4's help utility! If this is…
注:文章原文为Dr. Charles Severance 的 <Python for Informatics>.文中代码用3.4版改写,并在本机测试通过. 11.3 组合查询和抽取 如果我们想以“X-”字符串开头的行中找到数字,就像下面两行字符串: X-DSPAM-Confidence: 0.8475X-DSPAM-Probability: 0.0000 但我们不只是要任意行中的任意浮点数,而是具备上面格式的行中的数字. 我们可以创建以下正则表达式来选择这样的行: ^X-.*: [0-9.]+…
注:文章原文为Dr. Charles Severance 的 <Python for Informatics>.文中代码用3.4版改写,并在本机测试通过. 11.2 用正则表达式抽取数据 在Python中,我们可以使用findall()方法从字符串中抽取所有匹配正则表达式的子字符串.接下来我们会用一个例子,从行中抽取看起来像电子邮件地址的字符串,而不考虑行的格式.比如,我们想从下面几行字符串中拉出电子邮件地址. From stephen.marquard@uct.ac.za Sat Jan 5…
注:文章原文为Dr. Charles Severance 的 <Python for Informatics>.文中代码用3.4版改写,并在本机测试通过. 目前为止,我们一直在通读文件,查找模式和抽取字里行间我们感兴趣的各种信息.我们一直在使用像split和find的字符串方法,以及列表和字符串的切片功能来抽取行中的部分内容. 像这样的查找和抽取任务是如此常见,所以Python拥有一个非常强大的库——正则表达式(regular expressions)来优雅地处理这些任务.我们未早一点介绍正则…
1.递归 在函数内部,可以调其他函数,如果一个函数在内部调用它本身,这个函数就是递归函数.递归算法对解决一大类问题是十分有效的,它往往使算法的描述简洁而且易于裂解 递归算法解决问题的特点: 1)递归是在过程或函数里调用自身 2)在使用递归策略时,必须有一个明确的递归结束条件,称为递归出口 3)递归算法解题通常显得很简洁,但递归算法解题的运行效率较低,所以一般不提倡用递归算法设计程序 4)在递归调用的过程当中系统为每一层的返回点.局部量等开辟了栈来存储.递归次数过多容易造成栈溢出等.所以一般不提倡…
原文:http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html 1. 正则表达式基础 1.1. 简单介绍 正则表达式并不是Python的一部分.正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大.得益于这一点,在提供了正则表达式的语言里,正则表达式的语法都是一样的,区别只在于不同的编程语言实现支持的语法数量不同:但不用担心,不被支持的语法通常是不常用的部分.如…
<python基础教程(第二版)>学习笔记 文件和素材(第11章) 打开文件:open(filename[,mode[,buffering]]) mode是读写文件的模式f=open(r'c:\somefile.txt') #默认是读模式+ 表示是可以读写:r 读模式:w 写模式:a 追加模式:b 二进制模式:换行符在Windows为\r\n,在Unix中为\n, Python会自动转换: buffering缓冲:0表示无缓冲:1表示有缓冲(使用flush或close才会写到硬盘中): sys…
上一章对Python的语句和语法已经进行了基本的说明,接下来就是每个章节的详细说明,本章的主要内容就是标题中涵盖的三点:赋值语句.表达式语句.打印语句 本章重点内容如下: 1.赋值语句 1)赋值语句的特点(注意事项) 2)赋值语句的形式:基本形式.元组及列表解包赋值.序列赋值.扩展的序列解包.多目标赋值.增量赋值 3)变量命名规则 2.表达式语句 1)常见的表达式语句 2)表达式语句和原位置修改 3.打印操作 1)调用形式 2)应用示例 以下是针对以上重点内容的详细说明 1.赋值语句 1)赋值语…