范围倒计时到零
range countdown to zero
我是初学者Python class 老师让我们在不使用递归的情况下倒数到零。我正在尝试使用 for 循环和范围来执行此操作,但他说我们必须包括零。
我在互联网和本网站上进行了广泛的搜索,但找不到我的问题的答案。有没有一种方法可以让范围倒计时并在打印时在末尾包含零?
编辑:
def countDown2(start):
#Add your code here!
for i in range(start, 0, -1):
print(i)
Python 中的 range()
函数有 3 个参数:range([start], stop[, step])
。如果你想倒数而不是倒数,你可以将 step
设置为负数:
for i in range(5, -1, -1):
print(i)
输出:
5
4
3
2
1
0
作为@chrisz 答案的另一种选择,Python 有一个 built-in reversed()
函数,它以相反的顺序生成迭代器。
start_inclusive = 4
for i in reversed(range(start_inclusive + 1)):
print(i)
产出
4
3
2
1
0
这有时更容易阅读,对于 well-written 迭代器(例如 built-in 范围函数),性能应该相同。
我是初学者Python class 老师让我们在不使用递归的情况下倒数到零。我正在尝试使用 for 循环和范围来执行此操作,但他说我们必须包括零。
我在互联网和本网站上进行了广泛的搜索,但找不到我的问题的答案。有没有一种方法可以让范围倒计时并在打印时在末尾包含零?
编辑:
def countDown2(start):
#Add your code here!
for i in range(start, 0, -1):
print(i)
Python 中的 range()
函数有 3 个参数:range([start], stop[, step])
。如果你想倒数而不是倒数,你可以将 step
设置为负数:
for i in range(5, -1, -1):
print(i)
输出:
5
4
3
2
1
0
作为@chrisz 答案的另一种选择,Python 有一个 built-in reversed()
函数,它以相反的顺序生成迭代器。
start_inclusive = 4
for i in reversed(range(start_inclusive + 1)):
print(i)
产出
4
3
2
1
0
这有时更容易阅读,对于 well-written 迭代器(例如 built-in 范围函数),性能应该相同。