- 博客(21)
- 资源 (44)
- 收藏
- 关注
翻译 Python解释器的探讨:第二部分代码对象
本文是python解释器系列文章的一部分,第一部分文章请看这里:http://blog.csdn.net/caimouse/article/details/47342357 从第一部分文章里可知,主要分析了一下函数对象相关的内容。本文里继续深入分析python解析器相关内容,主要分析函数的代码对象。>>> def foo(a):... x = 3... return x + a..
2015-09-29 10:48:24 1910
原创 3.3.7 使用difflib.get_close_matches函数
在一个列表里查找一个最相似的词组,比如需要从多行文本里找到有“深圳”的词组。例子:#python3.4.3import difflibword = '深圳'poss = ['深山里的圳', '深山里的圳2', '来过深圳', '来过圳深']print(word, ':')for line in difflib.get_close_matches(word, poss): p
2015-09-29 08:14:18 7671 1
原创 3.3.6 使用difflib.context_diff函数
只想简单地比较一下文本之间是否有变化,就可以函数defflib.context_diff来实现。例子:#python3.4.3import difflibtext1 = ''' 1. Beautiful is better than ugly. 2. Explicit is better than implicit. 3. Simple is better than comp
2015-09-28 11:28:33 3051 1
原创 180亿美元的三行代码
这几天,心目中的女神--大众给拉下了神坛,这是从美国传来尾气造假的事实,这份报告清晰地交待整个调查过程,以事实和证据说话。随后媒体并给出下面几行简单的地代码来说明造假的过程:.mudge @dotMudgeBasically, VW EPA cheat mode is: if(drive_wheels_moving && non_drive_wheels_stationary){Enable_Dy
2015-09-27 13:08:02 3716 2
原创 3.3.5 使用HtmlDiff对象
当想创建一个HTML来表示文件之间差异时,就可以使用HtmlDiff对象。特别对于Web服务器的应用就更加方便了,直接把数据返回即可。例子:#python3.4.3 import difflib text1 = ''' 1. Beautiful is better than ugly. 2. Explicit is better than implicit. 3. Simple is b
2015-09-27 11:29:37 4907 1
原创 《Linux/Unix设计思想:软件的杠杆效应》读后感
《Linux/Unix设计思想:软件的杠杆效应》读后感CSDN送一本书给我,本来我是选择Python相关的书,可惜没有货了,CSDN的美女给我一个目录列表,我选择了这本《Linux/Unix设计思想》,当我读到下面这个故事时,深深地打动了我,让我不断反思,久久不能入睡,下面将这个故事分享如下: 我的姑姑却在一年时间内,卖出了价值将近一百万美元的特百惠产品。当我听说这件事情时,我首先想到的就是:“这
2015-09-26 11:38:04 2772 3
原创 3.3.3 Differ对象
3.3.3 Differ对象Differ对象是进行全文比较,然后列表那一个位置增加、减少或者相同。类difflib.Differ(linejunk=None, charjunk=None) 构造一个Differ对象,linejunk和charjunk是可选的过滤函数,如果不设置,默认为None。linejunk是一个可以过滤不需要的字符串行的函数对象,当不需要时返回True。charjunk是一个
2015-09-26 09:57:31 2284 1
原创 在XP系统上出现无法定位程序输入点 K32GetProcessMemoryInfo
在XP系统上出现无法定位程序输入点 K32GetProcessMemoryInfoVC2012升级补丁5.0之后,编译出来的程序发现在XP系统无法定位程序输入点 K32GetProcessMemoryInfo于动态链接库kernel32.dll之上。之前程序一直在XP上安装正常,今天测试组的同事突然发现,新发布的版本不能在XP上使用,这个问题比较奇怪,因为以往的版本都是没有问题的。为什么会突然出现
2015-09-23 10:11:55 16918
原创 3.3.2 使用SequenceMatcher对象
查找最大相同序列例子:#python3.4.3 import difflib s1 = [ 1, 2, 3, 5, 6, 4 ]s2 = [ 2, 3, 5, 4, 6, 1 ] print('s1 = ', s1)print('s2 = ', s2)print('s1 == s2', s1 == s2)print('') matcher = difflib.SequenceMatcher(Non
2015-09-20 17:41:23 7864
原创 3.3.1 SequenceMatcher对象
类difflib.SequenceMatcher(isjunk=None, a='', b='', autojunk=True) 本函数是构造函数,主要创建任何类型序列的比较对象。isjunk是关键字参数,主要设置过滤函数,比如想丢掉a和b比较序列里特定的字符,就可以设置相应的函数,比如不要空格和跳格符:lambda x: x in " \t"。a和b是比较序列。autojunk是用来设置是否自动
2015-09-20 08:54:32 6844
原创 3.3 difflib--比较不同序列之间差异库
3.3 difflib--比较不同序列之间差异库本库主要提供一些类和一些函数来比较不同序列对象,提取出来差别部分,特别在文本方面的比较更加有用。例如在文件方面进行比较,在不同的格式下比较会产生不同的差别的结果,可以支持HTML文本比较,也可以支持纯文本比较和以及只产生修改的文本显示。对于文件目录和文件的比较,可以使用filecmp库来进行比较差别。 类difflib.SequenceMatcher
2015-09-19 17:45:19 5512 2
原创 3.2.5.10 识别中文的正则表达式
3.2.5.10 识别中文的正则表达式在我们编写程序时,经常需要判断输入的字符是否包括有中文字符,比如特定的注册帐号,一般不支持中文字符。又比如在电话输入框里输入了中文字符,这时就需要正则表达式来判断是否合法了。例子:import re print('[u4e00-u9fa5]')m = re.findall('[\u4e00-\u9fa5]', 'abc abc 中国 456')if m:
2015-09-19 09:25:33 2425
原创 我的第一个项目——说说那些年我们一起写过的代码
我的第一个项目——说说那些年我们一起写过的代码 时间回拨到15年前,那是2000年的夏天,天气正热的时候,我刚从大学毕业了,来到了改革开放最前沿的城市--深圳。坐火车到了广州之后,就搭乘长途大巴从广州省站出发,当车开出广州之后,看到广深高速两边全是楼房,一栋接着一栋,没有间断的地方,可谓让我吃惊不已。因为与西安那边相比,只看到公路两旁都是没有草木的黄土高原,那是形成极大的反差。当大巴车驶离高速公路
2015-09-14 18:42:45 3651 2
原创 3.2.5.9 写一个词法分析器
词法分析器或者叫扫描器主要用来分析字符串的文本,然后把文本里组成的单词分析出来,识别为某一类型的属性。对于编写编译器或者解析器的第一步工作就是做这样的事情:词法分析。以前有很多种使用字符串搜索的办法,这里使用正则表达式来实现这个目的。例子:print("词法分析器")import collectionsimport reToken = collections.namedtuple('To
2015-09-13 09:06:34 2239
原创 3.2.5.8 原始字符串的使用方法
在正则表达式里,经常要使用斜线(\)来指明一个集合,但是斜线(\)也是字符串里转义字符的特定标志,为了编写正则表达式更简单,可以使用原始字符串的方式,也就是在字符串前面添加小写字母r来指明。下面这个例子使用到两个正则表达式语句是等价的。例子:print(r'text')print( re.match(r"\W(.)\1\W", " ff "))print( re.match("\\W(.)\\1\
2015-09-13 08:37:02 2075
原创 3.2.5.6 查找英语语句里所有形容词
3.2.5.6 查找英语语句里所有形容词如果想查找在一段文字里所有出现匹配的字符,需要使用findall()函数,而不是使用search()函数。例如,如果有一个英语作家想把一段英语里所有形容词查找出来,他或她就会使用findall()来实现这个功能。例子:text = "He was carefully disguised but captured quickly by police."prin
2015-09-12 10:00:30 1974
原创 3.2.5.5 一句话中的字随机排列
现在来做一个文字上的游戏,给你一句话,把这句话中除了第一个字符和最后一个字符不要动之外,其内部的字符可以随机排队列。这个游戏采用正则表达式来做,就比较简单了。例子:import random text = '把深圳建设成为全球软件中心 这是新的开始'def repl(m): inner_word = list(m.group(2)) random.shuffle(inne
2015-09-11 08:21:51 1930
原创 3.2.5.4 分析黑名单
假如你正在开发手机的应用,比如从云中心那里获取到一串黑名单的电话本号码,然而这些电话本的号码是作为一个文本文件返回来的,需要把这些一行一行的文本分析成电信供应商、电话号码、备注信息、标记的次数,其实这个过程就是把序列化的信息转换为结构化的信息,这样才可更方便处理,比如把电话号码拿出来作为拦截的比较。例子:text = """18701808546 1位用户诈骗号码 (2015-08-24) 153
2015-09-07 13:29:24 1756
原创 3.2.5.3 search()函数和match()函数区别
在前介绍的正则表达式里,提供了两个基本的操作函数:search()和match()。这两个基本的函数都是匹配正则表达式的字符串,但它们之间去匹配的模式是有一些区别的,re.match是给出的字符串的头部开始匹配,匹配成功就结束了;而re.search是从给出的字符串头部开始,只要任何位置匹配成功都找出来,这种模式跟Perl语言里缺省方式一致。例子:print('search() vs match(
2015-09-05 16:45:18 2828
原创 3.2.5.2 模拟C函数 scanf()功能
在Python里,没有与scanf()直接等同的功能函数,因此需要格式化输入,就需要使用正则表达式的功能来实现,并且正则表达式的功能比scanf()更加灵活,功能更加强大,下面就来列出一些等同的表达:scanf()格式字符串正则表达式%c.%5c.{5}%d[-+]?\d+%e,%E,%f,%g[-+]?(\d+(\.d*)?|\.\d+)([eE][-+]?\d+)?%i[-+]?(0[xX][
2015-09-05 09:17:03 2073
原创 树莓派2的内核编译与安装
这个树莓派2已经买回来有一段时间了,一直没有空玩这个小电脑。今天日子特别,是中国抗战胜利70周年日,幸好有英明的领导人,特别给我们放假了一天,想一想今天做什么事情更有意义呢?出去玩,起不到放假的意义,那么打定注意在家里带着宝贝,一边看有意义的阅兵,也达到小学老师的要求,也可以达到有教育意义;一边开着电脑,把这个树莓派学习一下,这样在漫长的内核编译过程中,可以看看阅兵,不至于那么无聊。注意打定了,今
2015-09-03 21:29:40 4421 4
python抓取天气并分析 实例源码
2017-08-28
书《深度学习》
2017-03-13
国产8051模拟器
2016-09-10
tinyxml2配套源码
2016-06-27
selenium的浏览器驱动
2016-06-14
开源鸿蒙4.0不能进入桌面的补丁
2024-03-17
开源鸿蒙 4.0 RK3566开发板配置
2024-03-17
svm_hog_data.rar
2020-03-02
实现numpy的C++库扩展
2019-11-24
python web py入门配套源代码
2018-02-23
webpy演示例子1
2018-02-21
胶囊模型的代码
2018-02-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人