文章详情页
Python中range(1,1)返回什么?
问题描述
# Python杨辉三角实现def yanghuiTriangle(): L = [1] L2 = [] while True:yield LL = [1]+[L[x-1]+L[x] for x in range(1,len(L))]+[1]#这里如果是range(1,1)的情况前面的L[0]和L[1]中不是取不到值吗?for item in yanghuiTriangle(): print(item) if len(item)>10:break
L = [1]+[L[x-1]+L[x] for x in range(1,len(L))]+[1]#这里如果是range(1,1)的情况前面的L[0]和L[1]中不是取不到值吗?
问题解答
回答1:L = [1] 时, range(1,len(L))为range(1, 1)返回[],空列表,所以通过for迭代,没有次数. 所以得到杨辉三角的第二行L = [1] + [1] = [1, 1].
回答2:>>> list(range(1,1))[]回答3:
list(range(1,1)) 等同回傳[] yield 遞迴到底結束。
排行榜