a = [['Rostock', 'Lubeck'], ['Rostock', 'Hamburg'], ['Rostock', 'Bremen'], ['Rostock', 'Hannover']]
result = []
for x in a:
for y in x:
if y not in result:
result.append(y)
>>> a = [['Rostock', 'Lubeck'], ['Rostock', 'Hamburg'], ['Rostock', 'Bremen'], ['Rostock', 'Hannover']]
>>> from collections import OrderedDict
>>> list(OrderedDict.fromkeys(y for x in a for y in x))
['Rostock', 'Lubeck', 'Hamburg', 'Bremen', 'Hannover']
或等效地:
>>> from itertools import chain
>>> list(OrderedDict.fromkeys(chain.from_iterable(a)))
a = [['Rostock', 'Lubeck'], ['Rostock', 'Hamburg'], ['Rostock', 'Bremen'], ['Rostock', 'Hannover']]
print list(set(y for x in a for y in x)) # prints ['Rostock', 'Hannover', 'Bremen', 'Lubeck', 'Hamburg']
我觉得这更具可读性:
这是输出:
假设秩序很重要
或等效地:
如果顺序不重要-使用集合:
相关问题 更多 >
编程相关推荐