Ответы до сих пор не сохраняют порядок вообще, если это важно, чтобы вы затем использовать это:
>>> from collections import OrderedDict
>>> items = [('a', 'b'), ('b', 'a'), ('c','d')]
>>> OrderedDict((frozenset(x), x) for x in items).values()
[('b', 'a'), ('c', 'd')]
Это сохраняет порядок, и вы сказали, что вы можете удалить один из дубликатов (который он держит последняя)
также ответы, приведенные до сих пор также изменять элементы:
>>> set(tuple(sorted(t)) for t in [('b', 'a'), ('c', 'd')])
set([('a', 'b'), ('c', 'd')])
>>> set(frozenset(tuple) for tuple in [('b', 'a'), ('c', 'd')])
set([frozenset(['a', 'b']), frozenset(['c', 'd'])])
Это будет держать элементы того же
Вы не указали, если заказ важен – jamylak