python - 列表项的直方图
问题描述
我有一些列表如下:
list1 = ['a_1','a_2','b_17','c_19']
list2 = ['aa_1','a_12','b_15','d_39']
list3 = ['a_1','a_200','ba_1','u_0']
我希望根据标签生成直方图,忽略编号,即a
在所有列表中有 4 个条目,ba
1 个条目,u
有 1 个条目,依此类推。标签是来自特定文件夹的文件名,在添加数字之前,因此它是一个有限的已知列表。
如果没有一堆丑陋的循环,我怎样才能执行这样的计数?我可以unique
在这里使用吗?
解决方案
如果没有循环,您将无法实现它。但是您可以改为使用列表理解将其变成一行。像这样的东西。
list1 = ['a_1','a_2','b_17','c_19']
list2 = ['aa_1','a_12','b_15','d_39']
list3 = ['a_1','a_200','ba_1','u_0']
lst = [x.split('_')[0] for x in (list1 + list2 + list3)]
print({x: lst.count(x) for x in lst})
推荐阅读
- python - 连接不同格式的 YARA 规则
- javascript - 使用外部样式表将 HTML 导出到 DocX
- python-3.x - 迁移到 Tensorflow 2.0,训练现在在第三步后挂起
- javascript - 在特定情况下关闭模态bootstrap4
- javascript - 当没有更多数据要获取时反应本机 FlatList API 错误
- java - 我可以使用 Java 时间库来转换同时包含日期和时间的儒略日期吗?
- python - 带有列表值的 Pandas .loc 抛出“ValueError:长度必须匹配才能比较”错误
- javascript - 将实时更新值添加到回调中
- c# - 如何将 SpeechSynthesis 音频保存到 UWP 应用程序中的 Mp3 文件
- bash - 如何用 bash 脚本中的数据替换文本文件中的模板变量