一.单例模式 import time import threading class Singleton(object): lock = threading.RLock() # 定义一把锁 __instance = None def __new__(cls, *args, **kwargs): if cls.__instance: return cls.__instance # 如果之前实例化过,没必要再次实例化,因为都是同一个实例 with cls.lock: # 避免当线程没有返回实例前,另一…
1.3.5 OrderedDict 有序字典 OrderedDict是dict的子类,它记住了内容添加的顺序. import collections print 'Regular dictionary:' d = {} d['a'] = 'A' d['b'] = 'B' d['c'] = 'C' for k, v in d.items(): print k, v print '\nOrderedDict:' d = collections.OrderedDict() d['a'] = 'A' d…
栈,队列的特性: 1.栈(stacks)是一种只能通过访问其一端来实现数据存储与检索的线性数据结构,具有后进先出(last in first out,LIFO)的特征 2.队列(queue)是一种具有先进先出特征的线性数据结构,元素的增加只能在一端进行,元素的删除只能在另一端进行.能够增加元素的队列一端称为队尾,可以删除元素的队列一端则称为队首. 地址在 http://docs.python.org/2/tutorial/datastructures.html#more-on-lists ,下面…
1.计数器(counter) Counter是对字典类型的补充,用于追踪值的出现次数. ps:具备字典的所有功能 + 自己的功能  Counter 我们从中挑选一些相对常用的方法来举例: 在上面的例子我们可以看出,counter方法返回的是一个字典,它将字符串中出现的所有字符都进行了统计.在这里再介绍一下update方法,这个update方法是将两次统计的结果相加,和字典的update略有不同. 2.有序字典(orderedDict ) orderdDict是对字典类型的补充,他记住了字典元素添…
目录 1.Python计数器Counter 2.Python有序字典OrderredDict 3.Python默认字典default 4.python可命名元组namedtuple 5.Python双向队列deque 6.Python单向队列deque 7.Python深浅拷贝原理 8.Python深浅拷贝应用 9.python函数的基本定义(open.lambda.递归.装饰器) collections系列…
collections模块基本介绍 我们都知道,Python拥有一些内置的数据类型,比如str, int, list, tuple, dict等, collections模块在这些内置数据类型的基础上,提供了几个额外的数据类型: 1.namedtuple(): 生成可以使用名字来访问元素内容的tuple子类2.deque: 双端队列,可以快速的从另外一侧追加和推出对象3.Counter: 计数器,主要用来计数4.OrderedDict: 有序字典5.defaultdict: 带有默认值的字典 n…
Counter(计数器) 是一个字典的子类,存储形式同样为字典,其中存储的键为字典的元素,值为元素出现的次数,在使用之前我们需要先导入文件 import collections 初始化一个计数器 import collections # 初始化一个计数器 c = collections.Counter('sldfjoaoaufdlfuaof') print(c) # Counter({'f': 4, 'o': 3, 'a': 3, 'd': 2, 'u': 2, 'l': 2, 'j': 1,…
Python_Day_05 计数器(counter),有序字典(OrderDict),默认字典(defaultdict),可命名元祖(namedtuple),双向队列(deque),单项队列(deuqe.Queue)   Counter(计数器) 是一个字典的子类,存储形式同样为字典,其中存储的键为字典的元素,值为元素出现的次数,在使用之前我们需要先导入文件 import collections 初始化一个计数器 import collections # 初始化一个计数器 c = collect…
上节内容回顾:C语言为什么比起他语言块,因为C 会把代码变异成机器码Pyhton 的 .pyc文件是什么python 把.py文件编译成的.pyc文件是Python的字节码, 字符串本质是 字符数组, python 一切事物都是对象,对象是类创建的,像 增加删除更改 都存在于类里边,也可以称作类的成员 set集合 set是一个无序且不重复的元素集合 class set(object): """ set() -> new empty set object set(iter…
1,栈,后进先出,多用于反转 Python里面实现栈,就是把list包装成一个类,再添加一些方法作为栈的基本操作. 栈的实现: class Stack(object): #初始化栈为空列表 def __init__(self): self.items = [] #self.__items = []可以把items变成私有属性 #判断栈是不是为空 def isEmpty(self): return len(self.items) ==0 #返回栈顶的元素 def peek(self): retur…