3 回答

TA貢獻1836條經(jīng)驗 獲得超3個贊
dict.get與list comprehesion作為一起使用:
newlist = [namedict.get(value).split('\t',1)[1] for value in mylist]
print(newlist)
['Oluf\tBirkedal',
'Halvar\tByberg',
'Leif\tBach',
'Ayse\tBaltzersen',
'Anastasia\tBergli',
'Ronald\tAasberg',
'Elly\tDehli',
'Elizabeth\tAalberg',
'Lucas\tDrevland']

TA貢獻1811條經(jīng)驗 獲得超4個贊
如果 的值namedct本身就是字典、元組或命名元組,這會更方便。此外,如果您的鍵是從零開始的連續(xù)數(shù)字,則列表可能更合適,因此如下所示:
name_list = [
('male', 'Foo', 'Bar'),
('female', 'Spam', 'Baz'),
# ...
]
然后你可以mylist像這樣提取索引的值:
[name_list[i][1:] for i in mylist]
如果要保留制表符:
['\t'.join(name_list[i][1:]) for i in mylist]
添加回答
舉報