我正在学习初学者Python课程,教师要求我们在不使用递归的情况下倒数到零。我试图使用for循环和范围这样做,但他说我们必须包括零。
我在互联网和本网站上广泛搜索,但找不到我的问题的答案。有没有办法让我可以计算范围,并在打印时包括零?
编辑:
def countDown2(start):
#Add your code here!
for i in range(start, 0, -1):
print(i)
答案 0 :(得分:4)
Python中的range()
函数有3个参数:range([start], stop[, step])
。如果您想倒数而不是向上,可以将step
设置为负数:
for i in range(5, -1, -1):
print(i)
输出:
5
4
3
2
1
0
答案 1 :(得分:2)
作为@ chrisz的回答的另一个选项,Python有一个内置的reversed()
函数,它以相反的顺序生成一个迭代器。
start_inclusive = 4
for i in reversed(range(start_inclusive + 1)):
print(i)
输出
4
3
2
1
0
这有时更容易阅读,对于编写良好的迭代器(例如内置范围函数),性能应该相同。