标签:range tor python 反馈 解释 函数 需要 理解 创建
有了切片操作,很多地方循环就不再需要了。Python的切片非常灵活,一行代码就可以实现很多行循环才能完成的操作。
substring()
Mylist[0:5]
表示,从索引0开始,直到索引5为止;但不包括索引5,即索引0,1,2,3,4,正好5个元素。如果第一个索引是0还可以省略,如Mylist[:]
;还支持步长,如每两个取一个Mylist[::2]
isinstance(object,Iterable)
判断结果反馈True为可迭代、返回False为不可迭代。for var in IterObject
,下标方式迭代for i,value in enumerate(object)
newList = [x*x for x in oldList if x % 2 == 0]
解释为用oldList列表中偶数元素的平方生成一个新列表newList。yield
关键字return
或最后一行语句返回。generator函数,每次调用next()
时候执行,遇到yield
语句返回,再执行时从上次返回的yield
处继续执行。g = (x * x for x in range(10))
或者如下所示:def fib(max):
n, a, b = 0, 0, 1
while n < max:
print(b)
a, b = b, a + b
n = n + 1
return 'done'
for
循环的数据类型如下:
list tuple dict set str
for
循环的对象统称为可迭代对象:Iterable
Iterable
对象,可以被next()
函数调用并不断返回下一值得对象称为迭代器,可以用函数isinstance(object,Iterable)
判断。Iterator
对象,但list、dict、str
虽然是Iterable
,却不是Iterator
,把list、dict、str
等Iterable
变成Iterator
可以使用iter()
函数。list、dict、str
等数据类型不是Iterator
?标签:range tor python 反馈 解释 函数 需要 理解 创建
原文地址:https://www.cnblogs.com/bwon/p/10767371.html