第四章學習知識導圖
本章概述:本章目的是了解基礎的Python基本數據類型,較基礎,難度不大,需認真掌握
考點主要是:
1) 程序的三種控制結構
2) 程序的分支結構: 單分支結構、二分支結構、多分支結構
3) 程序的循環結構: 遍曆循環、無限循環、break和continue循環控制
4) 程序的異常處理: try-except
5) 作者歸納:
這章建議先把用法弄懂背會,然後就是做題,考試考算法的題并不多,而且挺多python都有簡單的處理方法,并不需要選擇循環。總的來說就是這章學的不難,考的挺多。所以這章就是多做題刷題,作者會在下一次更新前四章的課後實例解析和課後習題和答案
這段時間大部分地區的計算機二級都可以報名了,建議報名的同學早點開始學習,等8月份的時候時間就有點緊了。
一、程序的基本結構
1、程序的基本結構
程序由三種基本結構組成:順序結構、分支結構和循環結構。
任何程序都由這三種基本結構組合而成
這些基本結構都有一個入口和一個出口。任何程序都由這三種基本結構組合而成
在循環結構原理的基礎上,Python提供兩個循環控制符break和continue,對循環的執行過程進行控制。break控制符用來結束當前循環,continue控制符用來結束當前循環的當次循環過程(較重點,考試會考選擇題,刷題的時候多留心一點)
2、分支結構
(1) 單分支if
Python的單分支結構使用if保留字對條件進行判斷,使用方式如下
if <條件>:
····語句塊
其中,if、:和<語句塊>前的縮進都是語法的一部分。<語句塊>是if條件滿足後執行的一個或多個語句序列,縮進表達<語句塊>與if的包含關系。
<條件>是一個産生True或False結果的語句,當結果為True時,執行<語句塊>,否則跳過<語句塊>
<條件>是一個或多個條件,多個條件間采用and或or進行邏輯組合。and表示多個條件“與”的關系,or表示多個條件“或”的關系
(2) 二分支結構: if-else語句
Python的二分支結構使用if-else保留字對條件進行判斷,語法格式如下:
if <條件>:
····<語句塊1>
else:
····<語句塊2>
其中,if、:和語句塊前的縮進都是語法的一部分
<語句塊1>在if中<條件>滿足即為True時執行,<語句塊2>在if中<條件>不滿足即為False時執行。簡單說,二分支結構根據條件的True或False結果産生兩條路徑
二分支結構還有一種更簡潔的表達方式,适合<語句塊1>和<語句塊2>都隻包含簡單表達式的情況,語法格式如下:
<表達式1> if <條件> else <表達式2>
(3) 多分支結構: if-elif-else語句
Python的if-elif-else描述多分支結構,語句格式如下:
if <條件1>:
````<語句塊1>
elif <條件2>:
````<語句塊2>
else:
```` <語句塊N>
多分支結構通常用于判斷同一個條件或一類條件的多個執行路徑。要注意,Python會按照多分支結構的代碼順序依次評估判斷條件,尋找并執行第一個結果為True條件對應的語句塊,當前語句塊執行後跳過整個if-elif-else結構。
利用多分支結構編寫代碼時要注意多個邏輯條件的先後關系!!!
3、判斷條件及組合
(1) 關系操作符,結果為True或者False,初學者要與賦值=區分開
(2) Python語言中,任何非零的數值、非空的數據類型都等價于True,0或空類型等價于False,可以直接用作判斷條件
例如:“”空字符串就是False
(這裡其實二級考察并不難,而且二級python也沒多介紹,作者将在完善階段對這個考點進行更系統的介紹,暫時還未更新,如[]空集合在判斷條件中就是False)
(3) Python語言使用保留字not、and和or對條件進行邏輯運算或組着。保留字not表示單個條件的“否”關系,and表示多個條件之間的“與”關系,保留字or表示多個條件之間的“或”關系
4、程序的循環結構
(1) 程序的循環結構
Python語言的循環結構包括兩種:遍曆循環和無限循環。
遍曆循環使用保留字for依次提取遍曆結構各元素進行處理;
無限循環使用保留字while根據判斷條件執行程序
(2) 遍曆循環: for
遍曆循環可以理解為從遍曆結構中逐一提取元素,放在循環變量中,對于每個所提取的元素執行一次語句塊。for語句的循環執行次數是根據遍曆結構中元素個數确定的
for <循環變量> in <遍曆結構>: <語句塊>
遍曆結構可以是字符串、文件、range()函數或組合數據類型等
其實作者剛開始看這個也有點不明白,初學者不懂很正常,不過基本上看上十幾個用法就明白差不多了。作者自己感覺python的for循環比較清楚,而且在python中能用for循環最好就不要用while循環。
在這裡介紹一下range()用法,range(5)表示01234,range(1,5)表示1234,range(0,5,2)表示024
遍曆循環還有一種擴展模式,使用方法如下:
for <循環變量> in <遍曆結構>:
····<語句塊1>
else:
····<語句塊2>
當for循環正常執行之後,程序會繼續執行else語句中内容。else語句隻在循環正常執行之後才執行并結束,因此,可以在<語句塊2>中放置判斷循環執行情況的語句
(3) 無限循環: while
Python通過保留字while實現無限循環
while <條件>:
····<語句塊>
當程序執行到while語句時,判斷條件如果為True,執行循環體語句,語句結束後返回再次判斷while語句的條件;當條件為False時,循環終止,執行與while同級别縮進的後續語句
無限循環也有一種使用保留字else的擴展模式,使用方法如下:
while <條件>:
····<語句塊1>
else:
····<語句塊2>
在這種擴展模式中,當while循環正常執行之後,程序會繼續執行else語句中内容。else語句隻在循環正常執行後才執行,因此,可以在語句塊2中放置判斷循環執行情況的語句
(4) 循環控制: break和continue
循環結構有兩個輔助循環控制的保留字:break和continue。break用來跳出最内層for或while循環,脫離該循環後程序從循環後代碼繼續執行
如果有2層或多層循環,break退出最内層循環。
continue用來結束當前當次循環,即跳出循環體中下面尚未執行的語句,但不跳出當前循環
continue語句和break語句的區别是:continue語句隻結束本次循環,不終止整個循環的執行,而break具備結束循環的能力
二、程序的異常處理
Python程序一般對輸入有一定要求,但當實際輸入不滿足程序要求時,可能會産生程序的運行錯誤。
>>>n = eval(input("請輸入一個數字: "))
請輸入一個整數: python
Traceback (most recent call last):
File "<pyshell#11>", line 1, in <module> n = eval(input("請輸入一個數字: "))
File "<string>", line 1, in <module> NameError: name 'python' is not defined
由于使用了eval()函數,如果用戶輸入不是一個數字則可能報錯。這類由于輸入與預期不匹配造成的錯誤有很多種可能,不能逐一列出可能性進行判斷。為了保證程序運行的穩定性,這類運行錯誤應該被程序捕獲并合理控制
Python語言使用保留字try和except進行異常處理,基本的語法格式如下:
try:
····<語句塊1>
except:
····<語句塊2>
語句塊1是正常執行的程序内容,當執行這個語句塊發生異常時,則執行except保留字後面的語句塊2
除了輸入之外,異常處理還可以處理程序執行中的運行異常
三、本章小結
本章講解了程序的三種控制結構,具體講解了分支結構的三種類型:單分支結構、二分支結構合多分支結構,以及判斷條件的組合。進一步具體講解了循環結構的兩種類型:遍曆循環和無限循環,以及循環控制符break和continue。講解了程序的基本異常處理方法。
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!