学习Python之函数zip、sorted
1、zip()
作用:将多个可迭代对象中的元素压缩在一起,将对象中对应的元素打包组成一个元组
示例:
#(1) 压缩字符和列表
x = 'abcde'
y = [2, 3, 4, 1, 6]
xy = list(zip(x, y))
print(xy)
#输出:[('a', 2), ('b', 3), ('c', 4), ('d', 1), ('e', 6)]
#(2) 最终结果中包含的元素的个数取决于所有参数序列或可迭代对象中最短的那一个
x = 'abcde'
y = [2, 3, 4, 1]
xy = list(zip(x, y))
print(xy)
#输出:[('a', 2), ('b', 3), ('c', 4), ('d', 1)]
#(3) zip对象只能遍历一遍
x = zip('abcd', [1, 2, 3, 4)]
list[x]
#输出:[('a', 1), ('b', 2), ('c', 3), ('d', 4)]
list[x]
#输出:[]
#(4) *zip(),反压缩即解压
(x, y) = zip(*xy)
print(x, y)
#输出:('a', 'b', 'c', 'd') (2, 3, 4, 1)
2、sorted()
作用:对所有可迭代对象进行排序
示例:
#(1) 默认从小到大排序
x = [2, 4, 6, -1, 3, 7]
y = sorted(x)
print(y)
#输出:[-1, 2, 3, 4, 6, 7]
#(2) 指定条件排序
x = [2, 4, 6, -1, 3, 7]
y = sorted(x, key=lambda b:abs(b), reverse=True)# 按绝对值大小降序排列(reverse=True,反之升序)
print(y)
#输出:[7, 6, 4, 3, 2, -1]