迭代
一、迭代对象
具有__Iter__()的方法叫可迭代对象
list.__iter__()
str.__iter__()
set.__iter__()
dict.__iter__()
tuple.__liter__()
迭代对象
优点:
使用灵活
直接查看值
缺点:
消耗内存,不能迭代
二、迭代器
具有 iter()和__next__()就是迭代器
将可迭代对象转换成迭代器
s="1234"
new_s=s.__iter__()
new_s.__iter__()
new_s.__next__()
迭代器:
优点:节省内存,惰性机制
缺点:使用不灵活,操作繁琐,不能直接查看元素
迭代器特性
1.一次性的(用完就没了)
2.不能逆行(不能后退)
3.惰性机制(要一个给一个,不要就不给了)
三、递归
1.不断调用自己本身
2.有明确的结束条件
注意!!!
官方声明:
最大递归层次1000 实际测试998/997
迭代精髓:一递一归