-
>
全國計算機等級考試最新真考題庫模擬考場及詳解·二級MSOffice高級應用
-
>
決戰行測5000題(言語理解與表達)
-
>
軟件性能測試.分析與調優實踐之路
-
>
第一行代碼Android
-
>
JAVA持續交付
-
>
EXCEL最強教科書(完全版)(全彩印刷)
-
>
深度學習
無從零開始:Python基礎培訓教程 版權信息
- ISBN:9787301316597
- 條形碼:9787301316597 ; 978-7-301-31659-7
- 裝幀:一般膠版紙
- 冊數:暫無
- 重量:暫無
- 所屬分類:>
無從零開始:Python基礎培訓教程 本書特色
系統全面:零基礎入門+編程進階+開發實戰,鍛煉編程思維 實用性強:學得會+用得上+做得出,全面提升編程技能 排憂解難:“常見異常與解析”指點新手上路,為編程避坑
無從零開始:Python基礎培訓教程 內容簡介
本書是指導零基礎人員學習并運用 Python 進行編程的實用工具書,在編寫過程中充分考慮了讀者的理解能力和程序在生活中的應用場景,以基礎語法與應用相結合作為一條主線來進行講解,講敘內容循序漸進,案例豐富翔實,并且全部來源于實際工作開發中。 本書分為入門篇、進階篇和不錯篇。入門篇注重基礎知識的夯實,全方面說明語法的使用規則和實例,并進行系統性的分析,從而激發讀者對編程語言的思考,拓展其編寫能力。進階篇概述了面向對象的編程思想,并詳細說明了面向對象具有封裝、繼承、多態的特點。通過基礎語法的集成實現隊列(Queue)、棧(Stack)的數據結構,它們在程序運行中占據著很好重要位置。然后通過一定的邏輯處理關系集成語法實現冒泡、選擇等多種排序算法來滿足讀者對于算法的好奇心。很后涉及的進程和線程等內容,可以作為高并發優化方案。不錯篇通過網絡編程實現本地與網絡的連接通道,以及網絡間的通信,再結合數據庫對持久化數據的處理達到實現網絡間數據共享的目的。然后,通過使用國人編寫的框架pyspider 進行爬蟲,以及使用 Django 和 Vue 框架創建 Web 項目。通過 wxpy 庫實現 Python 操作微信發送消息等基礎功能的開發,很后通過案例講解當今熱門應用微信小程序的開發。 本書適合零基礎或基礎薄弱,但又想快速掌握 Python 基礎技能的讀者學習和實踐,也可作為編程開發人員提升 Python 技能水平和豐富實戰經驗的指導用書,同時還可作為廣大職業院校、計算機培訓班相關專業與技能的教學參考用書。
無從零開始:Python基礎培訓教程 目錄
1.1初識Python 3
1.1.1 Python的由來 3
1.1.2 Python的應用領域 4
1.1.3 Python 2和Python 3的版本
區別 5
1.2 Python的安裝 6
1.2.1 Windows系統的Python
安裝 7
1.2.2 Linux系統的Python安裝 14
1.3 Python編輯工具 17
1.3.1 Pycharm和Eclipse 18
1.3.2 工具的配置 22
思考與練習 26
常見異常與解析 26
本章小結 28
2.3.4 邏輯運算符 37
2.3.5 成員運算符 37
2.4 數據類型 38
2.4.1 基本數據類型 38
2.4.2 基本類型轉換 39
思考與練習 40
常見異常與解析 41
本章小結 42
3.1 集合 44
3.1.1 創建和添加元素 44
3.1.2 刪除集合 44
3.1.3 更新集合 45
3.1.4 集合邏輯運算 46
3.2 列表 46
3.2.1 序列與列表 46
3.2.2 列表基本操作 48
3.3 元組與字典 51
3.3.1 元組 52
3.3.2 字典 52
3.4 字符串 57
3.4.1 字符串基本操作 57
3.4.2 字符串常用操作 59
思考與練習 60
常見異常與解析 63
本章小結 64
4.1 條件語句 66
4.1.1 if...else語句 66
4.1.2 if...elif語句 67
4.1.3 嵌套條件語句 68
4.1.4 斷言 69
4.1.5 類三目運算 69
4.2 循環語句 70
4.2.1 while循環 70
4.2.2 for循環 72
4.2.3 嵌套for循環 74
4.2.4 循環語句與條件語句 74
4.3 異常 75
4.3.1 異常介紹 75
4.3.2 捕獲異常 75
4.3.3 自定義異常 76
思考與練習 77
常見異常與解析 79
本章小結 80
5.1 函數定義 82
5.1.1 函數的定義 82
5.1.2 可變參數和關鍵字參數 83
5.2 變量與函數 84
5.2.1 函數中的變量 84
5.2.2 私有函數與公開函數 85
5.3 裝飾器 86
5.3.1 無參數裝飾器 86
5.3.2 帶參數裝飾器 88
5.4 遞歸 90
5.4.1 遞歸出口 90
5.4.2 二分搜索 91
5.4.3 文件查找 91
5.5 匿名函數和高階函數 92
5.5.1 匿名函數 92
5.5.2 map遍歷函數 93
5.5.3 filter過濾函數 94
5.5.4 reduce復合函數 94
5.5.5 sorted排序函數 95
思考與練習 95
常見異常與解析 96
本章小結 98
6.1 re模塊 100
6.1.1 常用符號 100
6.1.2 re模塊操作 101
6.2 正則與頁面爬取 103
6.2.1 requests庫 103
6.2.2 爬取今日天氣狀況 105
思考與練習 106
常見異常與解析 107
本章小結 108
第2篇 進階篇
7.1 面向對象編程 111
7.1.1 面向對象特性 111
7.1.2 類的成員 111
7.1.3 訪問限制 111
7.2 特殊類的方法與函數 113
7.2.1 getter方法和setter方法 113
7.2.2 property函數 114
7.2.3 魔法函數 115
7.3 面向對象程序設計的特點 116
7.3.1 封裝 116
7.3.2 繼承 116
7.3.3 多態 117
7.4 特殊方法和反射 118
7.4.1 靜態方法和類方法 118
7.4.2 反射 119
思考與練習 120
常見異常與解析 121
本章小結 122
8.1 隊列和棧數據結構 124
8.1.1 隊列 124
8.1.2 棧 125
8.2 排序算法 126
8.2.1 冒泡排序 127
8.2.2 插入排序 127
8.2.3 選擇排序 128
思考與練習 128
常見異常與解析 129
本章小結 130
9.1 目錄操作 132
9.1.1 創建目錄 132
9.1.2 目錄基本操作 132
9.2 文件 133
9.2.1 讀/寫文件 133
9.2.2 刪除文件 135
9.2.3 用with語句打開文件 136
思考與練習 137
常見異常與解析 137
本章小結 138
10.1 進程 140
10.1.1 多進程 140
10.1.2 守護進程 142
10.2 線程 143
10.2.1 多線程 143
10.2.2 同步鎖 146
10.2.3 守護線程 147
思考與練習 149
常見異常與解析 150
本章小結 152
第3篇 高級篇
11.1 網絡編程概述 155
11.1.1 初識TCP/UDP協議 155
11.1.2 套接字簡介 157
11.2 socket編程 158
11.3 I/O模式 159
11.3.1 阻塞I/O模式 160
11.3.2 非阻塞I/O模式 161
11.3.3 異步I/O模式 161
11.3.4 I/O復用模式 162
常見異常與解析 163
本章小結 164
12.1 MySQL安裝 166
12.1.1 準備工作 166
12.1.2 安裝 167
12.2 數據庫的使用 171
12.2.1 數據庫連接 171
12.2.2 數據庫創建 173
12.2.3 數據庫表的CRUD 175
12.2.4 事務的ACID特性 182
12.3 非關系型數據庫 182
12.3.1 NoSQL的分類 182
12.3.2 Redis安裝 183
12.3.3 持久化 185
常見異常與解析 187
本章小結 188
13.1 網頁爬蟲概述 190
13.1.1 初識爬蟲 190
13.1.2 爬蟲分類 190
13.2 網頁爬取 191
13.2.1 安裝pyspider 191
13.2.2 爬取愛動物網站 193
13.2.3 存儲數據 197
13.2.4 狀態選擇 201
常見異常與解析 203
本章小結 206
14.1 常見設計模式 208
14.1.1 單例模式 208
14.1.2 簡單工廠模式 211
14.1.3 工廠方法模式 212
14.2 Django 框架 214
14.2.1 初識Django框架 214
14.2.2 搭建Django項目 215
14.2.3 訪問MySQL數據庫 217
14.2.4 model模型 220
14.2.5 view視圖 223
14.3 Web項目 225
14.3.1 項目準備 225
14.3.2 前后端分離 226
14.3.3 訪問數據庫 229
14.3.4 數據持久化 232
14.3.5 自定義中間件 235
14.3.6 禁止異地同時在線 237
14.3.7 假分頁與真分頁 240
14.3.8 退出 241
常見異常與解析 242
本章小結 246
15.1 wxpy庫應用 248
15.1.1 登錄微信 248
15.1.2 發送消息 250
15.2 微信小程序 251
15.2.1 準備工作 251
15.2.2 創建項目 251
15.2.3 建立連接 253
15.3 開發小程序 254
15.3.1 開發須知 254
15.3.2 登錄頁面 254
15.3.3 APP配置 256
15.4 數據處理 258
15.4.1 初始化數據 258
15.4.2 鉤子函數 260
15.4.3 登錄信息 261
15.4.4 音樂播放 262
15.4.5 熱門電影 263
15.5 小程序調試設置說明 265
常見異常與解析 266
本章小結 268
無從零開始:Python基礎培訓教程 節選
1.1 初識Python Python由何而來,又是如何演變的?它能夠帶來怎樣的樂趣?我們又該如何利用它呢?接下來,一起進入Python的世界吧。 1.1.1 Python的由來 Python是由Guido van Rossum創立的。在1989年的圣誕節,Guido希望能創造出一種全新的語言,即一種介于C和shell之間的語言,且功能全面、易學易用,并可拓展。于是他開發了一種新的腳本解釋語言,之所以選擇Python作為程序的名字,是因為他是Monty Python喜劇團體的愛好者。 1.Python的發展歷程 Python的構想是建立在ABC語言上的,在Guido看來,ABC失敗的原因主要是作為高級語言出世過早,其平臺遷移能力弱,難以添加新功能,僅僅專注于編程初學者,沒有把有經驗的編程人員納入其中。追根溯源,非開放語言都是很難發展的,這也是ABC沒有流行起來的原因。Guido決心在Python 中避免這些錯誤,于是Python**個公開發行版于1991年誕生了。Python 2.0版于2000年10月16日發布,在原有的Python 1.0版中加入了內存回收機制,構成了現在Python語言框架的基礎,同年Web框架的Django也誕生了,其中*穩定的是Python 2.7版。Python 3版于2008年12月3日發布,不完全兼容Python 2版。2011年1月,Python被TIOBE編程語言排行榜評為2010年度語言。 有些人喜歡用“膠水語言”來形容Python,是因為它可以很輕松地將許多其他語言編寫的模塊結合在一起。現在國外有許多名校已將Python語言列入必修課的范圍,鼓勵學生進行學習。此外,在國內使用Python語言工作的單位數量也在增加。隨著語言的發展,Python語言的種類也更加廣泛了。 2.Python的分類 有人說Python是用C語言寫的,也有人說Python是用Java寫的,其實Python是根據語言的實現方式不同來加以區分的,這里主要介紹以下3種。 (1)CPython CPython 是Python的官方版本,使用C語言實現,使用*為廣泛。CPython實現會將源文件(py文件)轉換成字節碼文件(pyc文件),然后運行在Python虛擬機上。 (2)Jython Jython是Python的Java實現。Jython可將Python代碼動態編譯成Java字節碼,然后在JVM虛擬機上運行。 (3)IronPython IronPython是一個NET平臺的Python實現,包括完整的Python、執行引擎與運行支持,能夠與NET已有的庫無縫整合到一起。 這三者與Python之間的關系如圖1-1所示。 圖 1-1 Python 常見種類實現 除此之外,Python還有RubyPython、Brython等眾多種類,當前*主流的Python,其版本就是CPython。 1.1.2 Python的應用領域 Python可以應用于眾多領域,如系統運維、Web網頁開發、人工智能、開源云計算技術、GUI圖形、爬蟲等。業內很多大中型互聯網企業都在使用Python,如YouTube、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、騰訊、美團等。 下面就簡單介紹Python的應用領域。 (1)系統運維 Python是運維人員**的編程語言之一。一般說來,Python編寫的系統管理腳本在可讀性、性能、代碼重用度、擴展性等方面都優于普通的shell腳本。如Python運維工具fabric能自動登錄其他服務器進行各種操作,這種實現方式使用shell是很難做到的。 (2)Web網頁開發 眾多大型網站均是使用Python開發的,如有Google、YouTube、Dropbox、豆瓣等,在此領域較為流行的技術性Web框架有Django、Flask、Tornado等,相對于其他語言來說,Python網頁使用一個框架就可以集成項目所需要的全部業務,因此更容易學習和使用。 (3)人工智能 人工智能中關于機器學習部分包含有深度學習,在Python中就有TensorFlow這樣的深度學習框架。TensorFlow是谷歌公司發布的開源框架,涉及自然語言處理、機器翻譯、圖像描述、圖像分類等一系列技術,這些技術更是當今機器學習的熱點部分。谷歌公司把Python作為首選開發語言,并且在Python中涵蓋有大量科學計算框架和庫,如Matplotlib、Numpy、Scikit-Learn、Pandas,它們的運用場景分別是對數據的繪圖、矩陣計算和對數據的建模。這些數據的處理和分析都可以在Python中找到對應的庫。 (4)開源云計算技術 云計算管理平臺OpenStack是一個云操作系統框架,基于這個框架可以集成不同的各類組件,實現滿足不同場景需要的云操作系統。如此功能強大的云計算服務,其項目的構成都是標準的Python項目。 云計算管理平臺OpenStack是一個云操作系統框架,基于這個框架可以集成不同的各類組件,實現滿足不同場景需要的云操作系統。如此功能強大的云計算服務,其項目的構成都是標準的Python項目。 (5)GUI圖形界面 在Python中常見的GUI工具包有PyQT、TkInter、wxPython,這些都是常用的圖形化編程模塊,此外wxPython還具有跨平臺且可視化操作微信的功能。 (6)爬蟲 相較其他語言來說,Python擁有較成熟的爬蟲技術,其中涉及Scrapy和Pyspider等框架。 Python在生活中的應用遠不止這些,它還可以與其他技術結合使用。如OpenCV是一個開源發行的跨平臺計算機視覺庫,其擁有較豐富的常用圖像處理函數庫,配合Python可以實現人機互動 、物體識別、圖像分割 、人臉識別 、動作識別等多種功能。 由此可見,生活中到處都充滿著Python,而且Python是一個簡單的、解釋型的、交互式的、可移植的、面向對象的腳本編程語言,非常適用于初學編程人員。Python的低門檻讓越來越多人喜愛和使用,同樣也會給它帶來新的生命力。 1.1.3 Python 2和Python 3的版本區別 隨著用戶反饋及開發者對開源的積極貢獻,Python誕生出越來越適應用戶的版本,那么Python 2和Python 3這兩個版本有哪些區別呢?Python 3是否只是在Python 2原有基礎上進行了繼續擴展?下面先對Python的歷史進程進行講述。 2008年 Python 3.0版發布,Python 2.7版于2010年7月3日發布,并計劃作為Python 2.x版的*后一版,發布該版的目的在于,通過提供一些兩者之間兼容性的措施,使 Python 2.x版的用戶更容易將功能移植到 Python 3版上。這種兼容性支持包括Python 2.7版的增強模塊,如支持測試自動化的unittest。雖然目前官網關于該版的更新還在持續進行,然而Python 2.7版被認為是一種遺留語言,且它的后續開發,包括現在*主要的 bug 修復,將在2020年完全停止。 下面介紹這兩個版本之間的主要區別。 1.性能 Python 3.0版運行 pystone benchmark的速度比Python 2.5版慢30%。Guido認為Python 3.0版有極大的優化空間,尤其在字符串和整形操作上可以取得更好的優化結果。 Python 3.1版性能比Python 2.5版慢15%,還有很大的提升空間。有*新數據測試表明Python 3.7版比Python 2.7版快1.19倍,但是其他Python 3版的速度都沒有Python 2.7版快。 2.編碼 Python 2.x版對中文編程不太友好,如涉及中文需要在頭部使用“# -*- coding: utf-8 -*-”進行編碼聲明,因為源碼文件默認使用ASCII編碼格式,而Python 3.x版的源碼文件默認使用utf-8編碼,也就是說可以用中文進行編碼,示例如下: >>>國產 = 'made in China' >>>print(國產) 3.語法 Pyhon 3版與Python 2版相比,在語法上進行了很多優化,為方便讀者理解和學習下面列舉比較常見的6個語法。 (1)print語句 Python 2版中,print是一個語句,無論想輸出什么,直接放到print關鍵字后面即可。Python 3版中,print()是一個函數,像其他函數一樣,需要將要輸出的內容作為參數來傳遞。 (2)I/O方法xreadlines() Python 2版中,文件對象有一個xreadlines()方法,即返回一個迭代器,一次讀取文件的一行。這在for循環中尤其實用。在Python 3版中,xreadlines()方法不再可用。 (3)全局函數filter() 在Python 2版中,filter()方法返回一個列表。在Python 3版中,filter()函數返回一個迭代器,不再是列表。 (4)StandardError異常 Python 2版中,StandardError是除StopIteration、GeneratorExit、KeyboardInterrupt、SystemExit外所有其他內置異常的基類。Python 3版中StandardError已經被取消,用Exception取代了。 (5)itertools模塊 Python 2.3版引入itertools模塊,定義了zip()、map()、filter()的變體,這個變體返回的是迭代器,而非列表。在Python 3版中這些函數返回的本身就是迭代器,所以這些變體函數就被取消了。 (6)全局函數callable() Python2版中,可以使用全局函數callable()來檢查一個對象是否可調用。在Python 3版中,這個全局函數被取消了,可以通過檢查其特殊方法__call__()的存在性來確定一個對象是否可以調用。 溫馨提示 出于對讀者初學語言的考慮,此處僅簡單進行了區別說明,可以對部分語法熟悉之后再來回顧,更詳細的區別可以參考其官方文檔。 1.2 Python的安裝 Python的安裝與其他語言相比是*簡單、快捷的,既可以讓軟件自己配置環境變量,也可以自定義。不同的操作系統對應的Python安裝過程也不同。Python的安裝是開始編碼的**步。這里將介紹Windows系統中Python的安裝和Linux系統中Python的安裝。 Python的安裝與其他語言相比是*簡單、快捷的,既可以讓軟件自己配置環境變量,也可以自定義。不同的操作系統對應的Python安裝過程也不同。Python的安裝是開始編碼的**步。這里將介紹Windows系統中Python的安裝和Linux系統中Python的安裝。 1.2.1 Windows系統的Python安裝 初學者普遍使用Windows操作系統,因此本書后續將采用Windows系統進行平臺開發。眾所周知,Python是開源免費的,讀者只需要選擇適合自己的版本進行安裝即可。
無從零開始:Python基礎培訓教程 作者簡介
楊焓,高級軟件開發工程師。長期從事軟件系統開發、集成和數據分析工作,對多種編程語言和數據庫有深入研究,積極探索人工智能在大數據集模型基礎上對醫學圖像、語音識別領域等方面的應用。對物聯網行業應用與開發有著豐富的經驗,長期著手于程序和物品間網絡通信開發,編寫智能機器人算法和性能控制。
- >
回憶愛瑪儂
- >
史學評論
- >
小考拉的故事-套裝共3冊
- >
推拿
- >
山海經
- >
我從未如此眷戀人間
- >
月亮虎
- >
羅庸西南聯大授課錄