【语法】enumerate、zip

enumerate

enumerate(iterable,[start=0])
功能:枚举 ; 将索引号和iterable中的值,一个一个拿出来配对组成元组,通过迭代器返回
参数:
iterable: 可迭代性数据 (常用:迭代器,容器类型数据,可迭代对象range)
start: 可以选择开始的索引号(默认从0开始索引)
返回值:迭代器

 1 dic = {k:v for k,v in enumerate(lst,start=100)}
 2 print(dic)
 3 
 4 (100, '王文')
 5 (101, '吕洞宾')
 6 (102, '何仙姑')
 7 (103, '铁拐李')
 8 (104, '张国老')
 9 (105, '曹国舅')
10 (106, '蓝采和')
11 (107, '韩湘子')

zip

特点:按照索引配对
zip(iterable, … …)
功能: 将多个iterable中的值,一个一个拿出来配对组成元组,通过迭代器返回 要是生成字典只能有两个iterable
iterable: 可迭代性数据 (常用:迭代器,容器类型数据,可迭代对象range)
返回: 迭代器

1 # 在索引下标同时存在时,才会进行配对,否则舍弃.
2 lst1 = ["孙开启","王永飞","于朝志"]
3 lst2 = ["薛宇健","韩瑞晓"]
4 lst3 = ["刘文博"]
5 
6 it = zip(lst1,lst2,lst3)
7 print(list(it))
8 # [('孙开启', '薛宇健', '刘文博')]
# 强制转换为字典
lst_key = ["ww","axd","yyt"]
lst_val = ["王维","安晓东","杨元涛"]
dic = dict( zip(lst_key , lst_val) )
print(dic)
# {'ww': '王维', 'axd': '安晓东', 'yyt': '杨元涛'}

 

posted on 2025-01-03 18:48  张凌赫_帅  阅读(20)  评论(0)    收藏  举报

导航