Python zip函数及用法
2年前 (2024-04-27)
zip() 函数是 Python 内置函数之一,它可以将多个序列(列表、元组、字典、、字符串以及 range() 区间构成的列表)“压缩”成一个 zip 对象。所谓“压缩”,其实就是将这些序列中对应位置的元素重新组,生成一个个新的元组。
和 Python 3.x 版本不同,Python 2.x 版本中的 zip() 函数会直接返回列表,而不是返回 zip 对象。但是,返回的列表或者 zip 对象,其包含的元素(都是元组)是相同的。
zip() 函数的语法格式为:
zip(iterable, ...)
其中 iterable,... 表示多个列表、元组、字典、、字符串,甚还可以为 range() 区间。下面程序演示了 zip() 函数的基本用法:
my_list = [11,12,13]
my_tuple = (21,22,23)
print([x for x in zip(my_list,my_tuple)])
my_dic = {31:2,32:4,33:5}
my_set = {41,42,43,44}
print([x for x in zip(my_dic)])
my_pychar = "python"
my_shechar = "shell"
print([x for x in zip(my_pychar,my_shechar)])
程序执行结果为:
[(11, 21), (12, 22), (13, 23)]
[(31,), (32,), (33,)]
[('p', 's'), ('y', 'h'), ('t', 'e'), ('h', 'l'), ('o', 'l')]
如果读者分析以上的程序和相应的输出结果不难发现,在使用 zip() 函数“压缩”多个序列时,它会分别取各序列中第 1 个元素、第 2 个元素、... 第 n 个元素,各自组成新的元组。需要注意的是,当多个序列中元素个数不一致时,会以最短的序列为准进行压缩。另外,对于 zip() 函数返回的 zip 对象,既可以像上面程序那样,通过遍历提取其存储的元组,也可以向下面程序这样,通过调用 list() 函数将 zip() 对象强制转换成列表:
my_list = [11,12,13]
my_tuple = (21,22,23)
print(list(zip(my_list,my_tuple)))
程序执行结果为:
[(11, 21), (12, 22), (13, 23)]
- 随机文章
- 北京 马尔代夫 航班(直飞北京-马尔代夫的航班开通)
- 马尔代夫工地(马尔代夫:建筑工人死亡人数升至5人)
- 东台市马尔代夫(东台市公务员集体赴马尔代夫旅游)
- 厦门 马尔代夫 代理(厦门打造马尔代夫旅游体验,惊艳亚洲旅游胜地)
- 作文马尔代夫的美(美丽的马尔代夫——天堂一般海岛风光)
- 马尔代夫电网(马尔代夫电网升级:可再生能源占比提高至30%)
- 北京马尔代夫在哪(北京马尔代夫之旅,美丽海岛等你来!)
- 丹阳马尔代夫照片(丹阳青年游马尔代夫,呈现无人区美景)
- 中国德阳马尔代夫(中国德阳市建立马尔代夫友好城市关系)
- 联通 马尔代夫 资费(联通推出马尔代夫特惠套餐,畅享低价高速网络)
- 商县马尔代夫旅游(河南商县出发,探寻马尔代夫蓝色梦幻)
- 冯策 马尔代夫(冯策 马尔代夫行:探寻美丽海岛风光)
- 戴睿 马尔代夫(戴睿加入马尔代夫漫游队伍)
- 国足抽签马尔代夫(国足开启世预赛之路,赛程抽签揭晓!)
- 大喜直播马尔代夫(直播阿里海外游大热门——马尔代夫!)
- 保暖内衣马尔代夫(马尔代夫必备!暖心内衣供应需求增加)
- 惠州马尔代夫标题(惠州推出“马尔代夫式”海边休闲酒店)
- 河南孟津马尔代夫(河南孟津打造马尔代夫式海岛度假胜地)
- 援建马尔代夫项目(重建马尔代夫岛屿:援建项目正式启动)
- 涪陵城区马尔代夫(新:重重叠叠的涪陵市区犹如马尔代夫)
- 芜湖马尔代夫宝石(芜湖游客发现马尔代夫宝石,价值惊人)
- 粉色日落马尔代夫(马尔代夫的粉色日落:自然的绝美景致)
- 泥鳗 马尔代夫(马尔代夫:品尝最新鲜的泥鳗美食)
- 欧洲中国马尔代夫(欧洲国家在马尔代夫加速推进中欧合作)
- 马尔代夫 酒店排名(马尔代夫最佳酒店排名Top10)
- 广州马尔代夫沙屋(广州青年预订马尔代夫沙屋享受慢生活)
- 蕲州江边马尔代夫(蕲州江边打造马尔代夫风情岛主题公园)
- 无锡 马尔代夫(无锡籍公民在马尔代夫失联:家人求救)
- 代办马尔代夫护照(马尔代夫办理护照:你需要知道的事情)
- 迪拜马尔代夫厨房(迪拜马尔代夫:一起探索当地厨房文化)
