2.写一个生成器函数myrange([start,],stop[,step])来生成一系列整数 要求: myrange功能与range功能相同(不允许调用range函数) 用自己写的myrange函数结合生成器表达式求1-10内奇数的平方和
测试代码:
range(4)
range(0, 4)
list(range(4))
[0, 1, 2, 3]
list(range(1,4))
[1, 2, 3]
list(range(1,6,2))
[1, 3, 5]
list(range(6,0,-1))
[6, 5, 4, 3, 2, 1]
自己代码:
def myrange(a,*args):
if len(args)==0:
i=0
while i
print(list(myrange(10)))
print(list(myrange(1,10)))
print(list(myrange(10,1)))
print(list(myrange(1,10,2)))
print(list(myrange(10,1,-2)))
print(list(myrange(10,1,0)))
print(sum(gen))——-165
老师答案:
def myxrange(start,stop=None,step=1):
if stop is None:
stop=start
start=0
if step>0:
while start