我試圖弄清楚為什么某些變數直接使用布林值設定。
my_boolean = True
print(my_boolean)
有沒有人有一些具體的例子來提供和解釋在真實情況下采取這些行動的原因?提前致謝
uj5u.com熱心網友回復:
好吧,在下面的代碼中,x 設定為 True(布爾型別)以保持回圈繼續進行,然后在回圈中我們觀察到當 Val = stop value(10) 轉 x = false 時會中斷回圈。在這里,我們使用 x 作為運行后置條件回圈的一種方式(這是一個一直持續到滿足某個條件的回圈
import random as r
x = True
stop_value = 10
while x:
Val = r.randint(1,10)
print(Val)
if val == stop_value:
x = False
print("done")
uj5u.com熱心網友回復:
我可以立即想到的一種情況是嘗試避免return
在函式中使用多個陳述句。考慮這個例子:
def fcn(string: str) -> bool:
if string == "abc":
return False
return True
如上所示,要成功避免使用多個回傳,您可以提供result
一個默認值為True
. 如果后續條件評估為True
,則變數將更改為False
并且您將確保僅使用return
函式中的一個陳述句:
def fcn(string) -> bool:
result = True
if string == "abc":
result = False
return result
這實際上是一個可讀性和個人偏好的問題。對于這個“單一回報與多重回報”的話題,意見仍然存在很大分歧。
提供默認值有時可以簡化我們的代碼。其他時候,我們根本無法沒有它們(也請參閱其他答案)。
希望有幫助。
uj5u.com熱心網友回復:
通常,布林值用于建立條件。或者檢查條件的正確性。有時它們只是用來阻止執行進一步發生。它具有擴展用途,但主要用途通常是檢查某個值/一段代碼。
例如,如果我們需要為一個家庭建立雜貨清單,我們自身就有多種條件來采購必要的物品。如果我們把它翻譯成一個程式:
isListCompleted -> 一個變數,告訴我們是否已經購買了串列中的所有專案。(最初是 False,因為我們還沒有購買任何東西。)
isMoneySufficient -> 一個變數,告訴我們是否有足夠的錢購買串列中的所有東西。(這最初是真的,因為我們會有錢)
所以程式可以是這樣的:
while(isMoneySufficient==True):
if(isListCompleted==False):
purchase(next_item) // A function that buys next item in the list.
check_balance() // A function that checks our balance money
這里,有兩個條件可以停止程式,即,
- 如果 isListCompleted 變數變為 True [當我們無法找到任何 next_item 時,這可以在購買函式中實作]
- 如果 isMoneySufficient 變數變為 False [當我們用完 Money 時,這可以在 check_balance 函式中實作。]
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/497375.html
上一篇:錯誤:模塊構建失敗(來自./node_modules/@angular-devkit/build-angular/node_modules/sass-loader/dist/cjs.js)