定义一个名为 count_down 的函数,它接受 1 个参数。当您调用 count_down(3) 时,输出应该是这样的:3... 2... 1... 0!。
我的代码如下:
def count_down(start):
"""
Counting down a sequence with a skip value,
from a defined start point in reversed order.
Args:
start: start loop index.
skip: number to skip over.
Returns:
(list): skipped list.
"""
return [num for num in reversed(range(start + 1)) ]
print(count_down(3))
print(count_down(4))
但输出是 [3, 2, 1, 0] [4, 3, 2, 1, 0] 如何获得有问题的格式描述的格式: 3...2...1...0!
答案 0 :(得分:1)
对于任何递归函数,您都需要考虑导致它结束的条件。在这种情况下,当 start
为 0 时,您已完成,因此此时是打印出您的特殊情况(“0!”)并返回的时候了。在其他情况下,您希望打印 start
的当前值,然后使用 count_down
减 1 再次调用 start
。
示例:
def count_down(start):
if start == 0:
print("0!")
return
print(start, end="...")
count_down(start -1)
count_down(3)
输出:
3...2...1...0!
答案 1 :(得分:0)
print("... ".join(map(str, count_down(3))) + "!")
-by Samwise