python中对列表的元素进行计数
001、方法1 借助字典统计
[root@pc1 test2]# ls test.py [root@pc1 test2]# cat test.py ## 测试程序 #!/usr/bin/env python3 # -*- coding: utf-8 -*- list1 = ["aa", "bb", "aa", "cc", "aa", "dd", "dd", "ee"] ## 测试列表 dict1 = {} ## 空字典 for i in list1: if i not in dict1: dict1[i] = 1 else: dict1[i] += 1 for i,j in dict1.items(): print(i, j) [root@pc1 test2]# python3 test.py ## 统计计数 aa 3 bb 1 cc 1 dd 2 ee 1
002、方法2,借助内置函数
a、
[root@pc1 test2]# ls test.py [root@pc1 test2]# cat test.py ## 测试程序 #!/usr/bin/env python3 # -*- coding: utf-8 -*- list1 = ["aa", "bb", "aa", "cc", "aa", "dd", "dd", "ee"] list2 = [] for i in list1: if i not in list2: list2.append(i) for i in list2: print(i, list1.count(i)) [root@pc1 test2]# python3 test.py ## 执行程序 aa 3 bb 1 cc 1 dd 2 ee 1
b、如果输出顺序无要求,可以使用集合去重复
[root@pc1 test2]# ls test.py [root@pc1 test2]# cat test.py ## 测试程序 #!/usr/bin/env python3 # -*- coding: utf-8 -*- list1 = ["aa", "bb", "aa", "cc", "aa", "dd", "dd", "ee"] for i in set(list1): ## 集合去重复 print(i, list1.count(i)) [root@pc1 test2]# python3 test.py ## 执行程序 aa 3 cc 1 ee 1 bb 1 dd 2
003、方法3
借助Counter 模块
[root@pc1 test2]# ls test.py [root@pc1 test2]# cat test.py ## 测试程序 #!/usr/bin/env python3 # -*- coding: utf-8 -*- from collections import Counter list1 = ["aa", "bb", "aa", "cc", "aa", "dd", "dd", "ee"] dict1 = dict(Counter(list1)) print(dict1) [root@pc1 test2]# python3 test.py ## 执行程序 {'aa': 3, 'bb': 1, 'cc': 1, 'dd': 2, 'ee': 1}
。
分类:
python
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
2022-09-30 linux 中如何升级glibc 版本
2022-09-30 linux中查看GLIBC版本
2022-09-30 python3 ./gen_ldc_version_info.py > utils/ldc_version_info_.d make: *** [utils/ldc_version_info_.d] Error 1
2022-09-30 centos7中升级make到最新版本
2022-09-30 centos7如何升级GCC编辑器、G++编译器, 安装多个版本及切换
2021-09-30 c primer plus 12 编程练习
2020-09-30 beagle 填充 Exception in thread "main" java.lang.IllegalArgumentException: NaN