大學(xué)計(jì)算機(jī)基礎(chǔ)(第6版)(微課版)第09講教案 Python 語言_第1頁
大學(xué)計(jì)算機(jī)基礎(chǔ)(第6版)(微課版)第09講教案 Python 語言_第2頁
大學(xué)計(jì)算機(jī)基礎(chǔ)(第6版)(微課版)第09講教案 Python 語言_第3頁
大學(xué)計(jì)算機(jī)基礎(chǔ)(第6版)(微課版)第09講教案 Python 語言_第4頁
大學(xué)計(jì)算機(jī)基礎(chǔ)(第6版)(微課版)第09講教案 Python 語言_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

課時(shí)內(nèi)容程序設(shè)計(jì)基礎(chǔ)(二)授課時(shí)間課時(shí)3教學(xué)目標(biāo)Python語法基礎(chǔ)。Python語言介紹。教學(xué)重點(diǎn)掌握程序設(shè)計(jì)的基本概念掌握程序設(shè)計(jì)的基本方法教學(xué)難點(diǎn)如何完成Python語言程序編寫的過程及程序的執(zhí)行。三種結(jié)構(gòu)的使用,特別是循環(huán)結(jié)構(gòu)。教學(xué)設(shè)計(jì)1、教學(xué)思路:(1)對程序設(shè)計(jì)的基本概念進(jìn)行簡述;(2)淺入深地介紹程序、程序設(shè)計(jì)、算法、程序設(shè)計(jì)的基本控制結(jié)構(gòu)、常用的程序設(shè)計(jì)語言、Python語言等知識;(3)通過程序設(shè)計(jì)的實(shí)例介紹,讓讀者了解程序設(shè)計(jì)的基本方法和步驟。2、教學(xué)手段:(1)通過演示講解基礎(chǔ)知識,講解結(jié)束后進(jìn)行練習(xí);(2)對于重點(diǎn)操作可以著重演示,并加強(qiáng)舉例說明。3、教學(xué)資料及要求:除了本章學(xué)到的數(shù)據(jù)庫的相關(guān)知識外,還要讓學(xué)員了解程序設(shè)計(jì)的基本控制結(jié)構(gòu),并對程序設(shè)計(jì)的基本方法和步驟有一個(gè)初步的認(rèn)識。教學(xué)內(nèi)容知識回顧:復(fù)習(xí)程序設(shè)計(jì)的概念,機(jī)器語言,匯編語言,高級語言,算法的概念。討論問題:1.利用計(jì)算機(jī)程序語言能做什么?2.偽語言和流程表示算法各有什么優(yōu)缺點(diǎn)?內(nèi)容大綱:具體可結(jié)合本章的PPT課件進(jìn)行配合講解。任務(wù)一程序設(shè)計(jì)語言的概念任務(wù)要求:復(fù)習(xí)不同層次的程序設(shè)計(jì)語言任務(wù)實(shí)現(xiàn):(一)機(jī)器語言由二進(jìn)制代碼形式組成的規(guī)定計(jì)算機(jī)動作的符號叫作計(jì)算機(jī)指令,這些指令的集合就是機(jī)器語言。機(jī)器語言與計(jì)算機(jī)硬件關(guān)系密切。用時(shí)煩瑣、費(fèi)時(shí),特別在程序有錯(cuò)需要修改時(shí),更是如此。(二)匯編語言為了解決使用機(jī)器語言編程的困難,20世紀(jì)50年代初,人們發(fā)明了匯編語言:用一些簡潔的英文字母、符號串來替代一個(gè)特定含義的二進(jìn)制串。例如:即0000001011001111就表示ADDCL,BH(三)高級語言從最初與計(jì)算機(jī)交流的痛苦經(jīng)歷中,人們意識到,應(yīng)該設(shè)計(jì)一種接近數(shù)學(xué)語言或自然語言,同時(shí)又不依賴計(jì)算機(jī)硬件,編出的程序能在所有機(jī)器上通用的語言。影響較大、使用較普遍的有C、C#、VisualC++、VisualBasic、.NET、Delphi、Java、ASP等用高級語言表示上述功能:CL=CL+BH通常將高級語言翻譯為機(jī)器語言的方式有兩種:解釋方式和編譯方式。任務(wù)二Python程序設(shè)計(jì)語言任務(wù)要求:了解Python語言的特點(diǎn),學(xué)會編寫簡單的Python語言程序。任務(wù)實(shí)現(xiàn):Python語言概述Python語言是非常優(yōu)秀的開源項(xiàng)目,其解釋器的全部代碼都是開源的,用戶可以到其官方網(wǎng)站下載。Python軟件基金會(PythonSoftwareFoundation,PSF)則致力于更好地推進(jìn)并保護(hù)Python語言的開放性。Python語言語法特點(diǎn)1.注釋規(guī)則(1)單行注釋(#)單行注釋以#開頭多行注釋。多行注釋用三個(gè)單引號(''')或雙引號(""")將注釋語句括起來。2.語句換行如果一個(gè)語句太長,全部寫在一行會顯得很不美觀,使用反斜杠(\)可以實(shí)現(xiàn)一條長語句的換行;3.一行寫多個(gè)語句Python允許將多個(gè)語句寫在同一行上,語句之間用分號隔開。4.代碼塊縮進(jìn)位置相同的一組語句形成一個(gè)代碼塊。例如,在下面示例代碼中,ifTrue:下面的兩行代碼就構(gòu)成了一個(gè)代碼塊。5.縮進(jìn)分層Python程序語言使用嚴(yán)格的縮進(jìn)來表示語句之間的邏輯關(guān)系,使得程序更加清晰和美觀。強(qiáng)制縮進(jìn)也可以避免不好的編程習(xí)慣,使得不正確的語句不能通過編譯。在正確的位置打上“:”,則系統(tǒng)會在下一行自動縮進(jìn)。例如下面程序所示。求1~100的和:sum=0 #累加器設(shè)置為sumforIinrange(101): #讓I從1變化到100sum=sum+I #將I的值加到sum上print(sum) #輸出結(jié)果在這個(gè)程序中,第三行縮進(jìn)表示該語句是第二行for循環(huán)體中的語句,而第一行和第四行不屬于循環(huán)。6.模塊Python中的模塊分為內(nèi)置模塊和非內(nèi)置模塊。import[模塊名]變量、常量、標(biāo)識符和關(guān)鍵字變量和保留字在給變量命名時(shí)需要遵循一定的規(guī)則。Python語言對變量命名可以使用大寫字母、小寫字母、數(shù)字、下畫線和漢字等字符(從編程習(xí)慣和跨平臺兼容性方面考慮,不建議使用漢字為變量命名),但是首字符不能是數(shù)字。變量名中間不能有空格,變量名的長度在語法上不做限制,但是受計(jì)算機(jī)資源層面的限制。在為變量命名時(shí),要注意和Python的保留字有所區(qū)別。保留字是Python語言已經(jīng)設(shè)定好的具有特殊用法和含義的標(biāo)識符。每種程序設(shè)計(jì)語言都有一套保留字,保留字一般用來構(gòu)成程序整體框架、表達(dá)關(guān)鍵值和具有結(jié)構(gòu)性的復(fù)雜語義等。賦值語句在Python語言中,賦值號使用“=”,將“=”右側(cè)的計(jì)算結(jié)果賦給左邊的變量或?qū)ο髮傩?。所以把包含?”的語句稱為賦值語句?;靖袷饺缦拢?lt;變量1>=<表達(dá)式1><對象1>.<屬性x>=<表達(dá)式x>給變量x賦值為2,給變量y賦值為3,語句可以寫為:>>>x=2>>>y=3Python語言提供了一種簡單的方式可以實(shí)現(xiàn)交換兩個(gè)變量的值的操作,即同步賦值?;靖袷饺缦拢?lt;變量1>,…,<變量n>=<表達(dá)式1>,…,<表達(dá)式n>如果采取同步賦值,交換x和y的值,則語句如下:>>>x,y=y,x基本數(shù)據(jù)類型1.?dāng)?shù)字類型Python語言設(shè)置了3種數(shù)據(jù)類型:整數(shù)、浮點(diǎn)數(shù)和復(fù)數(shù)。表8.1內(nèi)置數(shù)值運(yùn)算符操作符功能+加法運(yùn)算?減法運(yùn)算*乘法運(yùn)算/浮點(diǎn)除。結(jié)果為浮點(diǎn)數(shù)//整除。結(jié)果為不大于商的最大整數(shù)%余除。結(jié)果為余數(shù)**指數(shù)運(yùn)算。x**y即xy2.字符串類型對日常信息的表示,除了數(shù)值類型,還有字符串類型。字符串類型用于表示文本數(shù)據(jù)。在Python語言中,出現(xiàn)在兩個(gè)單引號(')或者兩個(gè)雙引號(")中的內(nèi)容,都被視為字符串類型數(shù)據(jù)。表8.8字符串基本操作符操作符功能x+y將字符串x和y進(jìn)行連接x*n將字符串x復(fù)制n次str[i]得到字符串中的第i個(gè)字符str[n:m]從字符串中獲得從n到m(不包括m)的子串xiny判斷字符串x是否存在于字符串y中,是返回True,否返回False輸入函數(shù)在編寫程序的過程中,參與計(jì)算的數(shù)值除了可以通過賦值語句獲得外,更多的情況是通過鍵盤輸入。在Python語言中,可以利用input()函數(shù)來獲得程序需要的數(shù)據(jù)?;菊Z法格式如下:<變量1>=input(<提示性文字>)輸出函數(shù)當(dāng)計(jì)算完成后,計(jì)算結(jié)果已經(jīng)生成,但是如果不使用語句將其顯示出來,那么它只存在于內(nèi)存中,用戶看不到。所以,每當(dāng)需要看到計(jì)算情況時(shí),可以使用print()函數(shù)。基本語法格式如下:print(value,…,sep='',end='\n')【例】從鍵盤輸入半徑的值,計(jì)算圓的周長和面積。r=eval(input('請輸入圓的半徑:')) #輸入部分:變量r代表圓的半徑l=2*3.14*r #計(jì)算部分:變量l代表圓的周長s=3.14*r*r #計(jì)算部分:變量s代表圓的面積print('圓的周長是:{:.2f}'.format(l)) #輸出部分:輸出周長print('圓的面積是:{:.2f}'.format(s)) #輸出部分:輸出面積在語句“print('圓的周長是:{:.2f}'.format(l))”中,大括號相當(dāng)于卡槽,將format后面括號里的內(nèi)容填入大括號所在的位置。在大括號中的“:.2f”是將format括號里的數(shù)據(jù)進(jìn)行保留兩位小數(shù)的處理。Python控制結(jié)構(gòu)條件分支語句1.單分支結(jié)構(gòu)在Python語言中,單分支語句的基本語法格式如下:if<條件>:<語句塊>當(dāng)條件成立,則執(zhí)行語句塊中的程序;否則跳過分支結(jié)構(gòu)?!纠砍绦蚺e例:如果購物金額超出1萬元,那么超出的部分打九折,并將實(shí)際付款金額顯示輸出。程序如下:money=eval(input('請輸入金額:'))ifmoney>1000:money=10000+(money-10000)*0.9print('實(shí)際金額是:{:.2f}'.format(money))2.雙分支結(jié)構(gòu)雙分支語句的基本語法格式如下:if<條件>:<語句塊1>else:<語句塊2>當(dāng)條件成立時(shí),執(zhí)行語句塊1的內(nèi)容;條件不成立時(shí),執(zhí)行語句塊2的內(nèi)容。3.多分支結(jié)構(gòu)多分支語句的基本語法格式如下:if<條件>:<語句塊1>elif<條件2>:<語句塊2>…else:<語句塊N>Python會依次計(jì)算第一個(gè)結(jié)果為True的條件,并執(zhí)行該條件下的語句塊。else是可選語句,如果沒有條件成立,則執(zhí)行else后面的語句塊。循環(huán)語句1.遍歷循環(huán):for語句如果循環(huán)次數(shù)確定,可以使用for語句。基本語法結(jié)構(gòu)如下:for<循環(huán)變量>in<遍歷結(jié)構(gòu)>:<循環(huán)體>在Python中for語句的循環(huán)次數(shù)是由遍歷結(jié)構(gòu)中元素個(gè)數(shù)確定的。遍歷循環(huán)通過從遍歷結(jié)構(gòu)中逐一提取元素賦值給循環(huán)變量,然后對于提取的每個(gè)元素執(zhí)行一次循環(huán)體。遍歷結(jié)構(gòu)可以是字符串、文件或是range()函數(shù)等?!纠烤帉懸粋€(gè)程序,求1~100這100個(gè)自然數(shù)的和。s=0foriinrange(101):s=s+iprint(s)在這個(gè)程序中,range(101)表示了循環(huán)結(jié)構(gòu)是從1~100的自然數(shù)。若要表示1~20的自然數(shù),可以寫為range(21),最后一個(gè)數(shù)取不到?!纠坷醚h(huán),引用字符串中的每個(gè)字符。forsin"程序設(shè)計(jì)":print('循環(huán)進(jìn)行中:'+s)else:print('循環(huán)結(jié)束')在這個(gè)遍歷循環(huán)中,循環(huán)結(jié)構(gòu)為字符串,那么循環(huán)變量s依次取得字符串中的每一個(gè)字符然后輸出。輸出結(jié)果如圖10.17所示。遍歷循環(huán)運(yùn)行結(jié)果2.無限循環(huán):while語句在大多數(shù)實(shí)際問題的解決過程中無法使用遍歷循環(huán),而需要根據(jù)某些特定的條件執(zhí)行循環(huán)語句,這種循環(huán)稱為無限循環(huán)?;菊Z法結(jié)構(gòu)如下:while<條件>:<循環(huán)體>在while中,當(dāng)條件成立時(shí),執(zhí)行循環(huán)體,條件不成立時(shí),跳過while語句,執(zhí)行后面與之同級的語句。Python數(shù)據(jù)結(jié)構(gòu)列表和字典列表是包含0個(gè)或多個(gè)對象引用的有序序列,沒有長度限制。列表用一對中括號“[]”表示。列表的內(nèi)容和長度都是可變的。創(chuàng)建列表的基本語法如下:<列表名>=[元素1,元素2,…,元素N]各個(gè)元素可以是數(shù)字,可以是字符串,也可以是列表。列表也屬于序列型數(shù)據(jù)。列表一旦生成,每一個(gè)元素就有了自己的索引號??梢詫α斜磉M(jìn)行增刪查改的操作。>>>list1=[1,2,3,'Python','你好',[4,5,5]]#創(chuàng)建一個(gè)列表,命名為list1>>>list1 #顯示列表內(nèi)容[1,2,3,'Python','你好',[4,5,5]]>>>list1[3] #顯示索引號為3的元素'Python'>>>list1[5] #顯示索引號為5的元素,該元素為列表[4,5,5]>>>list1.append(6) #在列表list1末尾追加一個(gè)元素6>>>list1 #顯示列表內(nèi)容[1,2,3,'Python','你好',[4,5,5],6]>>>list1.remove(3) #移除列表list1中的元素3>>>list1[1,2,'Python','你好',[4,5,5],6]>>>dellist1[0] #刪除list1中指定位置的元素>>>list1[2,'Python','你好',[4,5,5],6]>>>list1.insert(1,'插入') #在指定位置,插入具體元素>>>list1[2,'插入','Python','你好',[4,5,5],6]與列表功能類似的還有元組。在Python中,元組是由一對()括起來的序列,元組一旦生成便不能更改,它是不可變類型。2.字典在很多具體的應(yīng)用中,使用索引號不一定方便。Python語言提供了一種數(shù)據(jù)結(jié)構(gòu):字典。字典是由鍵值對組成的序列。通過鍵來查找值。例如電話號碼簿就是典型的鍵值組合。通過姓名來查找電話號碼。創(chuàng)建字典的基本語法格式如下:<字典名1>={鍵1:值1,鍵2:值2,…,鍵N:值N}字典由大括號括起來,鍵和值由冒號連接,各個(gè)對之間用逗號間隔。>>>dic1={'河北':'石家莊','江蘇':'南京','浙江':'杭州','河南':'鄭州'}#創(chuàng)建一個(gè)字典名為dic1>>>dic1.keys() #列出字典中所有鍵dict_keys(['河北','江蘇','浙江','河南'])>>>dic1.values() #列出字典中所有值dict_values(['石家莊','南京','杭州','鄭州'])>>>dic1.items() #列出所有鍵值對dict_items([('河北','石家莊'),('江蘇','南京'),('浙江','杭州'),('河南','鄭州')])在Python中用{}括起來的非鍵值對序列叫作集合,與數(shù)學(xué)概念的集合相似,可以進(jìn)行集合的交、并、差等運(yùn)算,集合中的數(shù)據(jù)不能重復(fù)。標(biāo)準(zhǔn)庫和第三方庫1.標(biāo)準(zhǔn)庫Python擁有強(qiáng)大的標(biāo)準(zhǔn)庫。Python語言的核心只包含數(shù)字、字符串、列表、字典、文件等常見類型和函數(shù),而由Python標(biāo)準(zhǔn)庫提供了系統(tǒng)管理、網(wǎng)絡(luò)通信、文本處理、數(shù)據(jù)庫接口、圖形系統(tǒng)、XML處理等額外的功能。Python標(biāo)準(zhǔn)庫命名接口清晰、文檔良好,很容易學(xué)習(xí)和使用。表8.12常用的標(biāo)準(zhǔn)庫應(yīng)用方向標(biāo)準(zhǔn)庫應(yīng)用方向標(biāo)準(zhǔn)庫文本string:通用字符串操作re:正則表達(dá)式操作difflib:差異計(jì)算工具textwrap:文本填充unicodedata:Unicode字符數(shù)據(jù)庫stringprep:互聯(lián)網(wǎng)字符串準(zhǔn)備工具readline:GNU按行讀取接口rlcompleter:GNU按行讀取的實(shí)現(xiàn)函數(shù)數(shù)據(jù)類型datetime:基于日期與時(shí)間工具calendar:通用月份函數(shù)collections:容器數(shù)據(jù)類型collections.abc:容器虛基類heapq:堆隊(duì)列算法bisect:數(shù)組二分算法array:高效數(shù)值數(shù)組types:內(nèi)置類型的動態(tài)創(chuàng)建與命名copy:淺拷貝與深拷貝pprint:格式化輸出reprlib:交替repr()的實(shí)現(xiàn)數(shù)學(xué)numbers:數(shù)值的虛基類math:數(shù)學(xué)函數(shù)cmath:復(fù)數(shù)的數(shù)學(xué)函數(shù)decimal:定點(diǎn)數(shù)與浮點(diǎn)數(shù)計(jì)算fractions:有理數(shù)random:生成偽隨機(jī)數(shù)文件與目錄zlib:兼容gzip的壓縮gzip:對gzip文件的支持bz2:對bzip2壓縮的支持lzma:使用LZMA算法的壓縮zipfile:操作ZIP存檔tarfile:讀寫tar存檔文件第三方庫Python的第三方庫大體分類有以下領(lǐng)域:網(wǎng)絡(luò)爬蟲

溫馨提示

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

最新文檔

評論

0/150

提交評論