【发布时间】:2023-03-14 19:18:01
【问题描述】:
我有元组列表,我想学习新的,我想知道如何从这个元组列表中优雅地整理项目并删除所有重复项,就像重复项 (6, 1) 和 (1, 6) 一样彼此相等。所以我需要最少的组合。
lst = [(1, 1), (4, 1), (1, 4), (3, 1), (1, 3), (9, 1), (1, 9), (6, 1), (1, 6), (5, 1), (1, 5)]
我试过了:
res = set([tuple(sorted(list(x))) for x in lst])
它确实有效,但它是某种意大利面条式编程。还有更优雅的方式吗?
【问题讨论】:
-
我不明白你想要达到什么目的。你能显示预期的输出吗?
-
如果要缩短代码,我认为这个sn-p可以达到同样的效果:set([tuple(sorted(x)) for x in lst])
标签: python list filter tuples combinations