1、順序結構
順序結構顧名思義就是按語句的順序執行語句,這裏不再贅述
2、if語句分支結構
if語句可以解決有分支的問題,在Python中構造分支結構是用if、elif、else關鍵字,採用縮進的方式來設置代碼的層次結構。
雙分支if語句的格式:
if 判斷語句:
執行語句
else:
執行語句
三分支或多分支if語句的格式
if 判斷語句:
執行語句
elif 判斷語句:
pass #pass代表空語句
elif 判斷語句:
執行語句
……
else:
執行語句
if語句是可以多層嵌套的
3、循環結構
循環結構可以輕鬆的控制代碼重複執行,Python中構造循環結構有兩種方法,一種是for語句,一種是while語句。
for循環
如果明確的知道循環執行的次數或者是要對一個容器進行迭代,那麼我們推薦使用for-in循環,採用縮進的方式來設置代碼的層次結構。
for語句的語句格式爲
for 迭代變量 in 字符串|列表|元組|字典|集合:
執行語句
例如:
sum = 0
for i in range(1,100,2):
sum += x
print(sum)
for語句裏i可以對range(101)這個數值序列進行遍歷,
第一次執行,i = 1
第二次執行,i = 3
第三次執行,i = 5
……
需要說明的是上面代碼中的range類型,range可以用來產生一個不變的數值序列,而且這個序列通常都是用在循環中的,例如:
range(101)可以產生一個0到100的整數序列。
range(1,100)可以產生一個1到99的整數序列。
range(1,100,2)可以產生一個1到99的奇數序列,其中的2是步長,即數值序列的增量。
while循環
如果要構造不知道具體循環次數的循環結構,我們推薦使用while循環
while語句的格式
while 判斷語句: #判斷語句爲真時執行下面語句,爲假時結束循環
執行語句
判斷控制語句
例:
import random
answer = random.randint(1, 100)
counter = 0
while True:
counter += 1
number = int(input('請輸入: '))
if number < answer:
print('大一點')
elif number > answer:
print('小一點')
else:
print('恭喜你猜對了!')
break
print('你總共猜了%d次' % counter)
if counter > 7:
print('你的智商餘額明顯不足')
while——else語句
while——else語句用於while邊界
'''導入系統客戶端包,這個包能夠實現語音合成的功能'''
import win32com.client
speaker = win32com.client.Dispatch('SAPI.SPVOICE') '''系統接口'''
i = 0
while i < 5:
speaker.Speak('張雪真是最漂亮的乖寶寶')
i += 1
else:
speaker.Speak('夠了,再漂亮還讓不讓人活了啊')
'''在讀第六次語音是會讀:夠了,再漂亮還讓不讓人活了啊'''
循環的跳出:
在循環語句中可以用break來提前終止循環,也可以用continue語句放棄本次循環後續的代碼直接讓循環進入下一輪。
break的用法:
num = 200
for i in range(1000):
if num == i:
print("find")
break
循環遇到break後循環終止,後續循環不再執行。
continue的用法:
for i in range(10,24):
if num == i:
print("find")
continue
else:
print(i)
循環遇到continue後結束本次循環,本次循環的後續代碼不再執行,直接執行下一次語句循環。
continue能夠起到很好的篩選作用
例如:
for i in range(100):
if i % 2 == 0:
continue
print(i) #會輸出100以內的奇數