Python – 从元组记录列表中提取后元素
在使用元组时,我们将不同的数据存储为不同的元组元素。有时,需要从元组中打印特定信息,例如后索引。例如,一段代码只希望打印所有学生数据的名称。让我们讨论一些如何解决这个问题的方法。
方法#1:使用列表推导
列表推导是解决此问题的最简单方法。我们可以只迭代所有索引中的后索引值并将其存储在一个列表中,然后打印它。
# Python3 code to demonstrate
# Rear element extraction from Records
# using list comprehension
# initializing list of tuples
test_list = [(1, 'Rash', 21), (2, 'Varsha', 20), (3, 'Kil', 19)]
# printing original list
print ("The original list is : " + str(test_list))
# using list comprehension to get names
# Rear element extraction from Records
res = [lis[-1] for lis in test_list]
# printing result
print ("List with only rear tuple element : " + str(res))
输出 :
The original list is : [(1, 'Rash', 21), (2, 'Varsha', 20), (3, 'Kil', 19)]
List with only rear tuple element : [21, 20, 19]
方法 #2:使用map() + itemgetter()
map()
与itemgetter()
结合可以以更简单的方式执行此任务。 map() 映射我们使用itemgetter()
访问的所有元素并返回结果。
# Python3 code to demonstrate
# Rear element extraction from Records
# using map() + itergetter()
from operator import itemgetter
# initializing list of tuples
test_list = [(1, 'Rash', 21), (2, 'Varsha', 20), (3, 'Kil', 19)]
# printing original list
print ("The original list is : " + str(test_list))
# using map() + itergetter() to get names
# Rear element extraction from Records
res = list(map(itemgetter(-1), test_list))
# printing result
print ("List with only rear tuple element : " + str(res))
输出 :
The original list is : [(1, 'Rash', 21), (2, 'Varsha', 20), (3, 'Kil', 19)]
List with only rear tuple element : [21, 20, 19]