给定一个元组列表,例如
[('a','b','4'),('c','d','9'),('e','f','2')]
每个元组的第三个元素总是整数的字符串值。
我想使用 csv.writerow() 将每个元组写为 csv 的一行。 在我这样做之前,我想重新排序元组(最好是通过覆盖现有列表或创建一个新列表),以便它们按照每个的第三个元素的整数值的降序写入,例如
c,d,9
a,b,4
e,f,2
我正在尝试在列表理解中想象某种多重 if/else 组合,但肯定会有更简单的方法吗?
请您参考如下方法:
sorted 函数(或 list 方法 sort)采用可选参数 reverse 以允许您进行排序按降序排列,key 允许您指定排序依据。
l = [('a','b','4'),('c','d','9'),('e','f','2')]
l.sort(key=lambda x: int(x[2]), reverse=True)
按照您想要的顺序为您提供列表。
