Python函数:使用zip()将两个列表合并为一个
发布时间:2023-06-24 15:54:42
在Python中,使用zip函数可以将两个列表合并成一个。zip函数可以将两个列表的元素一一对应,返回一个迭代器,可以通过list函数转化为列表。zip函数可以同时合并多个序列。
例如,我们有两个列表,一个是姓名列表,一个是年龄列表:
names = ['Tom', 'Jerry', 'Mickey'] ages = [22, 25, 18]
我们可以使用zip()函数将它们合并为一个列表:
result = list(zip(names, ages)) print(result)
输出结果为:
[('Tom', 22), ('Jerry', 25), ('Mickey', 18)]
可以看到,zip函数返回了一个包含元组的列表,每个元组包含了两个列表中相同位置的元素。
如果两个列表的长度不一致,那么zip函数会以短的列表为准,多余的元素会被忽略掉。例如:
names = ['Tom', 'Jerry', 'Mickey'] ages = [22, 25, 18, 30] result = list(zip(names, ages)) print(result)
输出结果为:
[('Tom', 22), ('Jerry', 25), ('Mickey', 18)]
因为年龄列表中包含了一个多余的元素,所以被忽略了。
除了合并两个列表,zip函数还可以合并多个序列。例如:
names = ['Tom', 'Jerry', 'Mickey'] ages = [22, 25, 18] genders = ['male', 'male', 'female'] result = list(zip(names, ages, genders)) print(result)
输出结果为:
[('Tom', 22, 'male'), ('Jerry', 25, 'male'), ('Mickey', 18, 'female')]
这个例子中,我们使用了三个列表,分别是姓名、年龄和性别,通过zip函数将它们合并为一个包含三个元素的元组。
需要注意的是,zip函数返回的是一个迭代器,如果需要转化为列表,需要显式地使用list函数转化。
总结一下,使用zip函数可以将两个列表合并成一个,同时也可以合并多个序列。需要注意的是,zip函数返回的是一个迭代器,如果需要转化为列表,需要使用list函数转化。如果两个序列的长度不一致,多余的元素会被忽略。
