python模块之collections模块
2019-01-05 13:10:53来源:博客园 阅读 ()
计数器 Counter
-
计数元素迭代器 elements()
-
计数对象拷贝 copy()
-
计数对象清空 clear()
from collections import Counter
#import collections
d = Counter("abdadakdabfdj") #对值计数,返回一个对象
print(d, type(d)) #Counter({'a': 4, 'd': 4, 'b': 2, 'k': 1, 'f': 1, 'j': 1}) <class 'collections.Counter'>
print(list(d), type(d)) #['a', 'b', 'd', 'k', 'f', 'j'] <class 'collections.Counter'>
print(dict(d), type(d)) #{'a': 4, 'b': 2, 'd': 4, 'k': 1, 'f': 1, 'j': 1} <class 'collections.Counter'>
print(d.elements()) #elements()方法返回一个迭代器,内容为进行计数的元素
for i in d.elements():
print(i) # a a a a d d d d b b k f j
d1 = d.copy()
print(d1,type(d1)) #Counter({'a': 4, 'd': 4, 'b': 2, 'k': 1, 'f': 1, 'j': 1}) <class 'collections.Counter'>
d2 = d.subtract("aaa")
print(d2,type(d2))
d3 = d.update('aaa')
print(d3,type(d3))
d4 = d.pop("j")
print(d4,d) # 1 Counter({'a': 4, 'd': 4, 'b': 2, 'k': 1, 'f': 1})
d.clear() # clear()方法清空计数的元素\
print(d) # Counter()
有序字典 OrderedDict (对字典的补充,可以记住字典元素添加的顺序)
from collections import OrderedDict order_dict = OrderedDict() print(order_dict,type(order_dict)) order_dict["c"] = 94 order_dict["b"] = 92 order_dict["d"] = 95 order_dict["a"] = 90 print(order_dict,type(order_dict)) #返回有序字典对象,OrderedDict([('c', 94), ('b', 92), ('d', 95), ('a', 90)]) <class 'collections.OrderedDict'> print(dict(order_dict),type(order_dict))#{'c': 94, 'b': 92, 'd': 95, 'a': 90} <class 'collections.OrderedDict'> print(list(order_dict),type(order_dict))#['c', 'b', 'd', 'a'] <class 'collections.OrderedDict'> print(order_dict.popitem()) #提取出字典的最后一个键值对 ('a', 90) print(order_dict) #OrderedDict([('c', 94), ('b', 92), ('d', 95)]) print(order_dict.pop("b")) #提取出字典指定键对应的值 print(order_dict) #OrderedDict([('c', 94), ('d', 95)]) order_dict.move_to_end("c") #将指定的键值对移动到最后 print(order_dict) #OrderedDict([('d', 95), ('c', 94)])
默认字典 defaultdict,(指定字典值的类型)
from collections import defaultdict
default_dict = defaultdict(list) # 指定字典的值类型为列表
print(default_dict,type(default_dict)) #defaultdict(<class 'list'>, {}) <class 'collections.defaultdict'>
for i in range(10):
default_dict["a"].append(i)
print(default_dict) #defaultdict(<class 'list'>, {'a': [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]})
可命名元组 namedtuple (给元组对应的值起个对应的名字,相当于字典)
from collections import namedtuple
tuple1 = namedtuple("tuple_name",["name","age","school","adress"])
print(tuple1)
tuple1 = tuple1("xu",20,"jinggangshan","jiangxi")
print(tuple1.name)
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- python3基础之“术语表(2)” 2019-08-13
- python3 之 字符串编码小结(Unicode、utf-8、gbk、gb2312等 2019-08-13
- Python3安装impala 2019-08-13
- 小白如何入门 Python 爬虫? 2019-08-13
- python_字符串方法 2019-08-13
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash