如何解决从元组列表中删除相似性字符串
这是我的输入:
[(327,328,'Apache'),(327,329,'Apache Kafka'),(328,'Kafka')]
预期输出:
[(327,'Apache Kafka')]
实现结果的最佳方法是什么?
解决方法
最简单的方法,但可能不是最佳方法。
data = [(327,328,'Apache'),(327,329,'Apache Kafka'),(328,'Kafka')]
result = []
print(data)
for item1 in data:
hasSimilar = False
for item2 in data:
if item2==item1:
continue
if item1[2] in item2[2]:
hasSimilar = True
break
if not hasSimilar:
result.append(item1)
print(result)
输出:
[(327,'Kafka')]
[(327,'Apache Kafka')]
,
这是我的方法。让我知道是否有更好的方法来处理它。
data = [(327,'Kafka')]
uniques = [ i for i in data if not any(i[2].lower() in x[2].lower() and i[2].lower() != x[2].lower() for x in data)]
print(uniques)
,
data = [(327,'Kafka')]
result = []
for i in data:
for x in data:
if i[2] in x[2]:
if i == x:
break
result.append(x)
print(result)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。