我正在尝试获取每个列表中第二个值的列表。
例如“val2”:

['xe-1/2/1.322','xe-9/1/2']

原始列表如下:
l = [('val1', 'ae4.0'),
('val1', 'xe-9/1/7.0'),
('val1', 'xe-1/2/1.1151'),
('val2', 'xe-1/2/1.322'),
('val2', 'xe-9/1/2'),
('val3', 'xe-9/1/2'),
('val3', 'xe-1/2/1'),
('val3', 'xe-1/2/1.748')]

最佳答案

如果元组中的第二个元素与val2匹配,则可以使用列表理解并返回元组中的第二个元素:

l = [('val1', 'ae4.0'), ('val1', 'xe-9/1/7.0'), ('val1', 'xe-1/2/1.1151'),
     ('val2', 'xe-1/2/1.322'), ('val2', 'xe-9/1/2'), ('val3', 'xe-9/1/2'),
     ('val3', 'xe-1/2/1'), ('val3', 'xe-1/2/1.748')]

[i[1] for i in l if i[0] == 'val2']
# ['xe-1/2/1.322', 'xe-9/1/2']

关于python - 根据第一个值从元组列表中获取值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55258608/

10-12 16:45