- 在线时间
- 479 小时
- 最后登录
- 2026-4-13
- 注册时间
- 2023-7-11
- 听众数
- 4
- 收听数
- 0
- 能力
- 0 分
- 体力
- 7789 点
- 威望
- 0 点
- 阅读权限
- 255
- 积分
- 2922
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 1171
- 主题
- 1186
- 精华
- 0
- 分享
- 0
- 好友
- 1
该用户从未签到
 |
计数器(Counter)1 Y4 D% f5 }* I# A
dict的子类,计算可hash的对象( W! v1 J: `+ Y
请点击Counter
* i, `/ R# i+ U5 j% h Counter()主要功能:可以支持方便、快速的计数,将元素数量统计,然后计数并返回一个字典,键为元素,值为元素个数。. u$ Q% O! F5 U/ n
- from collections import Counter
a* o; x0 Z1 S8 K1 w/ M - & o- F- y% L, z
- list1 = ["a", "a", "a", "b", "c", "c", "f", "g", "g", "g", "f"]
\" S9 w, _7 k( k - dic = Counter(list1)
4 Q$ p# i: w- f, k* W/ ] - print(dic)
3 y2 h5 n/ D% s Q0 j\" r4 e( R/ x - #结果:次数是从高到低的! u+ p\" |2 @, _( M0 }\" _3 d
- #Counter({'a': 3, 'g': 3, 'c': 2, 'f': 2, 'b': 1})
/ e\" w0 b( ^4 U2 }) `# j0 S
& f5 P- M# Y7 h( `- print(dict(dic))
0 g$ {6 G$ Y+ Y2 ]. N\" S% ]# F - #结果:按字母顺序排序的
# J! Z6 Y5 Q W9 V+ i - #{'a': 3, 'b': 1, 'c': 2, 'f': 2, 'g': 3}
; D8 z% D2 r. j- x) G$ ~7 E' k7 y - + J- B) w\" b1 |: ?/ q\" `
- print(dic.items()) #dic.items()获取字典的key和value( f2 |2 P5 ^5 t$ @. r& N
- #结果:按字母顺序排序的' q l, ]7 o( N. X9 T
- #dict_items([('a', 3), ('b', 1), ('c', 2), ('f', 2), ('g', 3)])
5 T# q. I. k' S& ?8 x( ^ - 8 f* O% n) z\" f8 n; {
- print(dic.keys())
\" H5 u- ]$ m* L4 R5 }, a - #结果:
* \, u9 l4 V. C3 k% I - #dict_keys(['a', 'b', 'c', 'f', 'g'])' D- L3 P2 p& J2 N2 A
- , o8 ^4 @- N. i, a! J) i1 p
- print(dic.values())! S( k# `1 k) M f6 F
- #结果:
# [6 T2 q# y$ p\" ~0 h8 t7 ] - #dict_values([3, 1, 2, 2, 3])9 F/ | J, C3 ]# h' k: ^
- 7 T+ C4 w+ C8 ]1 F
- print(sorted(dic.items(), key=lambda s: (-s[1])))5 _4 B# o5 N2 A. h\" K7 C4 _& C4 s
- #结果:按统计次数降序排序
' ^# b6 g1 p, F' O\" P3 [8 I' ~5 n% R - #[('a', 3), ('g', 3), ('c', 2), ('f', 2), ('b', 1)]& G* o. b! i$ E$ h
- * T/ r\" t' r/ g3 l! d
- for i, v in dic.items():
+ b; a; U) t. k# N+ [ - if v == 1:
9 d- F! M5 C, [) v& Z- } - print(i), y4 V9 [/ H2 a5 T' r. s. |1 R
- #结果:3 }. {$ u0 S( j, _ p\" \6 B8 b
- #b5 Q/ h\" E& z; J* m. J+ W% D
复制代码 . Q8 `- C. C6 ?: w J6 @
7 }, T }% r" m1 n! C
|
zan
|