2011-07-15 54 views

回答

11

如何:

>>> 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')] 
>>> 
+2

@phihag - 謝謝你,我正要使相同的編輯。 – FogleBird

+0

@ g.d.d.c簡化對tupels元素的訪問。 tupel [x]'幾乎總是一種不方便的方式來訪問tupel的元素 – phihag

+0

@phihag - 謝謝!我總是忘記打開內部元組,但是這樣做會清除一些內部元組。 :) –

2

如果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')]