python中的collections模块基本应用

# deque双向列表
from collections import deque
q = deque(['a', 'b', 'c'])
# print(q)
# 从右边增加值
q.append('x')
q.append('y')
# # 从右边删除值
q.pop()
q.pop()
# 从左边增值
q.appendleft('x')
q.appendleft('y')
# # 从左边删除
q.popleft()
q.popleft()
print(q)

 

# defaultdict
from collections import defaultdict

# 给字典添加key和对应的数据类型
my_dict = defaultdict(list)
# my_dict = defaultdict(str)
my_dict['key1']
my_dict['key2']
my_dict['key3']
print(my_dict)

# 把小于66的放到key1把大于66的放到key2
values = [11, 22, 33, 44, 55, 77, 88, 99, 90]
for val in values:
    if val > 66:
        my_dict['key1'].append(val)
    else:
        my_dict['key2'].append(val)
print(my_dict)


# 构建一个字典;字典的key 从1~100,对应的值都是666
# {1:666,2:666,3:666......}
# 第一种方法
dic = dict.fromkeys(range(1,101),666)
print(dic)

# 第二种方法
print({key:666 for key in range(1,101)})

# 第三种方法
def func():
    return 666
my_dict = defaultdict(func)
for i in range(1, 101):
    my_dict[i]
print(my_dict)

 

# 统计字符出现的次数并返回一个字典,字典的键为该字符,值为出现的次数
from collections import Counter
s1 = '电脑电脑sldfjslffdsaf'
# s1 = ['电脑', '电脑', '电脑', '电脑', '书']
c = Counter(s1)
print(c)
print(c['f'])
print(c['d'])
print(dict(c))

 

posted @ 2019-01-10 22:57  平平无奇小辣鸡  阅读(150)  评论(0)    收藏  举报