from operator import itemgetter
# 或import operator(调用时需要用operator.itemgetter)
作用是获取对象的哪些位置的数据,参数即为代表位置的序号值
a = [1,2,3]
b = [[1,2,3],[4,5,6],[7,8,9]]
get_1 = itemgetter(1)
get_1(a) # 2
get_1(b) # [4,5,6]
如果是获取对象1,2位置上的数据
get_12 = itemgetter(1,2)
get_12(a) #[2,3]
get_12(b) #[[4,5,6],[7,8,9]]
b = [[1,2,3],[4,5,6],[7,8,9]]
b_21 = []
get_21 = itemgetter(2,1)
for temp in b:
tep = get_21(temp)
b_21.append(tep)
# [tep = get_21(temp) for temp in b]
b_21 # [(3, 2), (6, 5), (9, 8)]
也可以排序
gameresult = [['Bob',95.0,'A'],['Alan',86.0,'C'],['Mandy',83.5,'A'],['Rob',89.3,'E']]
sorted(gameresult, key = itemgetter(2))
结果为:
[['Bob', 95.0, 'A'],
['Mandy', 83.5, 'A'],
['Alan', 86.0, 'C'],
['Rob', 89.3, 'E']]
sorted(gameresult, key = itemgetter(2,1))
[['Mandy', 83.5, 'A'],
['Bob', 95.0, 'A'],
['Alan', 86.0, 'C'],
['Rob', 89.3, 'E']]