每日一“酷”之heapq】的更多相关文章

作用:heapq模块实现一个适用于Python列表的最小堆排序算法 堆(heap)是一个属性数据结构,其中子节点与父节点是一种有序关系.二叉堆是一种特殊的堆,二叉堆是完全二元树(二叉树)或者是近似完全二元树(二叉树).可以使用以下如下方式组织的列表或数表示,即元素N的子元素位于2*N+1和2*N+2.这种布局允许原地重新组织堆,从而不必再增加或删除元素时分配大量内存. 最大堆确保父节点大于或等于其两个子节点.最小堆要求父节点小雨或等于其子节点.Python的heqpq模块实现了一个最小堆. 1.…
Cookie---Http Cookie 作用:Cookie模块定义一些类来解析和创建HTTP cookie首部 Cookie模块为大多数符合RFC 2109的cookie实现一个解析器.这个实现没有标准那么严格,因为,MSIE 3.0X并不支持整个标准. RFC 2109 HTTP状态管理机制 1.  创建和设置Cookie 可以用Cookie为机遇浏览器的应用实现状态管理,因此,Cookie通常由服务器设置,并由客户存储和返回.下面是一个创建cookie的最简单的例子. import Coo…
Queue—线程安全的FIFO实现 作用:提供一个线程安全的FIFO实现 Queue模块提供了一个适用于多线程编程的先进先出(first-in,first-out)数据结构,可以用来在生产者和消费者线程之间安全地传递消息或其他数据.它会为调用者处理锁定,使多个线程可以安全第处理同一个Queue实例.Queue的大小(其中包含的元素个数)可能要受限制,,以限制内存使用或处理. 1.  基本FIFO队列 Queue类实现一个基本不能的先进先出容器.使用put()将元素增加到序列一段,使用get()从…
pprint – 美观打印 作用:美观打印数据结构 pprint 包含一个“美观打印机”,用于生成数据结构的一个美观视图.格式化工具会生成数据结构的一些表示,不仅可以由解释器正确地解析,而且便于人类阅读.输出尽可能放在一行上,分解为多行时则需要缩进. 这一节中的列子都用到了pprint_data.py,其中包含一下数据 data = [(1,{'a':'A','b':'B','c':'C','d':'D'}), (2,{'e':'E','f':'F','g':'G','h':'H', 'i':'…
Copy – 复制对象 作用:提供一些函数,可以使用浅副本或深副本语义复制对象. copy模块包括两个函数copy()和deepcopy(),用于复制现有的对象 1.  浅副本 copy()创建的浅副本(shallow copy)是一个新容器,其中填充原对象内容的引用.建立list对象的一个浅副本时,会构造一个新的list,并将原对象的元素追加到这个list. import copy class MyClass(object): def __init__(self,name): self.nam…
作用:维护有序列表,而不必在每次想列表增加一个元素时调用sort排序 bisect 模块实现了一个算法用于向列表中插入元素,同时仍保持列表有序.有些情况下,这比反复对一个了表序列更高效,另外也比构建一个大列表之后再显式对齐排序更为高效 1.有序插入 使用insort()按有序顺序像一个列表中插入元素 import bisect import random random.seed(1) print 'New Pos Contents' print '--- --- --------' l = []…
array--国定类型数据序列 array模块定义一个序列数据结构,看起来和list非常相似,只不过所有成员都必须是相同的基本类型. 1.初始化 array实例化时可以提高一个参数来描述允许哪个种数据类型,还可以有一个初始的数据序列存储在数组中. import array import binascii s = 'This is the array.' a = array.array('c',s) print 'As string:', s print 'As array :', a print…
介绍:difflib 比较序列.该模块包含一些用来计算和处理序列直接差异的工具.她对于比较文本尤其用,其中包含的函数可以使用多种常用差异格式生成报告. 测试数据(splitlines()按行划分为序列列表): text1 = """ We all know that English is very useful. Many people in the world speak English. So more and more people in China study it.…
介绍:需要美观打印时,可以使用textwrap模块来格式化要输出的文本,这个模块允许通过编程提高类似段落自动换行或填充特性等功能. 1 创建实例数据 sample_text = ''' I’m very happy and I like to make friends with others. I also like singing but traveling is my favorite, I have been to many interesting places in China but…
介绍:string模块可以追溯到最早的Python版本中.现在很多的被移植为str和unicode对象的方法,在python3.0中会被完全去除.string模块中,有很多有用的常量和累,用来处理string和unicode对象. 一. 函数 1.capwords()的作用是将一个字符串中所有单词的首字母大写: import string s = 'We believe one thing,today is difficult,tomorrow is more difficult,but the…