【发布时间】:2019-02-01 00:45:02
【问题描述】:
我有清单
a = [([4, 7, 9], [3], 5.5), ([2, 5, 8], [3], 5.5), ([3], [4, 7, 9], 5.5), ([3], [2, 5, 8], 5.5)]
我正在尝试删除具有相同列表组合的重复元组。
例如,([4, 7, 9], [3], 5.5) 和 ([3], [4, 7, 9], 5.5) 是相同的。因此删除重复元组后的输出将如下所示:
a = [([4, 7, 9], [3], 5.5), ([2, 5, 8], [3], 5.5)]
允许元组中列表的任何顺序。
编辑(基于@DYZ 的反馈): 不允许完全扁平化的元组。例如,(4,7,9,3,5.5) 是不允许的。输出的格式仍应为:([list 1], [list2], constant)。
我尝试改编Remove duplicated lists in list of lists in Python中相关的一个方法,但是我已经陷入了心理僵局..
是否可以在链接的问题中进一步修改代码,或者有更有效的方法来做到这一点?
【问题讨论】:
-
@BercoviciAdrian 你这是什么意思?
-
是否允许在结果列表中包含完全扁平化的元组? (没有任何子列表。)例如,
(4, 7, 9, 3, 5.5). -
@DYZ 如果您的意思是 (4,7,9,3,5.5),例如那么不,这是不允许的。输出的格式仍应为
([list 1], [list2], constant) -
您可能希望将此约束添加到问题中。
-
@DYZ 感谢您的反馈!我马上加进去
标签: python python-3.x list duplicates tuples