zip 语法:
zip([iterable, ...])
参数说明:
iterable – 一个或多个迭代器,利用 * 号操作符,可以将元组解压为列表
返回值
返回一个对象
zip 例子:
a = ["flower", "flowa", "flqwe"]
b = ["flower", "flowa", "flqwe"]
print(list(zip(a,b)))
print(list(zip(*zip(a,b))))
print(list(zip(['xxxxxx'],['yyyyyy'])))
print(list(zip('xxxxxx','yyyyyy')))
print(list(zip('xxxxxx')))
执行结果:
说明:
zip参数可以是一个字符串,一个列表,多个列表,可迭代就行了实现公共前缀:
a = ["flower", "flowa", "flqwe"]
print(list(zip(*a)))
s = ''
for i in list(zip(*a)):
i = set(i)
if len(i) == 1:
s+=i.pop()
else:
break
print('s is {}'.format(s))
遍历每个元组,去重后如果长度为1,则说明字母相同
当然zip函数可以用来做矩阵的转置:
a = [(1,2),(3,4),(5,6)]
print(list(zip(*a)))
运行结果