Python collections系列之可命名元组】的更多相关文章

可命名元组(namedtuple)  根据nametuple可以创建一个包含tuple所有功能以及其他功能的类 1.创建一个坐标类 import collections # 创建类, defaultdict,坐标中会使用 MytupleClass = collections.namedtuple('MytupleClass',['x', 'y', 'z']) obj = MytupleClass(11, 22, 33) 2.查询类中的x,y,z坐标 # 默认情况下元组只能使用索引进行访问,通过创…
有序字典(orderedDict ) orderdDict是对字典类型的补充,他记住了字典元素添加的顺序 1.创建一个有序字典 import collections dic = collections.OrderedDict() dic['k1'] = 'v1' dic['k2'] = 'v2' dic['k3'] = 'v3' 2.查看有序字典 print(dic) 输出结果: OrderedDict([('k1', 'v1'), ('k2', 'v2'), ('k3', 'v3')]) 3.…
计数器(counter) Counter是对字典(无序)类型的补充,用于追踪值的出现次数. 使用counter需要导入 collections 类 ps:具备字典的所有功能 + 自己的功能 1.创建一个计数器 >>> import collections >>> obj = collections.Counter('aaabbccsdfsdfdfsdfsdf') 2.查看计数器变量 >>> print(obj) Counter({'d': 5, 'f'…
单向队列(deque) 单项队列(先进先出 FIFO ) 1.创建单向队列 import queue q = queue.Queue() q.put(') q.put('evescn') 2.查看单向队列 # 单向队列是先进先出,要查看单向队列,需使用get获取单向队列的值 print(q.get()) print(q.get()) 输出结果: 123 evescn 3.单向队列和双向队列的区别 # 双向队列: 调用:import collections collections.deque()…
双向队列(deque) 一个线程安全的双向队列 1.创建一个双向队列 import collections d = collections.deque() d.append(') d.appendleft(') d.appendleft('a') d.appendleft(') 2.查看双向队列 print(d) 输出结果: deque([']) 3.查看双向队列的方法 >>> dir(d) ['__class__', '__copy__', '__delattr__', '__deli…
默认字典(defaultdict)  defaultdict是对字典的类型的补充,它默认给字典的值设置了一个类型. 1.创建默认字典 import collections dic = collections.defaultdict(list) # 设置dic的值类型为list dic['k1'].append('evescn') 2.查看默认字典 print(dic) 输出结果: defaultdict(<class 'list'>, {'k1': ['evescn']}) 3.查看默认字典的…
collection系列 不常用功能,需要进行模块功能导入: import collection Counter 常用方法测试: #!/usr/local/env python3 ''' Author:@南非波波 Blog:http://www.cnblogs.com/songqingbo/ E-mail:qingbo.song@gmail.com ''' import collections obj = collections.Counter('sjndsjkdsdmslaladsldsldm…
 一.collections系列: collections其实是python的标准库,也就是python的一个内置模块,因此使用之前导入一下collections模块即可,collections在python原有的数据类型str(字符串), int(数值), list(列表) tuple(元组), dict(字典)的基础之上增加一些其他的数据类型即方法,具体如下: 1.Counter(dict):计数器,扩展的字典的方法,对指定数据的字串做统计出现的次数,结果是一个元组,如: import co…
global log 127.0.0.1 local2 daemon maxconn log 127.0.0.1 local2 info defaults log global mode http timeout connect 5000ms timeout client 50000ms timeout server 50000ms option dontlognull listen stats : stats enable stats uri /admin stats auth admin:…
1.计数器(counter) Counter是对字典类型的补充,用于追踪值的出现次数. ps:具备字典的所有功能 + 自己的功能  Counter 我们从中挑选一些相对常用的方法来举例: 在上面的例子我们可以看出,counter方法返回的是一个字典,它将字符串中出现的所有字符都进行了统计.在这里再介绍一下update方法,这个update方法是将两次统计的结果相加,和字典的update略有不同. 2.有序字典(orderedDict ) orderdDict是对字典类型的补充,他记住了字典元素添…
Python的元组不能为元组内部的数据进行命名,而 collections.namedtuple 可以来构造一个含有字段名称的元组类,命名元组可以通过逗号+字段名来获取元素值: collections.namedtuple(typename, field_names) 返回一个命名元组类 typename,其中参数的意义如下: typename:类名称 field_names: 元组中元素的名称 一,定义命名元组类 命名元组是一个类,有两种方式来定义命名元组: from collections…
  我们知道c/c++语言中,有结构体这种数据类型: struct{ string name; int age; char sex; }student; 在对结构体对象进行赋值或者取值时可以使用.运算符进行操作. 那么问题来,python中有没有这个数据类型呢?答案是肯定有的,它就是命名元组(namedtyple). 首先来看一下python中普通元组的不方便之处: Bob=("bob",30,'male') #如果想知道Bobde 名字,则需要使用索引位置进行读取,如下 name=B…
1>set集合:是一个无序且不重复的元素集合:访问速度快,解决了重复的问题: s2 = set(["che","liu","haha"]) add():添加元素: difference():将前一个集合与后者的不同建立为一个新的集合:没有改变当前集合,生成了新的集合: difference_update():从集合中去除指定的元素:改变了当前集合,不生成新的集合: intersection():取交集,生成一个新的集合: intersect…
Python namedtuple(命名元组)使用实例 #!/usr/bin/python3 import collections MyTupleClass = collections.namedtuple('MyTupleClass',['name', 'age', 'job']) obj = MyTupleClass("Tomsom",12,'Cooker') print(obj.name) print(obj.age) print(obj.job) 执行结果: Tomsom 12…
一.计数器(对字典的扩展) 有如下一个字典: dic = {'k1':123,'k2':123,'k3':12} 统计12出现的次数,123出现的次数   1.统计出现次数 >>> import collections >>> c = collections.Counter("rewqfsdvcxzfgafrwqerwgfdjg;ldskj") >>> cCounter({'f': 4, 'r': 3, 'g': 3, 'w': 3…
随机数 import random #导入random模块 randint(a,b) 返回[a,b]之间的整数 random.randint(0,9) randrange([start],stop,[step]) 从指定范围内,按指定step基数递增的集合中,获取一个随机数,基数缺省为1 random.randrange(2,15,5) 7 choice(seq) 从非空序列的元素中随机挑选一个元素 random.choice(range(10)) random.choice([0,1,2,3,…
collections.namedtuple() 命名元组的一个主要用途是将你的代码从下标操作中解脱出来举例使用 # 使用 from collections import namedtuple Subscriber = namedtuple('Subscriber', ['addr', 'joined']) # 需要传递一个类型名和你需要的字段给它,然后它就会返回一个类 sub = Subscriber('jonesy@example.com', '2012-10-19') # 你可以初始化这个…
一丶可命名元组(nametuple)…
上节内容回顾:C语言为什么比起他语言块,因为C 会把代码变异成机器码Pyhton 的 .pyc文件是什么python 把.py文件编译成的.pyc文件是Python的字节码, 字符串本质是 字符数组, python 一切事物都是对象,对象是类创建的,像 增加删除更改 都存在于类里边,也可以称作类的成员 set集合 set是一个无序且不重复的元素集合 class set(object): """ set() -> new empty set object set(iter…
collections模块基本介绍 collections在通用的容器dict,list,set和tuple之上提供了几个可选的数据类型 namedtuple() factory function for creating tuple subclasses with named fields deque list-like container with fast appends and pops on either end ChainMap dict-like class for creatin…
一.计数器(counter) Counter是对字典类型的补充,用于追踪值的出现次数. ps:具备字典的所有功能 + 自己的功能 c = Counter('abcdeabcdabcaba') print c 输出:Counter({'a': 5, 'b': 4, 'c': 3, 'd': 2, 'e': 1}) ######################################################################## ### Counter ########…
文章来源:http://www.jb51.net/article/48771.htm (http://www.cnblogs.com/wushank/p/5122786.html) 修改人:天马流行拳 时间:2016/6/22 Collections模块基本介绍 我们都知道,Python拥有一些内置的数据类型,比如str, int, list, tuple, dict等, collections模块在这些内置数据类型的基础上,提供了几个额外的数据类型: 1.namedtuple(): 生成可以使…
问题:  通过下标访问列表或者元组中元素 answer: collections.namedtuple()通过使用元组对象来解决这个问题 这个函数实际上是一个返回Python中标准元组类型子类的一个工厂方法,需要传递一个类型名和字段给它,然后它返回一个类,可以初始化一个类,为定义的字段传递值. eg1: 1. >>> from collections import namedtuple>>> Subscriber = namedtuple('Subscriber', […
python基础系列教程——Python3.x标准模块库目录 文本 string:通用字符串操作 re:正则表达式操作 difflib:差异计算工具 textwrap:文本填充 unicodedata:Unicode字符数据库 stringprep:互联网字符串准备工具 readline:GNU按行读取接口 rlcompleter:GNU按行读取的实现函数 二进制数据 struct:将字节解析为打包的二进制数据 codecs:注册表与基类的编解码器 数据类型 datetime:基于日期与时间工具…
collections库是python内置的集合库,本文主要讲解以下5种数据结构的用法: namedtuple 命名元组,是tuple的子类 deque 双向列表 defaultdict 有默认值的字典,是dict的子类 OrderedDict key有序的字典,是dict的子类 Counter 计数器,是dict的子类 准备工作 from collections import namedtuple,deque,defaultdict,OrderedDict,Counter namedtuple…
python collections模块详解 原文:http://www.cnblogs.com/dahu-daqing/p/7040490.html 1.模块简介 collections包含了一些特殊的容器,针对Python内置的容器,例如list.dict.set和tuple,提供了另一种选择: namedtuple,可以创建包含名称的tuple: deque,类似于list的容器,可以快速的在队列头部和尾部添加.删除元素: Counter,dict的子类,计算可hash的对象: Order…
Python Collections详解 collections模块在内置数据结构(list.tuple.dict.set)的基础上,提供了几个额外的数据结构:ChainMap.Counter.deque.defaultdict.namedtuple和OrderedDict等: ChainMap:Python3的新特性,将多个map组成一个新的单元(原来的map结构仍然存在,类似于这些map被存在了一个list中),这比新建一个map再将其他的map用update加起来快得多,ChainMap可…
原文:http://docs.pythontab.com/interpy/collections/collections/ 容器(Collections) Python附带一个模块,它包含许多容器数据类型,名字叫作collections.我们将讨论它的作用和用法. 我们将讨论的是: defaultdict counter deque namedtuple enum.Enum (包含在Python 3.4以上) defaultdict 我个人使用defaultdict较多,与dict类型不同,你不…
namedtuple collections.namedtuple(typename, filed_name, *, rename=False, module=None) 创建一个以 typename 命名的 tuple 子类,这个子类用于创建类元组对象,这些对象可以像元组一样被索引和迭代. field_name: 指定 namedtuple 的字段名,可以是列表,可以是用空格或逗号隔开的字符串. rename: field_name 中无效的标识符(字符,数字,下划线,并且不以下划线或数字开头…
---恢复内容开始--- python基础系列教程——Python的安装与测试:python的IDE工具PyDev和pycharm,anaconda 从头开启python的开发环境搭建.安装比较简单,很多步骤就是直接next下来就可以,主要是配置好环境变量. 一. 如何安装Python 在https://www.python.org/下载安装包. 下载下来一个exe文件,直接双击运行. 选择Install Now,立即安装. 配置环境变量:右键开始——控制面板——系统——高级系统配置——环境变量…