[英]Move to else statement based on variable update outside if-else statement
伙計們,這可能是一個小問題,但我被困在這里,任何人都可以幫助我理解我的要求,將不勝感激。
check = True
if check:
for i in dict:
if i in another_dict:
do something
else:
check = False
else:
status = True
if status:
do something
else:
最初,我將 True(bool) 值分配給 IF-ELSE 語句外部的變量,如果我從 IF 語句內部更新相同的變量,我想移動到 else 語句。
(即)在上面的代碼中,如果變量“check”= False,我想繼續使用 main else 語句
只需使用另一個if
。 如果check
在第一個if
中更新,它將 go 進入第二個if
:
check = True
status = False
if check:
for i in dct:
if i in another_dict:
do_something()
else:
check = False
if not check:
do_something()
status = True
if status:
do_something()
到 go 到外部,否則你需要跳出你所在的循環。
for i in dict:
然而,即使循環結束,“check”也不會再次被檢查,因為它已經被檢查過一次。 為了更好地理解它,我們已經越界了:
if check
而且我們不會回到它,因為沒有循環。
考慮到這一切,最好的解決方案是在代碼末尾添加另一個檢查以查看 check == false 並執行您必須執行的任何操作。
check = True
if check:
for i in dict:
if i in another_dict:
do something
else:
check = False
else:
do something
if not check
do something
使用檢查作為全局變量..您更改 function 中的全局變量的值,使用 global 關鍵字引用該變量:
x = "awesome"
def myfunc():
global x
x = "fantastic"
myfunc()
print("Python is " + x)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.