繁体   English   中英

在 if 语句中将变量更改为 elif (Python)

[英]Changing variable to elif within if statement (Python)

所以我想弄清楚如何使这项工作:

if variable == "yes":
    variable = "no"
elif variable == "no:

我想要发生的是程序在更改变量以匹配它之后开始运行 elif 语句。 我该怎么办?

你不能; 不是if..elif结构。 无论您在运行的代码块中进行了哪些更改,Python 都会选择匹配的第一个条件并忽略其余条件。 换句话说,在一系列if...elif...elif块中,只会选择一个

您必须使用单独的if块:

if variable == 'yes':
    variable = 'no'

if variable == 'no':
    # ...

分开if语句组是独立的。

elif variable == "no:

或者

else

只有当if被评估为False才会检查这些。

如果if子句为真,则立即丢弃elseelif

所以,你的问题的一个班轮,

不,你不能这样做。

我想要发生的是程序在更改变量以匹配它之后开始运行 elif 语句。 我该怎么办?

我们不能从中了解多少,但我知道的是。 您需要运行一个函数或代码,只有在 elif 语句发生后,即如果变量为 'no' 您可以使用while语句

while variable is 'yes':
   #continue or do something
   if someoccurances:
       variable = 'no'
       #break or call a function that elif does
#if break, Do your elif here!
if variable is 'no':
    #Do your function here!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM