1. 程式人生 > >條件分支和迴圈

條件分支和迴圈

1、if語句

每條if語句的核心都是一個值為True或False的表示式,這種表示式被稱為條件測試。Python根據條件測試的值為True還是False來決定是否執行If語句中的程式碼。如果條件測試的值為True,Python就執行緊跟在if語句後面的程式碼;如果為False,Python就忽略這些程式碼。

if 條件:

  條件為真(True)執行的操作

else:

  條件為(False)執行的操作

a = 10
b = 5
if a > b:
    print("a大於b")
else:
    print("b大於a")
# a大於b

 · 使用 and 檢查多個條件

a = 10
b = 5
if a > 8 and b > 8:
    print("a和b都大於80")
else:
    print("a或者b小於等於8")
# a或者b小於等於8

· 使用 or 檢查多個條件

a = 10
b = 5
if a > 8 or b > 8:
    print("a或者b大於8")
else:
    print("a和b都小於8")
# a或者b大於8

· if-elif-else 結構

a = 10
if a > 15:
    print("a大於15")
elif a > 12:
    print("a大於12")
else:
    print("a小於等於12")
# a小於等於12

· 使用多個 elif 程式碼塊

age = 12
if age < 4:
    price = 0
elif age < 18:
    price = 5
elif age < 65:
    price = 10
else:
    price = 5

2、條件表示式(三元運算子)

if x < y:
    small = x
else:
    small = y
# 上邊的程式碼可以用三元運算子來表示

small = x if x < y else y

3、斷言

斷言(assert),當這個關鍵詞後邊的條件為假的時候,程式自動崩潰並丟擲AssertionError的異常

assert 3 > 4

# Traceback (most recent call last):
#   File "D:/PythonProjects/demo.py", line 1, in <module>
#     assert 3 > 4
# AssertionError  

一般來說,可以用它在程式中置入檢查點,當需要確保程式中的某個條件一定為真才能讓程式正常工作時,assert關鍵字就非常有用了。

4、while迴圈

Python 的 while 迴圈跟 if 條件分支類似,在條件為真的情況下,執行一段程式碼,不同的是,只要條件為真,while 迴圈會一直重複執行那段程式碼,把這段程式碼稱為迴圈體。

while 條件:

  迴圈體

5、for 迴圈語句

favourite = 'Fish'
for each in favourite:
    print(each)
# F
# i
# s
# h

6、range()內建函式

語法:

range([start,] stop[, step = 1])

這個BIF有三個引數,其中用中括號括起來的兩個 表示這兩個引數是可選的。step = 1 表示第三個引數的預設值是 1。作用是生產一個從 start 引數的值開始,到 stop 引數的值介紹的數字序列。

· 傳遞一個引數

注:只傳遞一個引數的 range() ,例如 range(5) ,它會將第一個引數預設設定為 0 ,生成 0~5 的所有數字,包含 0 但不包含 5

for i in range(5):
    print(i)
# 0
# 1
# 2
# 3
# 4

` 傳遞兩個引數

for i in range(2, 9):
    print(i)
# 2
# 3
# 4
# 5
# 6
# 7
# 8

· 傳遞三個引數

for i in range(1, 10, 2):
    print(i)
# 1
# 3
# 5
# 7
# 9

7、break 語句

break 語句的作用是終止當前迴圈,跳出迴圈體。

for i in range(10):
    #當 i = 5 時,終止迴圈
    if i == 5:
        break
    else:
        print(i)
# 0
# 1
# 2
# 3
# 4

8、continue 語句

continue 語句的作用是終止本輪迴圈並開始下一輪迴圈

#輸出10以內可以被2整除的數
for i in range(1, 10):
    if i % 2 == 0:
        print(i)
    else:
        continue
# 2
# 4
# 6
# 8