




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第1章概述1第1章概述11.1Python語言簡介Python是一門跨平臺、開源、免費(fèi)的解釋型高級動態(tài)編程語言。Python支持命令式編程(Howtodo)、函數(shù)式編程(Whattodo),完全支持面向?qū)ο蟪绦蛟O(shè)計(jì),擁有大量擴(kuò)展庫。膠水語言:可以把多種不同語言編寫的程序融合到一起實(shí)現(xiàn)無縫拼接,更好地發(fā)揮不同語言和工具的優(yōu)勢,滿足不同應(yīng)用領(lǐng)域的需求。21.1Python語言簡介Python是一門跨平臺、開源1.1Python語言簡介問題解決:把列表中的所有數(shù)字都加5,得到新列表。(命令式編程)>>>x=list(range(10))>>>x[0,1,2,3,4,5,6,7,8,9]>>>y=[]>>>fornuminx:y.append(num+5)
>>>y[5,6,7,8,9,10,11,12,13,14]>>>[num+5fornuminx][5,6,7,8,9,10,11,12,13,14]3循環(huán),遍歷x中的每個元素列表方法,在尾部追加元素列表推導(dǎo)式創(chuàng)建列表空列表1.1Python語言簡介問題解決:把列表中的所有數(shù)字都1.1Python語言簡介問題解決:把列表中的所有數(shù)字都加5,得到新列表。(函數(shù)式編程)>>>x=list(range(10))>>>x[0,1,2,3,4,5,6,7,8,9]>>>defadd5(num):returnnum+5>>>list(map(add5,x))[5,6,7,8,9,10,11,12,13,14]>>>list(map(lambdanum:num+5,x))[5,6,7,8,9,10,11,12,13,14]4定義函數(shù),接收一個數(shù)字,加5后返回把函數(shù)add5映射到x中的每個元素lambda表達(dá)式,等價于函數(shù)add51.1Python語言簡介問題解決:把列表中的所有數(shù)字都1.2Python版本簡介Python目前存在2.x和3.x兩個系列的版本,互相之間不兼容。在選擇Python版本的時候,一定要先考慮清楚自己學(xué)習(xí)Python的目的是什么,打算做哪方面的開發(fā),該領(lǐng)域或方向有哪些擴(kuò)展庫可用,這些擴(kuò)展庫最高支持哪個版本的Python。這些問題全部確定以后,再最終確定選擇哪個版本。Python2.x系列最遲將于2020年全面放棄維護(hù)和更新。51.2Python版本簡介Python目前存在2.x和31.3Python開發(fā)環(huán)境安裝與配置6默認(rèn)編程環(huán)境:IDLE其他常用開發(fā)環(huán)境:Eclipse+PyDevpyCharmwingIDEEricPythonWinAnaconda3(內(nèi)含Jupyter和Spyder):/downloadzwPython1.3Python開發(fā)環(huán)境安裝與配置6默認(rèn)編程環(huán)境:ID1.3.1IDLE7命令提示符每次只能執(zhí)行一條語句1.3.1IDLE7命令提示符每次只能執(zhí)行一條語句1.3.1IDLE81.3.1IDLE81.3.2Anaconda391.3.2Anaconda391.3.2Anaconda3101.3.2Anaconda3101.4Python編程規(guī)范與代碼優(yōu)化建議(1)縮進(jìn)類定義、函數(shù)定義、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)、with塊,行尾的冒號表示縮進(jìn)的開始。python程序是依靠代碼塊的縮進(jìn)來體現(xiàn)代碼之間的邏輯關(guān)系的,縮進(jìn)結(jié)束就表示一個代碼塊結(jié)束了。
同一個級別的代碼塊的縮進(jìn)量必須相同。一般而言,以4個空格為基本縮進(jìn)單位。111.4Python編程規(guī)范與代碼優(yōu)化建議(1)縮進(jìn)111.4Python編程規(guī)范與代碼優(yōu)化建議(2)每個import語句只導(dǎo)入一個模塊,最好按標(biāo)準(zhǔn)庫、擴(kuò)展庫、自定義庫的順序依次導(dǎo)入。121.4Python編程規(guī)范與代碼優(yōu)化建議(2)每個imp1.4Python編程規(guī)范與代碼優(yōu)化建議(3)最好在每個類、函數(shù)定義和一段完整的功能代碼之后增加一個空行,在運(yùn)算符兩側(cè)各增加一個空格,逗號后面增加一個空格。131.4Python編程規(guī)范與代碼優(yōu)化建議(3)最好在每個1.4Python編程規(guī)范與代碼優(yōu)化建議(4)盡量不要寫過長的語句。如果語句過長,可以考慮拆分成多個短一些的語句,以保證代碼具有較好的可讀性。如果語句確實(shí)太長而超過屏幕寬度,最好使用續(xù)行符(linecontinuationcharacter)“\”,或者使用圓括號將多行代碼括起來表示是一條語句。141.4Python編程規(guī)范與代碼優(yōu)化建議(4)盡量不要寫1.4Python編程規(guī)范與代碼優(yōu)化建議(5)雖然Python運(yùn)算符有明確的優(yōu)先級,但對于復(fù)雜的表達(dá)式建議在適當(dāng)?shù)奈恢檬褂美ㄌ柺沟酶鞣N運(yùn)算的隸屬關(guān)系和順序更加明確、清晰。151.4Python編程規(guī)范與代碼優(yōu)化建議(5)雖然Pyt1.4Python編程規(guī)范與代碼優(yōu)化建議(6)注釋以符號#開始,表示本行#之后的內(nèi)容為注釋。包含在一對三引號'''...'''或"""..."""之間且不屬于任何語句的內(nèi)容將被解釋器認(rèn)為是注釋。161.4Python編程規(guī)范與代碼優(yōu)化建議(6)注釋161.5擴(kuò)展庫安裝方法pip在線安裝(命令提示符環(huán)境,建議切換至Python安裝目錄中的scripts文件夾執(zhí)行)pip離線安裝:/~gohlke/pythonlibs/exe安裝,不是每個擴(kuò)展庫都支持conda在線安裝如果機(jī)器上安裝了多個Python開發(fā)環(huán)境,那么在一個環(huán)境下安裝的擴(kuò)展庫無法在另一個環(huán)境下使用,需要分別安裝。171.5擴(kuò)展庫安裝方法pip在線安裝(命令提示符環(huán)境,建議1.5擴(kuò)展庫安裝方法18pip命令示例說明pipdownloadSomePackage[==version]下載擴(kuò)展庫的指定版本,不安裝pipfreeze[>requirements.txt]以requirements的格式列出已安裝模塊piplist列出當(dāng)前已安裝的所有模塊pipinstallSomePackage[==version]在線安裝SomePackage模塊的指定版本pipinstallSomePackage.whl通過whl文件離線安裝擴(kuò)展庫pipinstallpackage1package2...依次(在線)安裝package1、package2等擴(kuò)展模塊pipinstall-rrequirements.txt安裝requirements.txt文件中指定的擴(kuò)展庫pipinstall--upgradeSomePackage升級SomePackage模塊pipuninstallSomePackage[==version]卸載SomePackage模塊的指定版本把SomePackage替換為實(shí)際要安裝或卸載的擴(kuò)展庫名/~gohlke/pythonlibs/下載時選擇合適版本,并且不要修改文件名1.5擴(kuò)展庫安裝方法18pip命令示例說明pipdow1.6標(biāo)準(zhǔn)庫與擴(kuò)展庫對象的導(dǎo)入與使用Python默認(rèn)安裝僅包含基本或核心模塊,啟動時也僅加載了基本模塊,在需要時再顯式地導(dǎo)入和加載標(biāo)準(zhǔn)庫和第三方擴(kuò)展庫(需正確安裝),這樣可以減小程序運(yùn)行的壓力,并且具有很強(qiáng)的可擴(kuò)展性。從“木桶原理”的角度來看,這樣的設(shè)計(jì)與安全配置時遵循的“最小權(quán)限”原則的思想是一致的,也有助于提高系統(tǒng)安全性。191.6標(biāo)準(zhǔn)庫與擴(kuò)展庫對象的導(dǎo)入與使用Python默認(rèn)安裝1.6.1import模塊名[as別名]>>>importmath#導(dǎo)入標(biāo)準(zhǔn)庫math>>>math.sin(0.5)#求0.5(單位是弧度)的正弦0.479425538604203>>>importrandom#導(dǎo)入標(biāo)準(zhǔn)庫random>>>n=random.random()#獲得[0,1)內(nèi)的隨機(jī)小數(shù)>>>n=random.randint(1,100)#獲得[1,100]區(qū)間上的隨機(jī)整數(shù)>>>n=random.randrange(1,100)#返回[1,100)區(qū)間中的隨機(jī)整數(shù)>>>importos.pathaspath#導(dǎo)入標(biāo)準(zhǔn)庫os.path,并設(shè)置別名為path>>>path.isfile(r'C:\windows\notepad.exe')True>>>importnumpyasnp#導(dǎo)入擴(kuò)展庫numpy,并設(shè)置別名為np>>>a=np.array((1,2,3,4))#通過模塊的別名來訪問其中的對象>>>aarray([1,2,3,4])>>>print(a)[1234]201.6.1import模塊名[as別名]>>>i1.6.2from模塊名import對象名[as別名]>>>frommathimportsin#只導(dǎo)入模塊中的指定對象,訪問速度略快>>>sin(3)0.1411200080598672>>>frommathimportsinasf#給導(dǎo)入的對象起個別名>>>f(3)0.1411200080598672>>>fromos.pathimportisfile>>>isfile(r'C:\windows\notepad.exe')True211.6.2from模塊名import對象名[as1.6.3from模塊名import*>>>frommathimport*#導(dǎo)入標(biāo)準(zhǔn)庫math中所有對象>>>sin(3)#求正弦值0.1411200080598672>>>gcd(36,18)#最大公約數(shù)18>>>pi#常數(shù)π3.141592653589793>>>e#常數(shù)e2.718281828459045>>>log2(8)#計(jì)算以2為底的對數(shù)值3.0>>>log10(100)#計(jì)算以10為底的對數(shù)值2.0>>>radians(180)#把角度轉(zhuǎn)換為弧度3.141592653589793221.6.3from模塊名import*>>>fr1.7Python程序的__name__屬性通過Python程序的__name__屬性可以識別程序的使用方式:如果作為模塊被導(dǎo)入,則其__name__屬性的值被自動設(shè)置為模塊名;如果作為程序直接運(yùn)行,則其__name__屬性值被自動設(shè)置為字符串”__main__”。231.7Python程序的__name__屬性通過Pyth第1章概述24第1章概述11.1Python語言簡介Python是一門跨平臺、開源、免費(fèi)的解釋型高級動態(tài)編程語言。Python支持命令式編程(Howtodo)、函數(shù)式編程(Whattodo),完全支持面向?qū)ο蟪绦蛟O(shè)計(jì),擁有大量擴(kuò)展庫。膠水語言:可以把多種不同語言編寫的程序融合到一起實(shí)現(xiàn)無縫拼接,更好地發(fā)揮不同語言和工具的優(yōu)勢,滿足不同應(yīng)用領(lǐng)域的需求。251.1Python語言簡介Python是一門跨平臺、開源1.1Python語言簡介問題解決:把列表中的所有數(shù)字都加5,得到新列表。(命令式編程)>>>x=list(range(10))>>>x[0,1,2,3,4,5,6,7,8,9]>>>y=[]>>>fornuminx:y.append(num+5)
>>>y[5,6,7,8,9,10,11,12,13,14]>>>[num+5fornuminx][5,6,7,8,9,10,11,12,13,14]26循環(huán),遍歷x中的每個元素列表方法,在尾部追加元素列表推導(dǎo)式創(chuàng)建列表空列表1.1Python語言簡介問題解決:把列表中的所有數(shù)字都1.1Python語言簡介問題解決:把列表中的所有數(shù)字都加5,得到新列表。(函數(shù)式編程)>>>x=list(range(10))>>>x[0,1,2,3,4,5,6,7,8,9]>>>defadd5(num):returnnum+5>>>list(map(add5,x))[5,6,7,8,9,10,11,12,13,14]>>>list(map(lambdanum:num+5,x))[5,6,7,8,9,10,11,12,13,14]27定義函數(shù),接收一個數(shù)字,加5后返回把函數(shù)add5映射到x中的每個元素lambda表達(dá)式,等價于函數(shù)add51.1Python語言簡介問題解決:把列表中的所有數(shù)字都1.2Python版本簡介Python目前存在2.x和3.x兩個系列的版本,互相之間不兼容。在選擇Python版本的時候,一定要先考慮清楚自己學(xué)習(xí)Python的目的是什么,打算做哪方面的開發(fā),該領(lǐng)域或方向有哪些擴(kuò)展庫可用,這些擴(kuò)展庫最高支持哪個版本的Python。這些問題全部確定以后,再最終確定選擇哪個版本。Python2.x系列最遲將于2020年全面放棄維護(hù)和更新。281.2Python版本簡介Python目前存在2.x和31.3Python開發(fā)環(huán)境安裝與配置29默認(rèn)編程環(huán)境:IDLE其他常用開發(fā)環(huán)境:Eclipse+PyDevpyCharmwingIDEEricPythonWinAnaconda3(內(nèi)含Jupyter和Spyder):/downloadzwPython1.3Python開發(fā)環(huán)境安裝與配置6默認(rèn)編程環(huán)境:ID1.3.1IDLE30命令提示符每次只能執(zhí)行一條語句1.3.1IDLE7命令提示符每次只能執(zhí)行一條語句1.3.1IDLE311.3.1IDLE81.3.2Anaconda3321.3.2Anaconda391.3.2Anaconda3331.3.2Anaconda3101.4Python編程規(guī)范與代碼優(yōu)化建議(1)縮進(jìn)類定義、函數(shù)定義、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)、with塊,行尾的冒號表示縮進(jìn)的開始。python程序是依靠代碼塊的縮進(jìn)來體現(xiàn)代碼之間的邏輯關(guān)系的,縮進(jìn)結(jié)束就表示一個代碼塊結(jié)束了。
同一個級別的代碼塊的縮進(jìn)量必須相同。一般而言,以4個空格為基本縮進(jìn)單位。341.4Python編程規(guī)范與代碼優(yōu)化建議(1)縮進(jìn)111.4Python編程規(guī)范與代碼優(yōu)化建議(2)每個import語句只導(dǎo)入一個模塊,最好按標(biāo)準(zhǔn)庫、擴(kuò)展庫、自定義庫的順序依次導(dǎo)入。351.4Python編程規(guī)范與代碼優(yōu)化建議(2)每個imp1.4Python編程規(guī)范與代碼優(yōu)化建議(3)最好在每個類、函數(shù)定義和一段完整的功能代碼之后增加一個空行,在運(yùn)算符兩側(cè)各增加一個空格,逗號后面增加一個空格。361.4Python編程規(guī)范與代碼優(yōu)化建議(3)最好在每個1.4Python編程規(guī)范與代碼優(yōu)化建議(4)盡量不要寫過長的語句。如果語句過長,可以考慮拆分成多個短一些的語句,以保證代碼具有較好的可讀性。如果語句確實(shí)太長而超過屏幕寬度,最好使用續(xù)行符(linecontinuationcharacter)“\”,或者使用圓括號將多行代碼括起來表示是一條語句。371.4Python編程規(guī)范與代碼優(yōu)化建議(4)盡量不要寫1.4Python編程規(guī)范與代碼優(yōu)化建議(5)雖然Python運(yùn)算符有明確的優(yōu)先級,但對于復(fù)雜的表達(dá)式建議在適當(dāng)?shù)奈恢檬褂美ㄌ柺沟酶鞣N運(yùn)算的隸屬關(guān)系和順序更加明確、清晰。381.4Python編程規(guī)范與代碼優(yōu)化建議(5)雖然Pyt1.4Python編程規(guī)范與代碼優(yōu)化建議(6)注釋以符號#開始,表示本行#之后的內(nèi)容為注釋。包含在一對三引號'''...'''或"""..."""之間且不屬于任何語句的內(nèi)容將被解釋器認(rèn)為是注釋。391.4Python編程規(guī)范與代碼優(yōu)化建議(6)注釋161.5擴(kuò)展庫安裝方法pip在線安裝(命令提示符環(huán)境,建議切換至Python安裝目錄中的scripts文件夾執(zhí)行)pip離線安裝:/~gohlke/pythonlibs/exe安裝,不是每個擴(kuò)展庫都支持conda在線安裝如果機(jī)器上安裝了多個Python開發(fā)環(huán)境,那么在一個環(huán)境下安裝的擴(kuò)展庫無法在另一個環(huán)境下使用,需要分別安裝。401.5擴(kuò)展庫安裝方法pip在線安裝(命令提示符環(huán)境,建議1.5擴(kuò)展庫安裝方法41pip命令示例說明pipdownloadSomePackage[==version]下載擴(kuò)展庫的指定版本,不安裝pipfreeze[>requirements.txt]以requirements的格式列出已安裝模塊piplist列出當(dāng)前已安裝的所有模塊pipinstallSomePackage[==version]在線安裝SomePackage模塊的指定版本pipinstallSomePackage.whl通過whl文件離線安裝擴(kuò)展庫pipinstallpackage1package2...依次(在線)安裝package1、package2等擴(kuò)展模塊pipinstall-rrequirements.txt安裝requirements.txt文件中指定的擴(kuò)展庫pipinstall--upgradeSomePackage升級SomePackage模塊pipuninstallSomePackage[==version]卸載SomePackage模塊的指定版本把SomePackage替換為實(shí)際要安裝或卸載的擴(kuò)展庫名/~gohlke/pythonlibs/下載時選擇合適版本,并且不要修改文件名1.5擴(kuò)展庫安裝方法18pip命令示例說明pipdow1.6標(biāo)準(zhǔn)庫與擴(kuò)展庫對象的導(dǎo)入與使用Python默認(rèn)安裝僅包含基本或核心模塊,啟動時也僅加載了基本模塊,在需要時再顯式地導(dǎo)入和加載標(biāo)準(zhǔn)庫和第三方擴(kuò)展庫(需正確安裝),這樣可以減小程序運(yùn)行的壓力,并且具有很強(qiáng)的可擴(kuò)展性。從“木桶原理”的角度來看,這樣的設(shè)計(jì)與安全配置時遵循的“最小權(quán)限”原則的思想是一致的,也有助于提高系統(tǒng)安全性。421.6標(biāo)準(zhǔn)庫與擴(kuò)展庫對象的導(dǎo)入與使用Python默認(rèn)安裝1.6.1import模塊名[as別名]>>>importmath#導(dǎo)入標(biāo)準(zhǔn)庫math>>>math.sin(0.5)#求0.5(單位是弧度)的正弦0.479425538604203>>>importrandom#導(dǎo)入標(biāo)準(zhǔn)庫random>>>n=random.random()#獲得[0,1)內(nèi)的隨機(jī)小數(shù)>>>n=random.randint(1,100)#獲得[1,100]區(qū)間上的隨機(jī)整數(shù)>>>n=random.randrange(1,100)#返回[1,100)區(qū)間中的隨機(jī)整數(shù)>>>importos.pathaspath#導(dǎo)入標(biāo)準(zhǔn)庫os.path,并設(shè)置別名為path>>>path.isfile(r'C:\windows\notepad.exe')True>>>importnumpyasnp#導(dǎo)入擴(kuò)展庫numpy,并設(shè)置別名為np>>>a=np.array((1,2,3,4))#通過模塊的別名來訪問其中的對象>>>a
溫馨提示
- 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 福建事業(yè)單位考試志愿服務(wù)管理知識題及答案
- 治安隊(duì)員面試題目及答案
- 2024年花藝師資格考試的調(diào)研與案例分析試題及答案
- 2024年農(nóng)藝師考試中的模擬測試技巧試題及答案
- 各高校輔導(dǎo)員教育評價能力試題及答案
- 各高校輔導(dǎo)員活動組織考試試題及答案
- 基礎(chǔ)護(hù)士筆試題庫及答案
- 2025至2030年安定劑項(xiàng)目投資價值分析報告
- 關(guān)于花藝作品的文化內(nèi)涵試題及答案
- 項(xiàng)目管理面試題目及答案
- QC匯報:超前止水后澆帶施工
- 云南天安化工有限公司67.5萬噸(P2O5)年濕法磷酸初級凈化研發(fā)及應(yīng)用環(huán)境影響報告書
- (完整版)不銹鋼管彎管器的使用方法及操作流程
- 基于PLC的小區(qū)排水控制系統(tǒng)設(shè)計(jì)畢業(yè)論文
- 線切割機(jī)工操作規(guī)程
- 【基于近五年數(shù)據(jù)的鴻星爾克財(cái)務(wù)報表分析15000字】
- 8.5.1直線與直線平行 課件(共24張PPT)
- 通用個人簡歷word模板
- TD-T 1066-2021 不動產(chǎn)登記數(shù)據(jù)庫標(biāo)準(zhǔn)
- 污水處理設(shè)備調(diào)試方案
- 中國郵政集團(tuán)公司人才發(fā)展規(guī)劃
評論
0/150
提交評論