摘要:大家好,在我們上一篇復習了的基礎和實用技巧后,今天我們來看一下里的邏輯關系,所謂邏輯關系無非就是如果就否則之類的,不是非常復雜,我的意思是復雜的地方不用目前了解,因為已經(jīng)超出了小白的水準,哈哈,閑話少說,讓我們一起來看看吧什么是里面用的形
大家好,在我們上一篇復習了dict的基礎和實用技巧后,今天我們來看一下Python里的邏輯關系,所謂邏輯關系無非就是如果...就...否則...之類的,不是非常復雜,我的意思是復雜的地方不用目前了解,因為已經(jīng)超出了小白的水準,哈哈,閑話少說,讓我們一起來看看吧~
什么是ifPython里面用if-else的形式
if: #如果滿足什么條件 #就執(zhí)行什么步驟
注意有兩點:
if 后面的判斷結果就是True和False兩種類型,如果True,將執(zhí)行statement的步驟1
statement那里一定有縮進,寫在if條件里面
讓我們拿實際的情況看看具體是什么意思:
x = 0 y = 5 if x < y: # True print("yes") if y < x: # False print("yes") if x: # Falsy print("yes") if y: # Truthy print("yes") if x or y: # Truthy print("yes") if x and y: # Falsy print("yes") if "aul" in "grault": # Truthy print("yes") if "quux" in ["foo", "bar", "baz"]: # Falsy print("yes")
我給大家解釋一個可能產(chǎn)生的疑問,就是如下這個條件式:
if x: # Falsy print("yes")
這里為什么是錯誤的呢,因為很簡單,在Python里默認1就是True,0就是False,這里x的值正好是0,和ython默認的規(guī)定的一樣,所以這個判斷也是錯的,大家明白了吧~
滿足if條件后有多個statements執(zhí)行
用大白話講就是說如果滿足了if的條件,那么你有很多事情想依次執(zhí)行,而且在做完這些事情后完成了條件,開始下一項任務,那么這種情況下調(diào)用形式如下圖:
if: ...
感覺還是圖片比較容易理解哈哈~ 讓我們來看一個真實的例子:
if "foo" in ["bar", "baz", "qux"]: print("Expression was true") print("Executing statement in suite") print("...") print("Done.") print("After conditional")
這段代碼完美的展示了圖片中講解的內(nèi)容,大家可以猜猜結果,這段代碼執(zhí)行后會輸出什么。
現(xiàn)在公布答案:
After conditional
簡單說一下,很簡單,我們想要看看"foo" 這個字符串是否在數(shù)組["bar", "baz", "qux"]里面,如果在,一次執(zhí)行底下的縮進的4個print方法,如果不在,跳出if,繼續(xù)該干什么干什么,所以顯然易見"foo"不在數(shù)組里,因此直接執(zhí)行最后的print("After conditional")
多個if在一起
大家看一下下面的代碼,如果你預想的輸出結果和實際的一樣,那恭喜你已經(jīng)徹底明白if是什么東西了
# Does line execute? Yes No # --- -- if "foo" in ["foo", "bar", "baz"]: # x print("Outer condition is true") # x if 10 > 20: # x print("Inner condition 1") # x print("Between inner conditions") # x if 10 < 20: # x print("Inner condition 2") # x print("End of outer condition") # x print("After outer condition") # x
輸出結果為:
Outer condition is true Between inner conditions Inner condition 2 End of outer condition After outer conditionif else
在Python中使用if else 的表達模板如下:
if: else:
大家想必很容易看懂,現(xiàn)在舉個栗子:
x = 20 if x < 50: print("(first suite)") print("x is small") else: print("(second suite)") print("x is large")
輸出結果為:
(first suite) x is small
很容易理解了,如果滿足if條件如何,else否則怎么怎么樣
if,elif ,else讓我們來看最后一種情況,也很好弄懂,elif的意思就是else if 的縮寫而已,表達模式如下:
if: elif : elif : ... else:
看一個具體實例:
name = "Joe" if name == "Fred": print("Hello Fred") elif name == "Xander": print("Hello Xander") elif name == "Joe": print("Hello Joe") elif name == "Arnold": print("Hello Arnold") else: print("I don"t know who you are!")
輸出結果為:
Hello Joe
總而言之就是如果不滿足第一個if條件,接著看是否滿足第二個if條件,然后是第三個...
if 寫在一行里Python有一個好處就是它非常懶,很多東西它會自己想辦法減少代碼量,所以就出現(xiàn)了以下這種寫法:
if: if : ; ; ...;
分別看兩個例子,第一個簡單一些的:
if "f" in "foo": print("1"); print("2"); print("3") Out:1 2 3
稍微復雜一些的:
x = 2 if x == 1: print("foo"); print("bar"); print("baz") elif x == 2: print("qux"); print("quux") else: print("corge"); print("grault") Out: qux quux總結
基本的條件語句常見的就這幾種
個人建議不要寫一行,還是拆成多行寫,這樣思路清晰
文章版權歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/43102.html
摘要:基礎之控制結構學習目標代碼塊與縮進條件語句語句語句的嵌套斷言循環(huán)循環(huán)循環(huán)中斷循環(huán)控制語句綜合嵌套列表解析式基礎相關鏈接學習目標是簡潔易學面向?qū)ο蟮木幊陶Z言。 Py...
摘要:在學習語句的時候,對編程的基礎知識了解的還不是很多,或許沒有做什么太復雜的東西??梢酝ㄟ^一個內(nèi)置函數(shù)來判斷一個條件的結果還是。有朋友需要看完整教程內(nèi)容,請點擊零基礎學,這里會及時更新,并且有完整的目錄結構,更吸納了朋友們提出的意見和建議。 看官是否記得,在上一部分的時候,有一講專門介紹if語句的:從if開始語句的征程。在學習if語句的時候,對python編程的基礎知識了解的還不是很多,...
摘要:獲取怎樣的數(shù)據(jù)在這里首先需要考慮,我們的四則運算計算器的計算復雜度是如何的是僅能計算兩個數(shù)值的簡單運算,如還是能進行混合四則運算,如那么你想處理運算的復雜程度就決定了你想獲取怎樣的數(shù)據(jù),這是很實際的問題。 引言 在上一篇文章的介紹中,我們提及了Python的三種基本數(shù)據(jù)類型,如文章末尾所說,Python中的內(nèi)建數(shù)據(jù)類型并不僅僅是這幾種,但其實我從接觸Python到現(xiàn)在,往往就是這幾種簡...
摘要:一般所有高級語言,都包含如下語句,也不例外循環(huán)語句容許一些語句反復運行數(shù)次。條件語句容許僅當某些條件成立時才運行某個區(qū)塊。無條件分支語句容許運行順序轉(zhuǎn)移到程序的其他部分之中。零基礎學我在上的文章,隨時更新修改。 一般編程的教材,都是要把所有的變量類型講完,然后才講語句。這種講法,其實不符合學習的特點。學習,就是要循序漸進的。在這點上,我可以很吹一通了,因為我做過教師,研究教育教學,算是...
摘要:判斷語句可以進行多層嵌套判斷條件進行判斷條件滿足之后執(zhí)行下方語句執(zhí)行語句判斷條件在滿足上述條件的基礎上進行再次判斷執(zhí)行語句例子小龍蝦走起看看小馬的找小馬蹭小龍蝦,。小馬請不起,還是去肯饅頭吧。看看小馬的找小馬蹭小龍蝦,。 代碼執(zhí)行結構為順序結構、選擇結構、循環(huán)結構。 python判斷選擇結構【if】 if 判斷條件 #進行判斷條件滿足之后執(zhí)行下方語句 執(zhí)行語句 elif 判...
閱讀 4149·2021-11-23 10:09
閱讀 1407·2021-11-23 09:51
閱讀 3039·2021-11-23 09:51
閱讀 1709·2021-09-07 09:59
閱讀 2437·2019-08-30 15:55
閱讀 2377·2019-08-30 15:55
閱讀 3025·2019-08-30 15:52
閱讀 2627·2019-08-26 17:04