gpt4 book ai didi

Python嵌套for循环向下计数

转载 作者:行者123 更新时间:2023-12-01 05:32:35 25 4
gpt4 key购买 nike

我有一个任务要创建一个倒计时 for 循环。指令得到的结果如下:

12345
1234
123
12
1

我可能让这变得比实际更困难,但我对 Python 还很陌生。

到目前为止,我的脚本如下:

def print_figure():
for i in range(5, 0, -1):
for count in range(i):
print(12345, end='')
print()

这会导致:

1234512345123451234512345
12345123451234512345
123451234512345
1234512345
12345

我不是在寻求答案,只是为我提供解决问题的正确方向的指针。

最佳答案

你就快到了;您正在一遍又一遍地打印数字 12345,而不是使用 count,第一个循环的范围是 0 到 4,第二个循环的范围是 0 到 3,等等.

您想要打印 count 本身,但可以添加一个或调整其循环范围以从 1 到 i + 1:

def print_figure():
for i in range(5, 0, -1):
for count in range(1, i + 1):
print(count, end='')
print()

或使用:

def print_figure():
for i in range(5, 0, -1):
for count in range(i):
print(count + 1, end='')
print()

演示:

>>> def print_figure():
... for i in range(5, 0, -1):
... for count in range(1, i + 1):
... print(count, end='')
... print()
...
>>> print_figure()
12345
1234
123
12
1

另一种方法是使用字符串'12345'并对其进行索引; '12345'[0]'1' 等:

def print_figure():
for i in range(5, 0, -1):
for count in range(i):
print('12345'[count], end='')
print()

但是你可以只使用切片并完全摆脱嵌套循环:

def print_figure():
for i in range(5, 0, -1):
print('12345'[:i])

因为 '12345'[:3] 返回字符串的前 3 个字符,打印 123

关于Python嵌套for循环向下计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19866358/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com