python通过列表一一对应_Python同时遍历多个列表一一对应

Python在编程时常常需要的for循环遍历list,最常用的是单个list遍历,但是,有时遍历一个list并不能满足我们的需求,在一些特殊的场合,我们可能会需要遍历两个甚至多个列表;例如,有两个列表,第一个列表存放的是人物的姓名,第二个列表存放的是人物的年纪,他们之间的关系是对应的,怎么同时遍历他们的对应关系呢,这时常使用zip函数。

name_list = ['name1', 'name2', 'name3']

age_list = [54, 18, 34]

for name, age in zip(name_list, age_list):

print(name, ':', age)

运行结果:

name1 : 54

name2 : 18

name3 : 34

除此之外,zip函数还有其他各种用法

(1)直接输出zip(list1, list2),返回的是一个zip对象。

(2) 在zip前面加上*, 它输出了三个元组, 正是两个列表中的三个数据一一对应的结果。

(3)还可以将此对象直接转化成列表,甚至字典!

实验如下所示:

name_list = ['name1', 'name2', 'name3']

age_list = [54, 18, 34]

print(zip(name_list, age_list))

print(type(zip(name_list, age_list)))

print(*zip(name_list, age_list))

print(list(zip(name_list, age_list)))

print(dict(zip(name_list, age_list)))

('name1', 54) ('name2', 18) ('name3', 34)

[('name1', 54), ('name2', 18), ('name3', 34)]

{'name1': 54, 'name2': 18, 'name3': 34}

同样,还可以使用zip()来遍历三个及以上的列表。

除了以上方法外,还可以使用第2个列表的下标取元素。

list1 = [1, 2, 3, 4, 5]

list2 = ['a', 'b', 'c', 'd', 'f']

n = 0

for each in list1:

print(each, list2[n])

n += 1

1 a

2 b

3 c

4 d

5 f

  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值