2015-10-04 110 views
-3

所以我想弄清楚如何使這項工作中艾利芙:更改變量if語句(Python)的

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

我希望發生的是程序開始運行後的elif聲明變量已被更改爲匹配它。我應該怎麼做?

+0

你不能,'的elif's整點他們的獨立。 – jonrsharpe

+0

如果'變量'已經從''yes''更改爲''no''或者如果它已經是''no'''開始時,您是否希望'elif'塊中的代碼才能運行? –

回答

4

你不能;不與if..elif結構。 Python會挑選第一個條件匹配,並且會忽略其餘部分,無論您在運行的代碼塊中做了哪些更改。換句話說,在一系列if...elif...elif區塊中,只有一個會被選中。

你不得不使用單獨if塊:

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

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

獨立if聲明組是獨立的。

0
elif variable == "no: 

else 

如果if被評估False這些僅僅是檢查。

如果if條款爲真,則立即丟棄elseelif

所以,你的問題的一個班輪,

不,你不能這樣做。

0

我想要發生的是程序開始運行elif語句後變量已被更改爲匹配它。我應該怎麼做?

沒有太多我們可以從中理解,但我知道的是。 你需要運行一個函數或代碼,只發生ELIF語句即後,如果變量是「不」 可以使用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!