Python进阶学习(2)

如何统计序列中元素的频度

import random
import collections
# 产生随机数字的序列
numbers = [random.randint(1,20) for _ in range(60)]
print(numbers)
# 给出整个列表中数值的统计信息
counter = collections.Counter(numbers)
print(counter)
counter_dict = dict(counter)        #将counter 的统计结果字典化
print(counter_dict)

result = sorted(counter_dict.items(),key= lambda item:item[1],reverse=True) # 对字典的键值对中的值进行排序
print(result)

如何快速找到多个字典中的公共键

import random
from functools import reduce

# 随机产生几个字典

d1 = {x: random.randint(1,4) for x in random.sample('abcdef',random.randint(1,5))}
d2 = {x: random.randint(1,4) for x in random.sample('abcdef',random.randint(1,5))}
d3 = {x: random.randint(1,4) for x in random.sample('abcdef',random.randint(1,5))}
d4 = {x: random.randint(1,4) for x in random.sample('abcdef',random.randint(1,5))}

# 将这些字典的信息都放入一个列表中
lst = [d1,d2,d3,d4]

print(lst)

# 对于列表中的每一项元素,都进行取出他们所有 key 的操作
h = map(lambda x: x.keys(),lst)     # 对列表中所有的字典都采取取其键的操作

result = reduce(lambda x, y: x & y, h)  # 然后对每一个字典中所有的键的集合们从左到右进行交集运算
print(list(result))

如何让字典保持有序

import collections

diction = collections.OrderedDict()
diction['a'] = 1
diction['b'] = 2
diction['c'] = 3

print(diction)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

暖仔会飞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值