我使用的是Python 3.5。我正在使用while循环,并更改用户输入的内部变量(已由用户定义):
variable = eval(input("[...]"))
while [input isn't what the user is expected to enter]:
variable = eval(input("[Asking to enter a correct input]"))
因此,当用户输入正确的值时,循环结束。然而,作为"变量"当用户为"变量"分配正确的值时,在while循环内定义循环结束,"变量"的第一个(和不正确的)值。被认为是该计划的其余部分。
如何才能使记忆中的值在while循环中定义?
答案 0 :(得分:0)
似乎您正在重新定义while循环中的全局变量。要引用外部变量',您需要将其声明为全局变量。看看:
Using global variables in a function other than the one that created them
你宣称它的方式,内在的变量'被创建为与外部变量'不同的变量。 (即使它们具有相同的名称),并且当while循环结束时它会被丢弃,因此您最终会引用原始(全局)变量'。
答案 1 :(得分:0)
实际上,您的代码已经是这种情况了。如果while循环开始,则保留在循环内设置的variable
的值。