《Python程序設計基礎》 課件第2章python的基本語法_第1頁
《Python程序設計基礎》 課件第2章python的基本語法_第2頁
《Python程序設計基礎》 課件第2章python的基本語法_第3頁
《Python程序設計基礎》 課件第2章python的基本語法_第4頁
《Python程序設計基礎》 課件第2章python的基本語法_第5頁
已閱讀5頁,還剩36頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第2章

Python的基本語法數據運算選擇結構循環結構for循環思維導圖知識目標掌握掌握掌握12掌握選擇結構用法掌握

while循環結構用法4掌握for循環結構用法3掌握Python運算符

和表達式技能目標掌握掌握掌握掌握運算符及表達式的編程應用12掌握選擇結構的編程應用3掌握while循環的編程應用4掌握for循環的編程應用思政目標123舉一反三的創新思維和創新能力是成功的必備素養通過程序調試糾錯,培養學生耐心,專注,堅持的工匠精神通過“王永民發明五筆字型,漢字輸入實現‘登頂一跳’”的學習,激勵學生增強文化自信,爭做文化傳承的繼承者和弘揚者目錄選擇結構2.22.1數據運算2.3循環結構2.4for循環知識架構2.1數據運算1運算符2運算優先級3學生實踐練習2.1數據運算1運算符

常用的運算符有以下7個。1.算術運算符

與Java相同,Python運算符分別使用+、?、*、/、%實現加、減、乘、除、取模操作。Python語言還提供了兩個算術運算符,一個為“**”(冪),x**y表示返回x的y次冪,如定義變量a=10**2,則a的值為10的2次方等于100。另外一個為“//”(取整除),返回商的整數部分,如定義變量b=9//2,則b的值為9/2=4.5,取整數部分結果為4。2.比較運算符

在Python語言中,提供了“!=”和“<>”兩種不等于的運算符。其他的比較運算符==(等于)、>(大于)、<(小于)、>=(大于或等于)及<=(小于或等于)的使用和Java語言相同。2.1數據運算1

3.賦值運算符

Python語言中,使用“=”作為賦值符號,另外還有一種和算術運算符結合一起使用的賦值運算符,稱為復合賦值運算符,詳見表2.1。2.1數據運算1

4.位運算符表2.2中變量a為60,b為13,二進制格式如下:位運算符列表詳情見表2.2。a=00111100b=000011012.1數據運算14.位運算符2.1數據運算15.邏輯運算符

邏輯運算符列表詳情見表2.3。6.成員運算符成員運算符列表詳情見表2.4。2.1數據運算1

7.身份運算符

身份運算符列表詳情見表2.5。【示例2.1】輸出使用各種運算符之后的結果。

#算術運算符和復合賦值運算符2.1數據運算1

7.身份運算符a=2b=3c=16print("a+b=%d\ta*b=%d\tb-a=%d\tb/a=%d"%(a+b,a*b,b-a,b/a))print("b%a=",b%a)print("a**b(a的b次方)為:",a**b)print("c//b(c整除b)為:",c//b)#位運算符a=0b1001#定義二進制數1001,十進制表示9b=0b1101#十進制表示13print("a&b=%d\ta|b=%d\tb^a=%d\t~a=%d"%(a&b,a|b,b^a,~a))#邏輯運算符bool_a=Truebool_b=Falseprint("bool_aandbool_b等于",bool_aandbool_b)print("bool_aorbool_b等于",bool_aorbool_b)print("notbool_a等于",notbool_a)#成員運算符list=["trumple",23,"John"]print("'trumple'inlist等于",'trumple'inlist)print("'trumple'notinlist等于",'trumple'notinlist)#身份運算符c=5a=b=cprint("aisb",aisb)print("aisc",aisc)2.1數據運算1

7.身份運算符輸出使用各種運算符之后的結果如圖2.1所示。

通過圖2.1的運行結果可以看出,Python運算符大部分與Java語言類似。Python語言使用and和or作為“與”和“或”的運算符。添加了in操作符,判斷某個值是否在指定序列中。通過is操作符,判斷兩個標識符是不是引用自同一個對象。2.1數據運算2運算優先級

在Python程序中,各個運算符根據表2.6的內容,按照從上往下的順序依次執行。2.1數據運算2

運算優先級

【示例2.2】輸出多個變量之間使用各種運算符之后的結果。

程序分析:定義5個變量,5個變量之間可以交叉使用各種加(+)、減(?)、乘(*)、除(/)、取模(%)及括號等運算符。a=20b=10c=15d=5f=7e=(a+b)*c/d#(30*15)/5print("(a+b)*c/d運算結果為:",e)e=((a+b)*c)/d#(30*15)/5print("((a+b)*c)/d運算結果為:",e)e=(a+b%f)*(c/d)#(30)*(15/5)print("(a+b%f)*(c/d)運算結果為:",e)e=a+(b*c)/d%f#20+(150/5)print("a+(b*c)/d%f運算結果為:",e)2.1數據運算2運算優先級

輸出多個變量之間使用不同運算符之后的結果如圖2.2所示。

通過圖2.2所示的運行結果可以看出,Python運算符優先級基本和Java語言類似。如果想要某一個部分優先執行,可以將該部分代碼用小括號“()”包含起來。2.1數據運算3學生實踐練習

1.需求說明

某客戶在網上商城購買了一部手機,單價為5688元;購買了一個數碼相機,單價為2350元;又購買了2件襯衫,單價為120元;運動鞋3雙,單價為300元。目前商城打折促銷,數碼類產品一律打88折,衣服、鞋具類打9折。該客戶卡上有1萬元,請計算購買后卡上的余額。2.實現思路(1)先計算客戶此次網購所需的費用。(2)將卡上的金額減去所需的費用得出卡上的余額。知識架構2.2選擇結構1if選擇結構2if-else選擇結構3多重if語句4學生實踐練習2.2選擇結構1

Python提供了順序、條件和循環三種基本的流程控制結構,其中順序結構按照書寫順序依次執行所有的語句。條件選擇結構則是根據條件判斷結果來決定程序的執行流程。if選擇結構

單分支if語句是最基本的條件語句之一,它根據判斷指定條件是否成立來決定是否執行特定代碼。【語法】if條件表達式如下:

語句#條件成立時執行的代碼2.2選擇結構1if選擇結構

單分支if結構工作流程圖如圖2.4所示。

當條件表達式為真時,執行語句塊,為假時,跳過語句塊。若if語句后還存在其他語句,則繼續執行。

輸入商品價格,如果商品價格大于100,則商品打8折。可以通過以下代碼實現:price=int(input("請輸入商品的價格:"))#獲取輸入的商品價格并轉換為整數ifprice>100:#當商品價格滿足超出100的條件時,就會執行price=price*0.8語句

price=price*0.8#商品價格打8折2.2選擇結構2if-else選擇結構

單分支if語句只針對條件表達式為“真”時給出相應的處理,但對于條件表達式為“假”時沒有進行任何的處理。若需要對條件表達式為“真”和“假”執行不同的處理,則可以使用雙分支if結構。【語法】if條件表達式:

雙分支if結構工作流程如圖2.5所示。

當條件表達式條件不成立時,執行語句塊2,條件成立時執行語句塊1。語句塊1#條件成立時執行的代碼else:語句塊2

2.2選擇結構2

if-else選擇結構

【示例2.3】輸入商品價格,如果商品價格大于100,則商品打8折,否則商品打9折,然后輸出最后的商品價格。計算商品價格的結果如圖2.6所示。

通過圖2.6所示的運行結果可以看出,當商品價格滿足超出100的條件時,就會執行“price=price*0.8”語句,否則就會執行“price=price*0.9”語句。price=int(input("請輸入商品的價格:"))ifprice>100:

price=price*0.8#商品價格打8折else:

price=price*0.9#商品價格打9折print("商品價格為:",price)

2.2選擇結構3

多重if語句

當一個問題存在多種可能的條件時,需要對每一種條件分別進行處理。例如,商品促銷打折,價格超出100元,享受9折優惠,超過200元,享受8.5折優惠,超過300元,享受8折優惠。類似的情況在現實生活中還有很多,遇到這些情況時,使用簡單的條件結構已經無法滿足需求,可以使用多重條件結構解決此類問題。

在Python語言中,多重條件結構分為多重if結構和嵌套if結構。與Java語言不同的是,Python沒有switch語句。【語法】if條件表達式1:

語句塊1elif條件表達式2:

語句塊2elif條件表達式3:

語句塊3else:

語句塊42.2選擇結構3多重if語句多重if結構工作流程如圖2.7所示。

計算條件表達式1,若結果為真,則執行語句塊1;否則,計算條件表達式2,若結果為真,則執行語句塊2;否則計算條件表達式3,若結果為真,則執行語句塊3;否則執行語句塊4,對于一次條件判斷,只能選擇一個分支執行,不能同時執行。2.2選擇結構3多重if語句

【示例2.4】輸入購物金額,如果購物金額小于100,則商品打9.8折,等于或超過100但不超過300打9.5折,等于或超出300但不超出500打9折,500或以上打8折,然后輸出最后的購物金額。計算購物金額的結果如圖2.8所示。price=int(input("請輸入購物金額:"))ifprice<100:

price=price*0.98elifprice>=100andprice<300:

price=price*0.95elifprice>=300andprice<500:

price=price*0.9else:

price=price*0.8print("購物金額為:",price)2.2選擇結構4學生實踐練習1.需求說明

個人所得稅是對個人取得的各項所得征收的一種所得稅。個人所得稅起征點是指免征的額度,未超出起征點不用納稅。例如,某年個稅起征點為5000元,還可以減去6項專項附加扣除,主要有子女教育、繼續教育、贍養老人、大病醫療、住房貸款利息和住房租金,扣除三險一金和專項附加,工資大于5000元需要繳納個人所得稅,若小于5000元則不需要繳納。個人所得稅稅率見表2.7。2.2選擇結構4學生實踐練習個人所得稅計算公式如下:應納稅所得額=工資收入金額?各項社會保險費和附加專項?起征點(5000元)應納稅額=應納稅所得額×稅率?速算扣除數實現一個計算納稅人負擔稅款的個人所得稅的計算器,要求如下:(1)在控制臺輸入個人的工資總額及各項社會保險金的金額。(2)通過個人所得稅計算公式計算個人應納稅額2.實現思路(1)計算應納稅所得額。(2)判斷納稅所得額在哪一個區間,根據區間判斷稅率和速算扣除數知識架構2.3循環結構1循環控制語句2while循環3學生實踐練習2.3循環結構1循環控制語句

循環在執行過程中,只有在循環條件不成立的情況下,才可以退出循環的執行。例如,沿著運動場跑5圈,可以將該過程視為一個循環,只有在跑完5圈之后才可以終止循環。但實際情況中,由于個人的身體素質問題,會出現未完成任務的情況,就需要終止循環。與Java語言類似,Python也支持break語句和continue語句。同時,Python還提供了pass語句做空語句,表示什么都不執行。1.break語句

break語句作為中斷處理語句,只能在while和for循環結構中,用于中斷當前結構的執行,通常和條件語句一起執行。當滿足一定條件時,它可使程序立即退出當前語句結構,轉而執行該語句結構之后的語句。【語法】break2.3循環結構12.continue語句【語法】

continue語句只能用于循環語句中,通常和條件語句一同使用,當滿足一定條件時,終止本次循環,跳轉至下一次循環。

break語句在循環中用于結束循環執行,而continue語句在循環中用于結束本次循環,然后進入下一次循環。3.pass語句

Python語言中的pass語句是指空語句,是為了保持程序結構的完整性。pass不做任何事情,一般用作占位語句。【語法】continuepass2.3循環結構2while循環【語法】

循環可以解決重復執行某些操作的問題。Python提供了for循環和while循環語句,但沒有do...while循環。

【示例2.5】輸入一個數字,計算1到該數字之間,不能被3或5整除的所有數字之和。while循環條件:

循環操作num=int(input("請輸入一個正整數:"))sum=0#保存不能被3或5整除的數字之和index=1#保存每次循環的數值whileindex<=num:

ifindex%3==0orindex%5==0:

index=index+1#每次循環加1

continue

print(index,"不能被3或5整除")

sum=sum+index

index=index+1#每次循環加1print("1到%d之間不能被3或5整除的數字和為%d"%(num,sum))2.3循環結構2計算不能被3或5整除的所有數字之和的運行結果如圖2.10所示。while循環2.3循環結構3學生實踐練習1.需求說明使用while循環打印九九乘法表,格式的內容如下:2.實現思路(1)先定義一個1~9之間的循環。(2)在循環中再創建一個1到循環數值的子循環。1*1=12*1=22*2=43*1=33*2=63*3=9…知識架構2.4for循環

1in操作符2for循環3學生實踐練習2.4for循環1in操作符

in操作符用來在指定的序列中找到某一個值,如果找到,返回True,否則返回False。【語法】

其中序列可以是列表、元組或者字典。除了in,如果判斷指定序列中找不到某一個值,則使用notin,它剛好和in相反,使用方式一致。【示例2.6】判斷某個值是否在列表中。變量in序列a=10b=5list=[7,10,15,8]ifainlist:

print("變量a在給定的列表list中")else:2.4for循環1in操作符判斷某個值是否在列表中的運行結果如圖2.12所示。

print("變量a不在給定的列表list中")ifbnotinlist:

print("變量b不在給定的列表list中")else:

print("變量b在給定的列表list中")2.4for循環2for循環

Pythonfor循環可以遍歷任何序列的項目,如一個列表或者一個字符串。與Java語言不同,Python語言中的for循環固定只有“for變量in序列:”這一種語法格式。【語法】

在Python語言中,for循環只能遍歷序列(包括列表、元組、字典)等。但很多時候習慣使用for循環遍歷從一個數到另外一個數之間所有的數字。例如,在Java語言中,計算1~100的和可以使用for(inti=1;i<=100;i++)的方式,然而在Python語言中這種格式是不被允許的,但它提供了range函數幫我們達到同樣的效果。

range()函數返回一個列表值,該函數有(start,end,scan)三個參數,其中start表示起始數字,默認從0開始。例如,range(5)等價于range(0,5);end表示結束的數字,但不包括該數字。例如,range(0,5)表示[0,1,2,3,4],其中沒有5;scan表示每次跳躍的間距。例如,range(0,5)等價于range(0,5,1)。for變量in序列(包括列表、元組、字典或字符串):

循環執行語句2.4for循環2for循環

【示例2.7】分別循環輸出列表、元組、字典、字符串中的各個元素,并使用range()函數計算1~100的和。#循環輸出列表元素list=[5,12,8,7,9]foriinlist:

print(i)print("----------")#循環輸出元組元素tuple=(7,5,13,8)#定義一個元組fortintuple:

print(t)print("---------")#循環輸出字典元素dict={"name":"Trumple","age":17,"sex":"man"}fordindict:

print("%s對應的值為%s"%(d,dict[d]))print("------------")#循環輸出字符串元素string="hellokitty!"forsinstring:

print(s)#使用range()函數計算1~100的和sum=0#保存1~100之間的和foriinrange(1,101):

sum=sum+iprint("1-100之間的和為:",sum)2.4for循環2for循環使用Range()函數計算1~100的和的運行結果如圖2.13所示。2.4for循環3學生實踐練習1.需求說明2.實現思路

“回文”是指正讀、反讀都能讀通的句子,而回文數是指一個數字將它的各位數字反向排列后還等于它本身的數字。例如,數字12321中各位數字反向排列還是12321,所以12321是回文

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論