《速學Python:程序設計從入門到進階》面向沒有任何編程基礎的初學者。全書共9章,第1、2章以盡可能少的篇幅,完成了對編程環(huán)境的搭建、編程的基本概念、Python語法、數(shù)據(jù)結(jié)構(gòu)、面向?qū)ο缶幊碳记傻闹v述,這一部分內(nèi)容雖然簡單,但它對初學者非常重要,只有完成這一部分內(nèi)容的學習,才能夠繼續(xù)深入。第3~6章是對第1、2章內(nèi)容的深入與補充,主要是搭建更好的開發(fā)環(huán)境,更詳細地講述數(shù)據(jù)結(jié)構(gòu)與函數(shù),并通過編寫一個計算器程序,深入了解解釋器的基本工作原理以及面向?qū)ο缶幊獭5?~9章講述了如何創(chuàng)建程序的可視化界面,將Python程序打包為可執(zhí)行程序并使用主流數(shù)據(jù)庫進行數(shù)據(jù)存儲,繼而實現(xiàn)數(shù)據(jù)分析與數(shù)據(jù)圖表的生成。第9章是Python語言*大優(yōu)勢的體現(xiàn),通過引入第三方庫或調(diào)用網(wǎng)絡接口,可以快速完成應用程序的編寫。
本書適合剛接觸Python的初學者以及希望使用Python處理和分析數(shù)據(jù)的讀者,也可作為編程愛好者學習和使用Python的工具書或參考資料。
和100000 讀者一起跟小樓老師學習,快速掌握編程語言Python
?·友好的中文編程環(huán)境方便讀者理解代碼邏輯
?·豐富的編程實例幫助讀者掌握編程技巧、成功構(gòu)建應用程序
隨書贈送全套案例源代碼及素材文件
Python近幾年越來越流行,在2021年已經(jīng)成為排名世界第一的編程語言。Python如此受歡迎,得益于它的簡單、優(yōu)雅與高效。簡單是因為它是一門高級編程語言,更適合人類閱讀;優(yōu)雅是因為Python代碼強制縮進的特點,讓每個人寫出的代碼都有清晰的結(jié)構(gòu);高效是因為Python有豐富的模塊可以進行調(diào)用,往往通過幾行代碼就能夠?qū)崿F(xiàn)特定功能。
在很多沒有接觸過編程的初學者看來,編程語言復雜枯燥。在自學過程中,很多編程的概念和代碼的邏輯會讓人感覺頭疼、難懂。在很多編程入門的學習資料中,很少詳細介紹基礎概念,對沒有任何編程基礎的初學者來說比較困難。
所以,學習編程語言,首先要做的就是理解編程的基本概念,掌握編程語言的語法,提升邏輯分析能力,養(yǎng)成良好的編程習慣。
這些都需要初學者由淺入深、循序漸進地完成,切不可操之過急!
在編寫這本書之前,我在自己的個人網(wǎng)站上發(fā)布過一系列的Python教程,受到很多讀者的歡迎。有些讀者將這些教程打印出來裝訂成冊進行學習,這也讓我有了編寫一本Python圖書的信心。
我一直思考如何讓完全沒有任何編程基礎的讀者能夠輕松有效地完成學習目標,所以在圖書的案例取材上盡量貼近讀者認知。并且盡量講清楚為何寫某一段代碼,而不是如何寫某一段代碼。
更重要的是,Python 3支持母語編程,這讓我能夠盡可能地將案例代碼中文化,讓讀者能夠更加方便地讀懂代碼邏輯,盡快實現(xiàn)學習目標。
全書共9章,第1、2章以盡可能少的篇幅,完成了對編程環(huán)境的搭建、編程的基本概念、Python語法、數(shù)據(jù)結(jié)構(gòu)、面向?qū)ο缶幊碳记傻闹v述,這一部分內(nèi)容雖然非常簡單,但它對初學者非常重要,只有完成這一部分內(nèi)容的學習,才能夠繼續(xù)深入。第3~6章是對第1、2章內(nèi)容的深入與補充,主要是搭建更好的開發(fā)環(huán)境,更詳細地講述數(shù)據(jù)結(jié)構(gòu)與函數(shù),并通過編寫一個計算器程序,深入了解解釋器的基本工作原理以及面向?qū)ο缶幊。?~9章講述了如何創(chuàng)建程序的可視化界面,將Python程序打包為可執(zhí)行程序并使用主流數(shù)據(jù)庫進行數(shù)據(jù)存儲,繼而實現(xiàn)數(shù)據(jù)分析與數(shù)據(jù)圖表的生成。第9章是Python語言最大優(yōu)勢的體現(xiàn),通過引入第三方庫或調(diào)用網(wǎng)絡接口,可以快速完成應用程序的編寫。
最后,本書能夠面世,離不開機械工業(yè)出版社編輯團隊的大力支持。讓我能夠歷時三年,完成了本書的編寫。
感謝出版社優(yōu)秀的編輯們,是你們讓本書變得更加精彩!
感謝每一位親愛的讀者,是你們給了我前進的動力!
小樓一夜聽春語
小樓老師(小樓一夜聽春語)。專注產(chǎn)品原型設計、前端開發(fā)、Python程序設計,自2013年起,開展的各類企業(yè)、個人培訓線上線下累計培訓人數(shù)近百萬,自2015年起,出版多部國內(nèi)口碑銷量卓著的Axure RP教程。
2017起,小樓老師致力于推動Python編程基礎教學,創(chuàng)辦個人網(wǎng)站www.opython.com,發(fā)布大量Python相關(guān)教程,以及兩本免費Python編程電子書。網(wǎng)站文章瀏覽量總計200余萬,切實滿足大Python編程學習者的實際需求。
前言
第1章 準備Python編程環(huán)境 / 1
1.1 快速了解Python / 1
1.2 極速下載安裝Python / 1
1.2.1 下載Python / 1
1.2.2 安裝Python / 2
1.3 極速熟悉環(huán)境 / 3
1.3.1 了解Python命令行模式 / 3
1.3.2 使用開發(fā)學習環(huán)境IDLE / 4
1.4 獲取Python官方文檔 / 5
第2章 編程初體驗編寫代碼解決問題 / 6
2.1 程序是怎么運行的 / 6
2.2 編寫程序的基礎知識 / 7
2.2.1 從加減乘除開始運算符 / 7
2.2.2 程序中的文字字符串 / 8
2.2.3 總結(jié)計算的方法變量與函數(shù) / 10
2.2.4 使用已有的方法內(nèi)置關(guān)鍵字與函數(shù) / 14
2.2.5 參與程序運算的數(shù)值參數(shù) / 16
2.2.6 用錯誤解決錯誤異常捕捉 / 19
2.2.7 符合條件再執(zhí)行條件判斷語句 / 22
2.2.8 不斷重復的過程while循環(huán)語句 / 26
2.2.9 提升計算的難度for循環(huán)語句 / 29
2.3 提高編程的效率 / 36
2.3.1 分門別類封裝 / 36
2.3.2 繼往開來繼承 / 43
2.3.3 千變?nèi)f化多態(tài) / 47
2.3.4 靈活多樣動態(tài)數(shù)據(jù)類型 / 50
2.4 拿來主義基于qrcode庫生成二維碼圖片 / 51
2.4.1 安裝第三方庫 / 51
2.4.2 使用第三方庫 / 53
第3章 優(yōu)化Python開發(fā)環(huán)境 / 55
3.1 下載安裝PyCharm / 55
3.2 使用PyCharm / 56
3.3 一勞永逸添加語句模板 / 57
3.4 常用快捷鍵 / 58
第4章 Python的基本數(shù)據(jù)操作 / 60
4.1 基本數(shù)據(jù)結(jié)構(gòu)操作 / 60
4.1.1 一組數(shù)字的排序 / 60
4.1.2 反過來再排一次 / 64
4.1.3 鍵與值的結(jié)構(gòu)字典 / 65
4.1.4 去除重復集合 / 68
4.2 字符串的操作與格式化 / 70
4.2.1 身份證號碼驗證 / 70
4.2.2 字符串格式化 / 76
第5章 掌握Python的特別函數(shù) / 79
5.1 生成器 / 79
5.1.1 數(shù)據(jù)加密基于hashlib / 79
5.1.2 讀寫文件基于open / 80
5.1.3 編寫生成器代碼 / 82
5.1.4 查看代碼執(zhí)行時長基于time / 83
5.2 裝飾器 / 84
5.2.1 甜蜜的語法糖 / 85
5.2.2 裝飾器函數(shù)的用途 / 85
5.2.3 日期的處理基于datetime / 87
5.2.4 靈活的參數(shù)收集參數(shù) / 87
5.2.5 使用內(nèi)置裝飾器staticmethod/classmethod / 88
5.3 遞歸函數(shù) / 90
5.3.1 遞歸的概念 / 91
5.3.2 遞歸的過程 / 92
5.3.3 用遞歸解決問題 / 93
5.3.4 遞歸的典型應用 / 94
第6章 編寫一個Python應用計算器 / 97
6.1 實現(xiàn)計算器的基本運算功能 / 97
6.1.1 支持個位數(shù)加法 / 97
6.1.2 支持個位數(shù)減法 / 100
6.1.3 支持帶空格的算式 / 101
6.1.4 支持多位數(shù)計算 / 103
6.1.5 支持加減混合計算 / 104
6.1.6 支持乘除法計算 / 107
6.1.7 支持帶括號的算式 / 109
6.1.8 支持小數(shù)計算 / 111
6.2 詞法分析與語法分析 / 112
第7章 玩轉(zhuǎn)Python GUI界面開發(fā) / 117
7.1 Python GUI界面開發(fā)基于wxPython / 117
7.1.1 使用wxFormBuilder進行程序界面設計 / 118
7.1.2 為界面控件綁定功能代碼 / 123
7.2 將代碼打包為Windows應用程序基于PyInstaller / 132
第8章 玩轉(zhuǎn)Python數(shù)據(jù)庫操作基于SQLite3 / 134
8.1 建庫與建表 / 134
8.1.1 創(chuàng)建與連接數(shù)據(jù)庫 / 134
8.1.2 創(chuàng)建數(shù)據(jù)表 / 135
8.2 數(shù)據(jù)庫操作的SQL語句 / 138
8.2.1 添加數(shù)據(jù) / 138
8.2.2 刪除數(shù)據(jù) / 139
8.2.3 修改數(shù)據(jù) / 139
8.2.4 查詢數(shù)據(jù) / 139
8.3 使用Python代碼動態(tài)生成SQL語句 / 141
第9章 玩轉(zhuǎn)Python應用程序開發(fā) / 153
9.1 玩轉(zhuǎn)數(shù)據(jù)分析與數(shù)據(jù)可視化股票行情查看器 / 153
9.1.1 讀取CSV文件基于csv模塊 / 153
9.1.2 讀取Excel文件基于pywin32/pylightxl / 155
9.1.3 文件數(shù)據(jù)存儲到數(shù)據(jù)庫 / 158
9.1.4 圖表可視化基于Matplotlib/mplfinance/pandas/NumPy / 162
9.1.5 創(chuàng)建程序界面 / 173
9.1.6 編寫功能代碼 / 179
9.1.7 為界面控件綁定功能代碼 / 183
9.2 玩轉(zhuǎn)機器視覺人臉識別器 / 184
9.2.1 編寫核心代碼基于face_recognition/OpenCV2/PIL / 187
9.2.2 創(chuàng)建程序界面 / 193
9.2.3 完成功能代碼 / 202
9.3 玩轉(zhuǎn)Web接口圖像效果增強器 / 208
9.3.1 申請百度智能云API / 209
9.3.2 使用軟件開發(fā)工具包基于baidu-aip / 211
9.3.3 自定義API調(diào)用 / 214
9.3.4 編寫核心代碼基于requests/Base64/JSON / 217
9.3.5 新的圖形界面設計工具基于PyQt5 / 230
9.3.6 創(chuàng)建程序主界面 / 238
9.3.7 編寫主要功能代碼 / 250
9.3.8 為主界面控件綁定功能代碼 / 253
9.3.9 使用多線程運行程序 / 255
9.3.10 創(chuàng)建對話框界面 / 257
9.3.11 編寫對話框功能代碼 / 263
9.3.12 創(chuàng)建訪問令牌對話框 / 265
9.3.13 實現(xiàn)訪問令牌校驗功能 / 269