tcoooool 发表于 2020-4-25 17:36:39

此while循环结果如何用for循环达成

请教,Python[课后作业] 第004讲:改进我们的小游戏,最后一个动手题,如何改成使用for循环。如下是while循环达成。
number = int(input("请输入一个整数:"))
while number:
    i = number -1
    while i:
      print(' ',end = '')
      i -= 1
    j = number
    while j:
      print('*',end = '')
      j -= 1
    print()
    number -= 1
效果:

qiuyouzhi 发表于 2020-4-25 17:43:03

直接
number = int(input("请输入一个整数:"))
for i in range(number):
    i = number -1
    while i:
      print(' ',end = '')
      i -= 1
    j = number
    while j:
      print('*',end = '')
      j -= 1
    print()
    number -= 1
就好了。
P.S: 我认为没有必要做这些循环转换类的东西

ouyunfu 发表于 2020-4-25 17:46:30

number = int(input("请输入一个整数:"))
for i in reversed(range(1,number+1)):
    print(' '*i+'*'*i)

tcoooool 发表于 2020-4-25 17:51:17

qiuyouzhi 发表于 2020-4-25 17:43
直接

就好了。


感谢回答。我可能没表述清楚,我想拓展思路,单独使用for循环达成同一结果

qiuyouzhi 发表于 2020-4-25 17:52:25

tcoooool 发表于 2020-4-25 17:51
感谢回答。我可能没表述清楚,我想拓展思路,单独使用for循环达成同一结果

number = int(input("请输入一个整数:"))
for i in range(number,0,-1):
    print(' ' * i, end = '')
    print('*' * i)

tcoooool 发表于 2020-4-25 17:52:31

ouyunfu 发表于 2020-4-25 17:46
number = int(input("请输入一个整数:"))
for i in reversed(range(1,number+1)):
    print(' '*i+'*'* ...

是这意思。{:5_106:}

tcoooool 发表于 2020-4-25 17:56:14

qiuyouzhi 发表于 2020-4-25 17:52


感谢大神,是这意思,不好意思我最佳点快了 你这个更符合我现在学到的{:5_106:}
页: [1]
查看完整版本: 此while循环结果如何用for循环达成