1
元組的列表:映射使用鑑於元組的以下列表的字典
y = [(1, 2), (3, 5)]
和以下詞典:
d = {1: 'a', 2: 'c', 3: 'n', 4: 'y', 5: 'u'}
是有映射y的簡單的方法到[('a', 'c'), ('n', 'u')]
?
元組的列表:映射使用鑑於元組的以下列表的字典
y = [(1, 2), (3, 5)]
和以下詞典:
d = {1: 'a', 2: 'c', 3: 'n', 4: 'y', 5: 'u'}
是有映射y的簡單的方法到[('a', 'c'), ('n', 'u')]
?
如何:
>>> y = [(1, 2), (3, 5)]
>>> d = {1: 'a', 2: 'c', 3: 'n', 4: 'y', 5: 'u'}
>>>
>>> [(d[k], d[v]) for k,v in y]
[('a', 'c'), ('n', 'u')]
>>>
如果y的元素不能保證2元組,你可以使用:
>>> d = {1: 'a', 2: 'c', 3: 'n', 4: 'y', 5: 'u'}
>>> y = [(1, 2), (3, 5, 4)]
>>> [tuple(d[i] for i in tup) for tup in y]
[('a', 'c'), ('n', 'u', 'y')]
@phihag - 謝謝你,我正要使相同的編輯。 – FogleBird
@ g.d.d.c簡化對tupels元素的訪問。 tupel [x]'幾乎總是一種不方便的方式來訪問tupel的元素 – phihag
@phihag - 謝謝!我總是忘記打開內部元組,但是這樣做會清除一些內部元組。 :) –