Python基礎學習之IF控制流

2021-09-26 18:21:59 字數 3288 閱讀 9174

判斷,基於一定的條件,決定是否要執行特定的一段**,例如判斷乙個數是不是正數:

x =

0.5if x >0:

print

"hey!"

print

"x is positive"

hey!

x is positive

在這裡,如果x > 0false,那麼程式將不會執行兩條print語句。

上面例子中的這兩條語句:

print

"hey!"

print

"x is positive"

就叫做乙個**塊,同乙個**塊使用同樣的縮排值,它們組成了這條if語句的主體。

不同的縮排值表示不同的**塊,例如:

x > 0時:

x =

0.5if x >0:

print

"hey!"

print

"x is positive"

print

"this is still part of the block"

print

"this isn't part of the block, and will always print."

hey!

x is positive

this is still part of the block

this isn't part of the block, and will always print.

x < 0時:

x =

-0.5

if x >0:

print

"hey!"

print

"x is positive"

print

"this is still part of the block"

print

"this isn't part of the block, and will always print."

this isn't part of the block, and will always print.
在這兩個例子中,最後一句並不是if語句中的內容,所以不管條件滿不滿足,它都會被執行。

乙個完整的if結構通常如下所示(注意:條件後的:是必須要的,縮排值需要一樣):

if :

elif :

else:

當條件1被滿足時,執行if下面的語句,當條件1不滿足的時候,轉到elif,看它的條件2滿不滿足,滿足執行elif下面的語句,不滿足則執行else下面的語句。

對於上面的例子進行擴充套件:

x =

0if x >0:

print

"x is positive"

elif x ==0:

print

"x is zero"

else

:print

"x is negative"

x is zero
elif的個數沒有限制,可以是1個或者多個,也可以沒有。

else最多只有1個,也可以沒有。

x =

10y =-5

x >

0and y <

0

true
not x >

0

false
x <

0or y <

0

true
這裡使用這個簡單的例子,假如想判斷乙個年份是不是閏年,按照閏年的定義,這裡只需要判斷這個年份是不是能被4整除,但是不能被100整除,或者正好被400整除:

year =

1900

if year %

400==0:

print

"this is a leap year!"

# 兩個條件都滿足才執行

elif year %4==

0and year %

100!=0:

print

"this is a leap year!"

else

:print

"this is not a leap year."

this is not a leap year.
python不僅僅可以使用布林型變數作為條件,它可以直接在if中使用任何表示式作為條件:

大部分表示式的值都會被當作true,但以下表示式值會被當作false

mylist =[3

,1,4

,1,5

,9]if mylist:

print

"the first element is:"

, mylist[0]

else

:print

"there is no first element."

the first element is: 3
修改為空列表:

mylist =

if mylist:

print

"the first element is:"

, mylist[0]

else

:print

"there is no first element."

there is no first element.
當然這種用法並不推薦,推薦使用if len(mylist) > 0:來判斷乙個列表是否為空。

Python學習之控制流部分

0 引論 前面介紹了基礎資料部分,本節將總結一下python的控制流。有了基礎資料以及控制流,則就可以寫出一些初步的程式。可以說語言通用的部分就是基礎資料和控制流,這兩部分構成了一門語言最最基本的部分。控制流主要有順序結構,if結構,迴圈結構。下面一一介紹。1 賦值語句 x 1 x 1 除了最基本的...

python學習之基礎之spyder

1,安裝anacoda後測試,安裝詳細見 開啟spyder,新建檔案,測試 執行 視窗 2,新建乙個test.py,測試 test.py print hello word sum tmp 0 for i in range 1,101,1 sum tmp i print sum tmp 字串的定義和引...

Python基礎學習之python教程

萬丈高樓平地起,要學好爬蟲還得熟練掌握python,下面列出了我曾經看過的一些教程及 吧,供小夥伴們參考,順便也記錄一下。學習 w3cschool python教程 廖老師的python教程,通俗易懂,基本看完了這個就可以開始上手寫python了。學習 廖雪峰python教程 另外,w3cschoo...