《Python編程基礎(chǔ)》課件-第1章 Python語言基礎(chǔ)_第1頁
《Python編程基礎(chǔ)》課件-第1章 Python語言基礎(chǔ)_第2頁
《Python編程基礎(chǔ)》課件-第1章 Python語言基礎(chǔ)_第3頁
《Python編程基礎(chǔ)》課件-第1章 Python語言基礎(chǔ)_第4頁
《Python編程基礎(chǔ)》課件-第1章 Python語言基礎(chǔ)_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

Python3基礎(chǔ)教程第2版慕課版第1章Python語言基礎(chǔ)本章主要內(nèi)容:Python概述Python程序運行方式Python開發(fā)環(huán)境1.1Python概述本節(jié)主要內(nèi)容Python的發(fā)展Python的特點Python的版本1.1.1Python的發(fā)展吉多·范羅蘇姆(GuidovanRossum)于1989年開始開發(fā)Python作為巨蟒劇團(MontyPython)喜劇團體的粉絲,吉多將這門新的語言命名為Python。Python的靈感來自ABC語言——吉多參與開發(fā)的一種適用于非專業(yè)程序開發(fā)人員的教學(xué)語言。吉多認為ABC語言優(yōu)美、功能強大,ABC未獲得成功的原因主要是非開放。吉多一開始就將Python定位為開放性語言。Python起源于ABC,并受到了Modula-3語言的影響,同時結(jié)合了Unixshell和C的習(xí)慣。TIOBE程序設(shè)計語言排行榜1.1.2Python的特點1.Python是免費的開源自由軟件Python遵循GPL協(xié)議,是免費和開源的,不管用于何種用途,開發(fā)人員都無需支付任何費用,也不用擔(dān)心版權(quán)問題。2.Python是面向?qū)ο蟮拿嫦驅(qū)ο螅∣bjectOriented,OO)是現(xiàn)代高級程序設(shè)計語言的一個重要特征。Python具有多態(tài)、運算符重載、繼承和多重繼承等面向?qū)ο缶幊蹋∣bjectOrientedProgramming,OOP)的主要特征。1.1.2Python的特點3.Python具有良好的跨平臺特性Python是用ANSIC語言實現(xiàn)。C語言因為跨平臺和良好的可移植性成為了經(jīng)典的程序設(shè)計語言。這意味著Python也具有良好的跨平臺特性,可在目前所有的主流平臺上編譯和運行。1.1.2Python的特點4.Python功能強大動態(tài)數(shù)據(jù)類型:Python在代碼運行過程中跟蹤變量的數(shù)據(jù)類型,不需要聲明變量的數(shù)據(jù)類型,也不要求在使用之前對變量進行類型聲明。自動內(nèi)存管理:良好的內(nèi)存管理機制意味著程序運行具有更高的性能。Python程序員無需關(guān)心內(nèi)存的使用和管理,Python會自動分配和回收內(nèi)存。大型程序支持:通過子模塊、類和異常等工具,Python可用于大型程序開發(fā)。內(nèi)置數(shù)據(jù)結(jié)構(gòu):Python提供了常用數(shù)據(jù)結(jié)構(gòu)支持。例如,集合、列表、字典、字符串等都屬于Python內(nèi)置類型,用于實現(xiàn)相應(yīng)的數(shù)據(jù)結(jié)構(gòu)。同時,Python也實現(xiàn)了各種數(shù)據(jù)結(jié)構(gòu)的標準操作,如合并、分片、排序和映射等。內(nèi)置標準庫:Python提供豐富的標準庫,如從正則表達式匹配到網(wǎng)絡(luò)等,使Python可以實現(xiàn)多種應(yīng)用。第三方工具集成:Python通過擴展包集成第三方工具,從而應(yīng)用到各種不同領(lǐng)域。1.1.2Python的特點5.Python簡單易學(xué)Python的設(shè)計理念是“優(yōu)雅”“明確”“簡單”,提倡“用一種方法,最好是只用一種方法來做一件事”。所以,Python語言語法簡潔、代碼易讀。一些知名大學(xué)(如卡耐基梅隆大學(xué)、麻省理工學(xué)院等)開始采用Python作為程序設(shè)計課程的編程語言。執(zhí)行importthis命令顯示Python哲學(xué)和設(shè)計思想Python之禪(譯文)優(yōu)美勝于丑陋明了勝于晦澀簡單勝于復(fù)雜復(fù)雜勝于雜亂扁平勝于嵌套間隔勝于緊湊可讀性很重要特例不足以特殊到違背這些原則不要忽視錯誤,除非程序需要這樣做面對模棱兩可,拒絕猜測解決問題最直接的方法應(yīng)該有一種,最好只有一種可能這種方法一開始不夠直接,因為你不是范羅蘇姆做也許好過不做,但不想就做還不如不做如果方案難以描述明白,那么一定是個糟糕的方案如果容易描述,那么可能是個好方案命名空間是一種絕妙的理念,多加利用1.1.3Python的版本版本號年份0.9.0~1.21991~19951.3~1.5.21995~19991.6、2.020001.6.1、2.0.1、2.1、2.1.120012.1.2、2.1.320022.2~2.72001~至今3.x2008~至今Python通過一個參與者眾多的開發(fā)社區(qū)來保持版本更新和改進。Python的開發(fā)者通過一個在線的源代碼控制系統(tǒng)協(xié)同工作,所有對Python的修改必須遵循Python增強提案(PythonEnhancementProposal,PEP),并通過Python擴展回歸測試系統(tǒng)的測試。目前,由一個非正式的組織Python軟件基金(PythonSoftwareFoundation,PSF)負責(zé)組織會議并處理Python的知識產(chǎn)權(quán)問題。Python3.0不再向后兼容,Python2.7將作為Python2.x的最后一個版本。但Python2.x依然得到眾多開發(fā)人員的支持,Python因此也一直保持該版本的更新。Python官方已決定于2020年停止對Python2.7的支持,從而使開發(fā)人員有充裕的時間過渡到Python3.x。為了方便敘述,本書在后面的內(nèi)容中將Python3.x簡稱為Python3,Python2.x簡稱為Python2。目前,Python3的最新版本為3.8.0(2019年11月)。Python官方主頁:《全國計算機等級考試二級Python語言程序設(shè)計考試大綱(2018年版》建議考試使用的Python版本為3.4.2~3.5.3。1.1.4Python3與Python2的區(qū)別1.Python3中的所有文本均使用Unicode編碼Python3中的字符默認使用Unicode編碼(UTF-8),可以很好地支持中文或其他非英文字符。在Python3中,不需要使用“u”或“U”前綴表示Unicode字符,但二進制字符串必須使用“b”或“B”前綴。Python2中不能使用漢字作為變量名,否則會出錯。1.1.4Python3與Python2的區(qū)別2.print()函數(shù)代替了print語句Python3使用print()函數(shù)來輸出數(shù)據(jù),示例代碼如下。>>>x=100>>>print(10,'abc',x)10abc100Python2使用print語句輸出數(shù)據(jù),示例代碼如下。>>>x=100>>>print10,'abc',x10abc100>>>print(10,'abc',x) #print語句將(10,'abc',x)作為一個元組輸出(10,'abc',100)1.1.4Python3與Python2的區(qū)別3.完全的面向?qū)ο驪ython2中的各種數(shù)據(jù)類型,在3中全面升級為類(class)。例如,在Python2中測試數(shù)據(jù)類型結(jié)果如下。>>>int,float,str(<type'int'>,<type'float'>,<type'str'>)在Python3中測試數(shù)據(jù)類型結(jié)果如下。>>>int,float,str(<class'int'>,<class'float'>,<class'str'>)1.1.4Python3與Python2的區(qū)別4.部分方法和函數(shù)用視圖和迭代器代替了列表下面的常用方法或函數(shù)在Python2中返回列表,在Python3中有多處改變。字典的keys()、items()和values()方法用返回視圖代替了列表。不再支持Python2中的iterkeys()、iteritems()和itervalues()。

map()、filter()和zip()函數(shù)用返回迭代器代替了列表。1.1.4Python3與Python2的區(qū)別5.比較運算中的改變比較運算的主要改變?nèi)缦隆S谩?=”代替了“<>”。比較運算“<”“<=”“>=”和“>”在無法比較兩個數(shù)據(jù)大小時,會產(chǎn)生TypeError異常。在Python2中,1<‘’、0>None、len<=len(函數(shù)名進行比較)等運算返回True,而在Python3中則會產(chǎn)生TypeError異常。在判斷運算“==”和“!=”中,不兼容類型的數(shù)據(jù)視為不相等。1.1.4Python3與Python2的區(qū)別6.整數(shù)類型的改變整數(shù)類型的主要改變?nèi)缦?。不再有長整數(shù)(long)的概念,整數(shù)類型只有int一種。在Python3中,“/”除法運算返回浮點數(shù)(float),“//”除法會只保留整數(shù)部分。Python2在兩個整數(shù)的“/”除法運算中返回整數(shù)(截斷了小數(shù)部分)。整數(shù)不再限制大小,刪除sys模塊中的maxint(最大整數(shù))常量。不再支持以數(shù)字0開頭的八進制常量(如012),而改成用前綴“0o”表示(如0o12)。1.1.4Python3與Python2的區(qū)別7.字符串的改變在Python2中:字符串中的字符默認為單字節(jié),字符串的類型有str和unicode兩種。帶前綴“u”或“U”的Unicode字符串的類型為unicode(注意首字母小寫)其他的字符串(包含帶前綴“b”“B”“r”或“R”的字符串)為str類型。在Python3中:字符默認為Unicode字符,即雙字節(jié)字符。字符串的數(shù)據(jù)類型分為str和bytes兩種。仍可使用字符串前綴“u”或“U”,但會被忽略。字符串前綴“b”或“B”表示二進制字符串,其類型為bytes。1.1.4Python3與Python2的區(qū)別8.取消了file數(shù)據(jù)類型Python3取消了Python2中的file數(shù)據(jù)類型。使用open()函數(shù)打開文件時,返回的是_io.TextIOWrapper類的實例對象,示例代碼如下。>>>f=open('d:/test.txt','w')>>>type(f)<class'_io.TextIOWrapper'>Python2的open()函數(shù)返回的是file類型的對象,示例代碼如下。>>>f=open('d:/test.txt','w')>>>type(f)<type'file'>1.1.4Python3與Python2的區(qū)別9.異常處理的改變在Python3中,異常處理的改變主要如下。

BaseException是所有異常類的基類,刪除了StardardError異常。取消了異常類的序列行為和message屬性。用raiseException(args)代替raiseException,args語法在捕獲異常的except語句中引入了as關(guān)鍵字。1.1.4Python3與Python2的區(qū)別10.其他主要的語法改變其他主要的語法改變?nèi)缦?。增加了關(guān)鍵字as和with。增加了常量True、False、None。加入nonlocal語句。使用noclocalx聲明x為函數(shù)外部的變量。刪除了raw_input(),用input()代替。刪除了元組參數(shù)解包。不能用def(a,(b,c)):pass類似的語句定義函數(shù)。增加了2進制字面量,如b'0110110110'。bin()函數(shù)可返回整數(shù)的2進制字符串。擴展的可迭代解包。在Python3里,“a,b,*x='1234'”和“*x,a='1234'”都是合法的。對象和序列是可迭代的。面向?qū)ο笠肓顺橄蠡?。類的迭代器方法next()改名為__next__(),并增加內(nèi)置函數(shù)next(),用以調(diào)用迭代器的__next__()方法。1.2運行Python程序本節(jié)主要內(nèi)容Python程序的運行方式Python程序的可執(zhí)行文件1.2.1Python程序的運行方式Python程序有兩種運行方式:程序文件運行和交互式運行。程序文件是包含一系列Python語句的源代碼文件,文件擴展名通常為py。在Windows的命令提示符窗口中,可使用Python.exe來執(zhí)行Python程序文件。首先,由Python解釋器將py文件翻譯成字節(jié)碼文件,再由Python虛擬機(PythonVirtualMachine,PVM)逐條翻譯、執(zhí)行字節(jié)碼中的Python語句。Python還可以通過交互方式運行。在Windows系統(tǒng)的命令提示符窗口中運行Python.exe,可進入Python的交互環(huán)境。在其中輸入Python語句后,按【Enter】鍵運行,1.2.2Python程序的可執(zhí)行文件可將Python程序打包為一個獨立的可執(zhí)行程序,即凍結(jié)二進制文件(FrozenBinary)。凍結(jié)二進制文件是將Python程序的字節(jié)碼、PVM以及程序所需的Python支持文件等捆綁到一起形成的一個獨立文件。在Windows系統(tǒng)中,凍結(jié)二進制文件是一個exe

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論