- 在线时间
- 478 小时
- 最后登录
- 2026-4-9
- 注册时间
- 2023-7-11
- 听众数
- 4
- 收听数
- 0
- 能力
- 0 分
- 体力
- 7788 点
- 威望
- 0 点
- 阅读权限
- 255
- 积分
- 2922
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 1171
- 主题
- 1186
- 精华
- 0
- 分享
- 0
- 好友
- 1
该用户从未签到
 |
计数器(Counter)3 W1 f# _) y, B* a
dict的子类,计算可hash的对象" M2 ?% p$ r2 Z$ x' @
请点击Counter3 }/ g- {- Z" T3 ]; z
Counter()主要功能:可以支持方便、快速的计数,将元素数量统计,然后计数并返回一个字典,键为元素,值为元素个数。
* E* P% N3 t) K# L - from collections import Counter9 F& y9 i. w: F* E# V# r& K0 G
( J1 G e4 j- ^\" @( ?. P- list1 = ["a", "a", "a", "b", "c", "c", "f", "g", "g", "g", "f"]
' D1 r' B/ _! d+ I4 K\" x8 g- C - dic = Counter(list1)/ z4 r\" J3 }( N1 U. K3 t4 \
- print(dic). H) q2 B- E8 X! C! P& i3 v
- #结果:次数是从高到低的) ^3 x0 n# I) U; ^
- #Counter({'a': 3, 'g': 3, 'c': 2, 'f': 2, 'b': 1})
9 @0 N% s2 m, F+ r: \ - + g- w+ G; {7 ~6 G M! u
- print(dict(dic))
+ t\" `. `: g+ X8 \4 B: H$ y' @ - #结果:按字母顺序排序的
+ U: z/ s- z K, O' ? - #{'a': 3, 'b': 1, 'c': 2, 'f': 2, 'g': 3}7 _$ D6 `! f* @3 Y
# t' F/ Y0 y) E+ w3 q- print(dic.items()) #dic.items()获取字典的key和value0 q% ]8 l1 d% Q\" O9 E% h6 `
- #结果:按字母顺序排序的9 l9 _! g, Y) M2 |
- #dict_items([('a', 3), ('b', 1), ('c', 2), ('f', 2), ('g', 3)])
8 w2 h6 H5 v- }$ H8 d: b: K\" H; e - 6 F/ T; k. K) D+ C; s$ h2 f
- print(dic.keys())
! x3 x& t, W9 Q4 ^) V( Z: ^; l9 V - #结果:
3 W5 o& T6 S+ h2 f, D$ V5 l - #dict_keys(['a', 'b', 'c', 'f', 'g'])0 l5 F( ~/ |9 O# }4 }8 @8 Q/ E
( [0 t4 V! ]3 a3 u- print(dic.values())% ^, n5 w4 X6 r) Z0 D
- #结果:/ u+ Q6 q- j1 i# w
- #dict_values([3, 1, 2, 2, 3])
C, u O, u: M5 T1 j: g
4 d2 q; V& U, z& V! U+ t' {# X/ b' b- print(sorted(dic.items(), key=lambda s: (-s[1])))$ g1 j; O5 F\" R7 r% ~7 H
- #结果:按统计次数降序排序5 }* J% Z& l9 e7 v3 d
- #[('a', 3), ('g', 3), ('c', 2), ('f', 2), ('b', 1)]
- b: J( X5 `7 {2 x2 \9 ^ - # K$ a$ j/ V5 J9 f- V$ P
- for i, v in dic.items():+ b( p0 t0 Y h
- if v == 1:5 T) f4 S, A9 V# |/ m3 E! U5 N
- print(i): I) W. V7 z9 U* [
- #结果:- M\" t' \6 Z# D' Q9 `, W
- #b
_) W! M5 X0 P, [
复制代码 6 u2 i8 l5 x3 T: R; B- g
- h) C; |- T4 b" {. p3 ~! ? |
zan
|