【问题标题】:About loops and variables in Python关于 Python 中的循环和变量
【发布时间】:2015-01-16 19:54:37
【问题描述】:

我是编程世界的新手,所以这可能是一个愚蠢的问题,但无论如何,就是这样。

是否可以定义一种特殊的变量来记住其先前的值并将该值从一个循环传递到下一个循环?嗯......现在我什至不确定我是否正确地提出了这个问题,但本质上我想做的是从一个变量(var = 0)开始,然后在同一个循环中将其更改为(var += 10)如果满足一个条件。在下一个循环中,变量现在应该是 (var = 10),如果再次满足条件,变量将是 (var += 10),应该是 (var = 20),依此类推。它就像一个“转世”的变量,它记住了它的前世。我希望这是有道理的。谢谢!

【问题讨论】:

  • 如果一个变量是在循环外定义的,那么它将满足你的需求。
  • 我想过这个问题,但由于某种原因它不起作用。但是现在我再次编写了整个脚本并且它起作用了。我一定错过了什么。详细,详细...谢谢!
  • 还有一个问题。还有其他方法可以影响循环的特定迭代吗?有哪些方法?

标签: python loops variables store


【解决方案1】:

你可以在循环之前声明变量,它的值将在每次迭代中保持不变。

Python 2:

x = 0
for i in range(0, 10):
    print "i is %d and x is %d" % (i, x)
    x += 10

Python 3:

x = 0
for i in range(0, 10):
    print("i is {0} and x is {1}".format(i, x))
    x += 10

【讨论】:

    【解决方案2】:

    这就是你所追求的吗?

    var = 0
    while var >= 0:
        if <condition met>:
            var += 10
    

    【讨论】:

    • 别担心,如果您觉得此答案有用,您能否将其标记为已回答您的问题?
    【解决方案3】:

    当 y 为 1、4、7 或 9 时,下面的代码将向 x 添加 10。还维护一个包含 x 先前值的列表 (xl)。因此,可以使用 x 的当前值和以前的值。

    x = 0
    xl = []
    
    for y in range(0, 10):
        if y in (1,4,7,9):
            x = x+10;
            xl.append(x)
    
    
    print (x)
    print (xl)
    

    【讨论】:

    • 有趣!谢谢!
    猜你喜欢
    • 2014-08-01
    • 2020-02-25
    • 1970-01-01
    • 2016-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-26
    • 1970-01-01
    相关资源
    最近更新 更多