Python高级函数3

3 迭代

每一次对过程的重复称为一次“迭代”,而每一次迭代
得到的结果会作为下一次迭代的初始值。例如:
循环获取容器中的元素。

3.1 可迭代对象iterable

(1) 定义:具有__iter__函数的对象,可以返回
迭代器对象。

(2) 语法
# 创建:
class 可迭代对象名称:
	def __iter__(self):
		return 迭代器
# 使用:
	for 变量名 in 可迭代对象:
		语句
(3) 原理:
迭代器 = 可迭代对象.__iter__()
while True:
	try:
		print(迭代器.__next__())
	except StopIteration:
		break
(4) 演示:
message = "我是花果山水帘洞孙悟空"
# for item in message:
# print(item)
# 1. 获取迭代器对象
iterator = message.__iter__()
# 2. 获取下一个元素
while True:
	try:
		item = iterator.__next__()
		print(item)
		# 3. 如果停止迭代则跳出循环
	except StopIteration:
		break
练习1:创建列表,使用迭代思想,打印每个元素.

练习2:创建字典,使用迭代思想,打印每个键值对.

3.2 迭代器对象iterator

(1) 定义:可以被next()函数调用并返回下一个值
的对象。

(2) 语法
class 迭代器类名:
	def __init__(self, 聚合对象):
		self.聚合对象= 聚合对象
	def __next__(self):
		if 没有元素:
		raise StopIteration
		return 聚合对象元素
(3) 说明:聚合对象通常是容器对象。

(4) 作用:使用者只需通过一种方式,便可简洁明了的
获取聚合对象中各个元素,而又无需了解其内部结构。

(5) 演示:
class StudentIterator:
	def __init__(self, data):
		self
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值