Python中遇到的难题 8
def myrev(data):#这里range 生成了 data的倒序索引
#注意 ,range的结束位置是不包含的
for index in range(len(data)-1,-1,-1):
yield data
为什么for语句会形成 data的倒序索引的呢 结束位置不包含有是什么意思的呢 1,因为步长为-1,也就是从后往前。
2,因为有0的存在,要给它留个位置,
所以不包含结尾 1. 因为步长为 -1,而且结束位置为 -1,表示从后往前。
2. 举个例子,如果 stop 为 0 则不会迭代出 0,只会迭代出 1 。因为要保留 0,所以将 stop 设置为 -1 。 range里面的参数是这样的
range(start,stop,step)
他的取值范围是[start,stop)
注意这是一个半闭合结构,start值会取,stop值不会取
step控制每次的步长
回到你的题目
for index in range(len(data)-1,-1,-1):
他是从data的索引为len(data)-1开始到-1(但不取,取到0结束),按-1的步长来步进
页:
[1]