在Python中,`zip`函数用于将多个可迭代对象(如列表、元组等)打包成一个元组的迭代器。下面是一些基本用法:
创建ZIP文件
import zipfile创建一个新的ZIP文件with zipfile.ZipFile('my_files.zip', 'w') as zip_file:添加单个文件zip_file.write('test.txt')添加多个文件files_to_zip = ['data.csv', 'image.png', 'config.json']for file in files_to_zip:zip_file.write(file)
解压ZIP文件
解压到当前目录with zipfile.ZipFile('my_files.zip', 'r') as zip_file:zip_file.extractall()解压到指定目录with zipfile.ZipFile('my_files.zip', 'r') as zip_file:zip_file.extractall('extracted_files')
使用`zip`函数

合并多个列表/元组list1 = [1, 2, 3]list2 = ['a', 'b', 'c']zipped = zip(list1, list2)for item in zipped:print(item)输出:(1, 'a')(2, 'b')(3, 'c')遍历多个可迭代对象list1 = [1, 2, 3]list2 = ['a', 'b', 'c']list3 = ['!', '@', '']for x, y, z in zip(list1, list2, list3):print(x, y, z)输出:1 a !2 b @3 c将两个列表合并为一个字典list1 = ['name', 'age']list2 = ['John', 25]my_dict = dict(zip(list1, list2))print(my_dict)输出:{'name': 'John', 'age': 25}
注意事项
当传入的可迭代对象长度不一致时,`zip`函数会以最短的可迭代对象长度为准进行打包,超出部分将被忽略。
使用`*`号操作符可以将元组解压为列表。
`zip`函数返回的是一个迭代器,如果需要列表形式,可以使用`list()`函数进行转换
