python模块学习之数据结构--collections.counter

python包含非常多的标准数据结构,如list,tuple,dict 和set 都是内置类型。除了这些基本的内置类型。python的collections模块还很多种数据结构实现。

collections----容器数据类型模块

python版本:2.6以及以后版本

collections模块包含除内置內型list,dict 和tuple之外的数据类型。

1.1 Counter

1.1.1 Counter作为一个容器(啥是容器呢,能装入不同的对象就是容器),可以跟踪相同数据的次数。

初始化输入对象可以为:

1 可以是列表

2  字典

3  关键参数的表达式

代码:

import collections

print collections.Counter(list[‘abcdaa‘])
print collections.Counter({‘a‘:1,‘b‘:2,‘c‘:3})
print collections.Counter(a=2,b=3,c=1)
      结果为:

1.1.2 构造一个Counter对象(这个类似一个字典对象):

1.1.3 访问每一个元素的次数:

#!/usr/bin/env python
#coding=utf8

import collections

c = collections.Counter(‘abcdaab‘)
for letter in ‘abcde‘:
    print ‘%s:%d‘ %(letter,c[letter])

只要记住这个counter返回的也是一个类似字典的对象就ok了,其他的方式可以自己慢慢在工作中探索学习。

时间: 2024-10-10 06:55:39

python模块学习之数据结构--collections.counter的相关文章

python模块学习(2)——re模块

正则表达式并不是python的一部分,正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大.得益于这一点,在提供了正则表达式的语言里,正则表达式的语法都是一样的,区别只在于不同的编程语言实现支持的语法数量不同:但不用担心,不被支持的语法通常是不常用的部分.如果已经在其他语言里使用过正则表达式,只需要简单看一看就可以上手了. 下图展示了使用正则表达式进行匹配的流程:  正则表达式的大致匹配过程是:依次拿出表达式和文本中的字符

Python 模块学习

模块学习: http://wsyht90.blog.51cto.com/9014030/1845737 1.getpass 2.os 3.sys 4.subprocess 5.hashlib 6.json 7.pickle 8.shutil 9.time 10.datetime 11.re 12.random 13.configparser 14.traceback 15.yaml 16.itertools 17.logging 18.urllib.urllib2 19.paramiko ###

【Python模块学习】3、random模块

参考:1.官网:2.别人的 以下是random模块的方法: 1 random.seed(a=None, version=2) # 初始化伪随机数生成器.如果未提供a或者a=None,则使用系统时间为种子.如果a是一个整数,则作为种子. 2 random.getstate() # 返回一个当前生成器的内部状态的对象 3 random.setstate(state) # 传入一个先前利用getstate方法获得的状态对象,使得生成器恢复到这个状态. 4 random.getrandbits(k) #

python模块学习第 0000 题

将你的 QQ 头像(或者微博头像)右上角加上红色的数字,类似于微信未读信息数量那种提示效果. 类似于图中效果: 好可爱>%<! 题目来源:https://github.com/Yixiaohan/show-me-the-code,感谢@史江歌以及其他人,让我找到了一个系统的学习python模块的好地方. 看到这个题目的第一印象是——额,难不成让我找qq的API,然后在手机APP的壁纸上提示QQ消息?好吧,我承认自己想复杂了,所以第二个想法就来了.因为博主最近学习比较杂乱无章,所以学习了tkin

Python模块学习

python模块-time python模块-datetime

[原创]Python入门学习之数据结构

Preamble: 在未学习python之前,使用c/c++已有5年之久.虽对python刚学习,但也领略到了python的强大之处,开拓了自己的视野和思维. 一 变量 python中的变量与c/c++中的变量不同.在c/c++中,变量的本质就是内存的地址,但在python中,当我们定义一个变量并赋值时,如下: a='ABC' python的解释器干了两件事情:(1)在内存中创建一个‘ABC’的字符串:(2)在内存中再创建一个名为a的变量,并把它指向‘ABC’.也就是说,对于python占用的内

【Python模块学习】4、collections模块

collections是Python内建的一个集合模块,提供了许多有用的集合类. 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 creating a single view of multiple

Python模块学习笔记— —random

Python中的random模块用于生成随机数. random.random 函数原型 random.random() 生成一个范围在[0,1)的随机浮点数. import random print random.random() random.uniform 函数原型 random.uniform(a,b) 生成一个指定范围内的随机浮点数,两个参数一个是上限,一个是下限.如果a > b,则生成的随机数范围在[b,a].否则, 范围在[a,b]. import random print rand

【Python模块学习】sys模块

sys模块的操作如下: 1 sys.argv # 实现从程序外部向程序传递参数. 2 sys.exit([arg]) # 程序中间的退出,arg=0为正常退出. 3 sys.getdefaultencoding() # 获取系统当前编码,一般默认为ascii. 4 sys.setdefaultencoding() # 设置系统默认编码,执行dir(sys)时不会看到这个方法,在解释器中执行不通过,可以先执行reload(sys),在执行 setdefaultencoding('utf8'),此时