【发布时间】:2021-08-14 16:52:24
【问题描述】:
这是我原始代码的最小表示
x = 0
count = 0
a=30-count
while x < 10:
if True:
count = count+1
x = x+1
print("count is ",count)
print("a is ",a)
这是输出:
count is 10
a is 30
输出中的 a 应该是 20,但 'a=30-count' 行不起作用
为了使它工作,我必须将行 'a=30-count' 移动到 'print("a is ",a)' 的上方 但我想要代码开头的“a=30-count”行
我尝试将 a 设置为全局变量,但没有成功
提前感谢您,如果我的问题格式不正确,我也很抱歉这是我第一次在此网站上发布问题
【问题讨论】:
-
您的目标与因果关系相矛盾。也就是说,您无法从后来最早知道的值中接收结果。你唯一能做的就是引入一个变量
loop_limit = 10,所以你可以做a = 30 - count - loop_limit。 -
那条线并没有在
a和那个公式之间建立一些永恒的联系。它只是从30(即30)中减去count(0)的当前值,并将其分配给a。之后的任何时候都不会隐含地重复此计算。这是命令式代码;你告诉 Pythonwhen 做什么操作。如果你只是在一开始就这样做,那么结果就是你所看到的。 -
我在终端中运行了这段代码,它运行良好。
标签: python variables math syntax subtraction