Python学习笔记之高级特性二迭代

如果给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历我们称为迭代(Iteration)。Java是通过下标来迭代的,而Python是通过 for…in… 来完成迭代的。
Java中遍历一个数组代码如下:

// Java遍历一个数组
for (int i = 0; i < list.length; ++i) {
    num = list[i];
}

Python中遍历一个list代码如下:

# Python遍历一个数组
for num in list:
    print(num)

不止list可以迭代,字符串和dict都可以迭代。判断一个对象是否可迭代可用如下方法:

# 判断一个对象是否可迭代,如果是可迭代的,则返回True,否则返回False
from collections import Iterable
isinstance('abc', Iterable)

需要注意的是dict的迭代。dict存储键值对,有key和value,迭代时可以只得到key,也可以只得到value,还可以同时取出。每种迭代的方式都不同,代码如下:

# 定义一个dict
d = {'a': 1, 'b': 2, 'c': 3, 'd': 4}

# 遍历key,直接在dict中迭代
for key in d:
    print(key)
# Outputs
# a b c d (每个空格代表换行)


# 遍历value,在dict.values()中迭代
for value in d.values():
    print(value)
# Outputs
# 1 2 3 4 (每个空格代表换行)


# 遍历key和value,在dict.items()中迭代
for key, value in d.items():
    print(key, ': ', value)
# Outputs
# a: 1
# b: 2
# c: 3
# d: 4
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值