Python_zip 函数:Python 中 zip() 函数的使用方法
发布时间:2023-09-12 04:49:53
Python 中的 zip() 函数用于将多个可迭代对象(例如列表、元组、字典等)中对应的元素打包成一个新的可迭代对象,返回一个由元组组成的迭代器。这个迭代器中的每个元组包含了来自每个可迭代对象的对应元素。
zip() 函数的基本语法如下:
zip(*iterables)
其中,iterables 可以是一个或多个可迭代对象,比如列表、元组、字典等。
下面是 zip() 函数的一些常见用法:
1. 打包列表或元组:
zip() 函数可以将多个列表或元组中对应位置的元素打包成一个元组。例如:
names = ['Alice', 'Bob', 'Charlie']
ages = [25, 30, 35]
for name, age in zip(names, ages):
print(name, age)
输出结果为:
Alice 25 Bob 30 Charlie 35
2. 解压元组或列表:
zip() 函数也可以用于解压元组或列表。例如:
students = [('Alice', 25), ('Bob', 30), ('Charlie', 35)]
names, ages = zip(*students)
print(names)
print(ages)
输出结果为:
('Alice', 'Bob', 'Charlie')
(25, 30, 35)
3. 字典的 zip 操作:
zip() 函数也可以用于字典的操作。当 zip() 函数在字典上操作时,默认会迭代字典的键。例如:
scores = {'Alice': 90, 'Bob': 80, 'Charlie': 95}
sorted_scores = sorted(zip(scores.values(), scores.keys()))
print(sorted_scores)
输出结果为:
[(80, 'Bob'), (90, 'Alice'), (95, 'Charlie')]
在上述代码中,首先使用 zip() 函数将字典中的值和键打包成元组,然后通过 sorted() 函数对元组进行排序,最终打印出了排序后的结果。
需要注意的是,当 zip() 函数的参数个数不同时,返回的对象长度等于参数中最短的对象长度。
另外,为了更好地理解和使用 zip() 函数,可以使用内置函数 help() 查看 zip() 函数的用法和文档。例如:
help(zip)
通过以上的介绍,可以看出 zip() 函数在 Python 中的使用非常灵活,可以用于多种情况下的元素打包和解压等操作。
