【问题标题】:How to Get the Current Value of For loop [closed]如何获取 For 循环的当前值
【发布时间】:2023-04-05 03:32:01
【问题描述】:

我想打印我的 for 循环的当前元素和旧元素:

输出:

1 

1 3 

1 3 5 

1 3 5 7

1 3 5 7 9
for current_element in range(1,10,2):
    print(current_element, end= ' ')

我只得到最后一行" 1 3 5 7 9 "

【问题讨论】:

  • 为什么认为循环是按原样执行的,而不是你希望的?你能解释一下它的逻辑吗(通过更新问题)?
  • For 循环没有“当前元素”或“旧元素”——这不是我们使用的术语。您只得到一行输出的原因是因为您的 print 语句将所有内容放在一行上。对print 的每次调用都打印一个数字的原因是因为这是您从正在使用的range 中得到的。您提出的问题表明了一个完全的误解,不是对 Python,而是对代码需要做什么。要解决此问题,您需要与您的讲师或助教,或 Reddit 或 Quora 等实际讨论论坛交谈 - Stack Overflow 不是
  • 你大概打算使用两个嵌套循环来解决这个问题。

标签: python loops for-loop


【解决方案1】:

当您在同一行上打印每个值时,您得到的不是最后一行而是右对角线

你需要保存之前的值来实现你的三角形输出

values = []
for current_element in range(1, 10, 2):
    values.append(current_element)
    print(*values)
1
1 3      
1 3 5    
1 3 5 7  
1 3 5 7 9

【讨论】:

    【解决方案2】:

    您可以存储值并打印,下面的代码将给出所需的结果

    pstr = ""           
    for current_element in range(1,10,2):
        pstr = pstr + str(current_element) + " "
        print(pstr)
    

    【讨论】:

      【解决方案3】:
      for i in range(1, 10, 2):
          for j in range(i):
              print(j, end=' ')
          print()
      

      【讨论】:

        猜你喜欢
        • 2013-09-06
        • 1970-01-01
        • 2023-01-23
        • 1970-01-01
        • 1970-01-01
        • 2020-12-18
        • 1970-01-01
        • 2011-11-18
        • 2021-05-23
        相关资源
        最近更新 更多