python - 检测重复元素python
问题描述
我不断地从服务器获取数据,并且可以通过以下代码行接收数据:
id, type, value = getId(payload)
之后,我想通过以下方式将它们写入文件:
out.write(str(id) + ";" + str(type) + ";" + str(value) + "\n")
现在的情况是,同一个 id 可以出现多次,但值将是不同的。因此,我想将 out.write 扩展为以下方式,即在右侧添加不同的值,但仍引用相同的 id:
out.write(str(id) + ";" + str(type) + ";" + str(value) + ";" + str(value1) + ";" + str(value2) + "\n")
有谁知道如何在python中做到这一点?
解决方案
您想保留一个字典,其中字典中的键是您id
的,值是 a set
,您可以添加所有值
from collections import defaultdict
results = defaultdict(set)
id, type, value = getId(payload)
results[id].add(value)
然后,该字典将保留每个id
.
应该注意的是,使用集合会删除重复的计数,所以如果你想保留每个值,包括重复,请使用list
a
推荐阅读
- c++ - GCP 或 AWS 是否支持 C++ 和 GUI 应用程序开发?
- javascript - 动态使用 Font-awesome 图标不适用于 SVG 和 JS 实现
- c# - ASP.NET Core windows 计划任务
- php - PHP JQuery post 2 variables
- delphi - How can I save a WhatsApp session using Delphi and Chromium?
- c++ - 混合来自不同 MSVC 的 DLL 时的不同行为
- gradle - gradle grails - 任务“:bootRun”执行失败
- android - 从 build.phonegap.com 下载速度慢
- excel - Primefaces DataExporter - XLSX 和 XLSXSTREAM
- java - 使用 jdbc ftp 驱动程序连接到 ftp 服务器