編輯推薦
本書可以作為(但不限於):
計算機專業本科生程序設計教材或研究生必讀書目。
數字媒體技術、軟件工程、網絡工程、信息安全、通信工程、電子、自動化及其他工科專業本科生或研究生程序設計教材。
會計、經濟、金融、管理、心理學、統計以及其他非工科專業研究生或本科生程序設計教材。
非計算機相關專業本科生公共基礎課程序設計教材。
專科院校或職業技術學院計算機專業或非計算機專業程序設計教材。
Python培訓用書。
具有一定Python基礎的讀者進階學習資料。
涉及Python開發的程序員、策劃人員、科研人員和管理人員閱讀書目。
打算利用業餘時間學習一門快樂的程序設計語言並編寫幾個小程序來娛樂的讀者學習資料。
少數對編程具有濃厚興趣和天賦的中學生課外閱讀資料。
內容簡介
全書共19章,主要內容如下:第1章介紹Python基礎知識與概念;第2章講解列錶、元組、字典、集閤等常用序列結構;第3章講解Python選擇結構與循環結構;第4章講解字符串基本操作方法與正則錶達式模塊re的用法;第5章講解函數定義與使用;第6章講解麵嚮對象編程有關的知識;第7章講解文本文件與二進製文件的讀寫,以及文件與目錄操作;第8章講解異常處理結構以及Python程序的調試與測試方法;第9章講解標準庫tkinter和擴展庫wxPython的GUI應用;第10章講解網絡編程,網頁內容讀取,Web應用開發;第11章介紹MapReduce和Hadoop編程;第12章講解注冊錶編程、GUI編程以及係統運維編程;第13章講解多綫程與多進程編程;第14章介紹SQLite、Access、MS SQL Server、MySQL訪問方法;第15章講解圖形圖像編程、音樂編程以及語音識彆;第16章介紹逆嚮工程與軟件分析原理、IDAPython編程、Immunity Debugger以及Windows平颱軟件調試原理;第17章講解NumPy、SciPy、Matplotlib、statistics與pandas在科學計算與可視化、數據處理、統計與分析中的應用;第18章講解安全哈希算法、對稱密鑰密碼算法DES與AES以及非對稱密鑰密碼算法RSA與DSA;第19章講解安卓平颱的Python程序設計。 本書對Python內部工作原理進行瞭一定深度的剖析,90%以上的案例均使用Python 3.5.1實現,個彆案例使用Python 2.7.11實現,並適當介紹瞭Python程序優化和安全編程的有關知識,可以滿足不同層次讀者的需要。本書既可以作為計算機及相關專業學生的教材,也可以作為 Python愛好者的參考書。
內頁插圖
目錄
第1章基礎知識/1
1.1如何選擇Python版本/1
1.2Python安裝與簡單使用/3
1.3使用pip管理Python擴展庫/5
1.4Python基礎知識/5
1.4.1Python對象模型/5
1.4.2Python變量/6
1.4.3數字/9
1.4.4字符串/10
1.4.5運算符與錶達式/11
1.4.6常用內置函數/14
1.4.7對象的刪除/17
1.4.8基本輸入輸齣/18
1.4.9模塊導入與使用/20
1.5Python代碼編寫規範/21
1.6Python文件名/23
1.7Python腳本的name屬性/24
1.8編寫自己的包��/24
1.9Python編程快速入門/25
1.10The Zen of Python��/27
本章小結/28
習題/29第2章Python序列/30
2.1列錶/30
2.1.1列錶創建與刪除/31
2.1.2列錶元素的增加/32
2.1.3列錶元素的刪除/35
2.1.4列錶元素訪問與計數/39
2.1.5成員資格判斷/40
2.1.6切片操作/41
2.1.7列錶排序/43
2.1.8用於序列操作的常用內置函數/44
2.1.9列錶推導式/46
2.1.10使用列錶實現嚮量運算*/48
2.2元組/49
2.2.1元組的創建與刪除/49
2.2.2元組與列錶的區彆/50
2.2.3序列解包/51
2.2.4生成器推導式/52
2.3字典/53
2.3.1字典創建與刪除/53
2.3.2字典元素的讀取/54
2.3.3字典元素的添加與修改/55
2.3.4字典應用案例/55
2.3.5有序字典��/56
2.4集閤/57
2.4.1集閤的創建與刪除/57
2.4.2集閤操作/58
2.4.3集閤運用案例/59
2.5再談內置方法sorted()/60
2.6復雜數據結構��/62
2.6.1堆/62
2.6.2隊列/63
2.6.3棧/65
2.6.4鏈錶/67
2.6.5二叉樹/68
2.6.6有嚮圖/70
本章小結/71
習題/72第3章選擇與循環/73
3.1條件錶達式/73
3.2選擇結構/75
3.2.1單分支選擇結構/75
3.2.2雙分支選擇結構/75
3.2.3多分支選擇結構/76
3.2.4選擇結構的嵌套/77
3.2.5選擇結構應用案例/78
3.3循環結構/80
3.3.1for循環與while循環/80
3.3.2循環結構的優化/80
3.4break和continue語句/82
3.5案例精選/83
本章小結/88
習題/89第4章字符串與正則錶達式/90
4.1字符串/91
4.1.1字符串格式化/92
4.1.2字符串常用方法/94
4.1.3字符串常量/99
4.1.4可變字符串*/101
4.1.5字符串應用案例精選/101
4.2正則錶達式/104
4.2.1正則錶達式語法/104
4.2.2re模塊主要方法/106
4.2.3直接使用re模塊方法/107
4.2.4使用正則錶達式對象/108
4.2.5子模式與match對象/110
4.2.6正則錶達式應用案例精選/114
本章小結/118
習題/119第5章函數設計與使用/120
5.1函數定義與調用/121
5.2形參與實參/122
5.3參數類型/123
5.3.1默認值參數/123
5.3.2關鍵參數/125
5.3.3可變長度參數/125
5.3.4參數傳遞時的序列解包/126
5.4return語句/126
5.5變量作用域/127
5.6lambda錶達式/129
5.7案例精選/130
5.8高級話題/134
本章小結/137
習題/138第6章麵嚮對象程序設計/139
6.1類的定義與使用/139
6.1.1類定義語法/139
6.1.2self參數/140
6.1.3類成員與實例成員/140
6.1.4私有成員與公有成員/141
6.2方法/143
6.3屬性/145
6.3.1Python 2.x中的屬性/145
6.3.2Python 3.x中的屬性/147
6.4特殊方法與運算符重載��/149
6.4.1常用特殊方法/149
6.4.2案例精選/150
6.5繼承機製/154
本章小結/156
習題/157第7章文件操作/158
7.1文件對象/158
7.2文本文件操作案例精選/159
7.3二進製文件操作案例精選/165
7.3.1使用pickle模塊/165
7.3.2使用struct模塊/166
7.4文件級操作/167
7.4.1os與os.path模塊/167
7.4.2shutil模塊/169
7.5目錄操作/170
7.6案例精選/171
本章小結/184
習題/184第8章異常處理結構與程序調試、測試/185
8.1基本概念/185
8.2Python異常類與自定義異常/186
8.3Python中的異常處理結構/189
8.3.1try…except結構/189
8.3.2try…except…else結構/190
8.3.3帶有多個except的try結構/190
8.3.4try…except…finally結構/191
8.4斷言與上下文管理/193
8.4.1斷言/193
8.4.2上下文管理/194
8.5用sys模塊迴溯最後的異常��/194
8.6使用IDLE調試代碼/195
8.7使用pdb模塊調試程序��/196
8.7.1pdb模塊常用命令/196
8.7.2使用pdb模塊調試Python程序/197
8.8Python單元測試��/200
本章小結/203
習題/203第9章GUI編程/204
9.1wxPython/204
9.1.1Frame/204
9.1.2Button、StaticText、TextCtrl/207
9.1.3Menu/209
9.1.4ToolBar、StatusBar/210
9.1.5對話框/211
9.1.6RadioButton、CheckBox/212
9.1.7ComboBox/213
9.1.8ListBox/214
9.1.9TreeCtrl/216
9.2tkinter應用案例精選/219
9.2.1用戶登錄界麵/219
9.2.2選擇類組件應用/220
9.2.3簡單文本編輯器/223
9.2.4簡單畫圖程序/226
9.2.5電子時鍾/230
本章小結/232
習題/233第10章網絡程序設計/234
10.1計算機網絡基礎知識/234
10.2UDP和TCP編程/235
10.2.1UDP編程/236
10.2.2TCP編程/237
10.3網絡嗅探器與端口掃描器設計/239
10.3.1網絡嗅探器/239
10.3.2多進程端口掃描器/240
10.4網頁內容讀取與網頁爬蟲/242
10.4.1網頁內容讀取與域名分析/242
10.4.2版本自適應的網頁爬蟲/244
10.5使用Python開發網站/245
10.5.1使用IIS運行Python網站/245
10.5.2使用web2py框架開發網站/247
10.5.3使用C#和Python組閤開發ASP.NET網站/251
10.5.4Flask框架/253
本章小結/254
習題/255第11章大數據處理/256
11.1大數據框架/257
11.2MapReduce編程案例/258
11.3Hadoop模式的MapReduce應用/261
本章小結/262
習題/262第12章Windows係統編程/263
12.1注冊錶編程/263
12.2創建可執行文件/266
12.3調用外部程序/267
12.4創建窗口/271
12.5判斷操作係統的版本/275
12.6係統運維/275
12.6.1Python擴展庫psutil/276
12.6.2使用pywin32實現事件查看器/277
12.6.3切換用戶登錄身份/280
本章小結/281
習題/282第13章多綫程與多進程編程/283
13.1threading模塊/283
13.2Thread對象/284
13.2.1Thread對象中的方法/284
13.2.2Thread對象中的daemon屬性/285
13.3綫程同步技術/287
13.3.1Lock/RLock對象/287
13.3.2Condition對象/288
13.3.3queue對象/290
13.3.4Event對象/290
13.4多進程編程/291
13.4.1創建進程/292
13.4.2進程間數據交換/292
13.4.3進程同步/294
本章小結/295
習題/296第14章數據庫編程/297
14.1SQLite應用/297
14.1.1Connection對象/298
14.1.2Cursor對象/299
14.1.3Row對象/301
14.2訪問其他類型數據庫/302
14.2.1操作Access數據庫/302
14.2.2操作MS SQL Server數據庫/303
14.2.3操作MySQL數據庫/304
本章小結/306
習題/306第15章多媒體編程/307
15.1圖形編程/307
15.1.1創建圖形編程框架/307
15.1.2繪製文字/308
15.1.3繪製圖形/309
15.1.4紋理映射/310
15.1.5處理鍵盤/鼠標事件/312
15.2圖像編程/312
15.2.1圖像處理模塊PIL與pillow功能簡介/312
15.2.2使用pillow計算橢圓中心/314
15.2.3使用pillow動態生成比例分配圖/315
15.2.4使用pillow生成驗證碼圖片/316
15.3音樂編程/318
15.4語音識彆/320
本章小結/321
習題/321第16章逆嚮工程與軟件分析/322
16.1主流項目與插件簡介/322
16.1.1主流項目/323
16.1.2常用插件/323
16.2IDAPython與Immunity Debugger編程/324
16.2.1IDAPython編程/324
16.2.2Immunity Debugger編程/329
16.3Windows平颱軟件調試原理/334
16.3.1Windows調試接口/334
16.3.2調試事件/335
16.3.3進程調試/336
16.3.4綫程環境/337
16.3.5斷點/338
16.4案例精選/339
本章小結/341
習題/342第17章科學計算與可視化/343
17.1NumPy簡單應用/343
17.2SciPy簡單應用/349
17.2.1常數與特殊函數/350
17.2.2SciPy簡單應用/351
17.3Matplotlib案例精選/352
17.3.1繪製帶有中文標簽和圖例的正弦餘弦麯綫
/352
17.3.2繪製散點圖/353
17.3.3繪製餅狀圖/353
17.3.4使用pyplot繪製,多個圖形在一起顯示
/354
17.3.5使用pyplot繪製,多個圖形單獨顯示/356
17.3.6繪製三維圖形/356
17.3.7繪製三維麯綫/357
17.4數據分析模塊pandas/358
17.5統計分析模塊statistics/362
本章小結/364
習題/364第18章密碼學編程/365
18.1安全哈希算法/365
18.2對稱密鑰密碼算法DES和AES/365
18.3非對稱密鑰密碼算法RSA與數字簽名算法DSA/367
18.3.1RSA/367
18.3.2DSA/369
本章小結/369
習題/369第19章安卓平颱的Python編程/370
19.1QPython簡介/370
19.2安卓應用開發案例/371
本章小結/375
習題/375參考文獻/376
前言/序言
Python程序設計(第2版)/高等院校信息技術規劃教材 本書是一本麵嚮高等院校信息技術專業學生的Python程序設計入門教材。旨在幫助讀者係統地學習Python語言的基礎知識和核心概念,掌握程序設計的基本思想和方法,為後續更深入的計算機科學學習打下堅實的基礎。 內容概述: 本書共分為 [此處可以根據實際書籍結構填充章節數,例如:十五章],循序漸進地引導讀者從零開始掌握Python編程。 第一部分:Python基礎 第一章:Python簡介與開發環境搭建 介紹Python語言的特點、優勢及其在各個領域的應用,激發學習興趣。 詳細指導讀者如何在不同操作係統(Windows, macOS, Linux)上安裝Python解釋器和集成開發環境(IDE),如PyCharm或VS Code,並進行基本配置,確保讀者能夠順利開始編程實踐。 第二章:第一個Python程序 指導讀者編寫並運行第一個簡單的Python程序,理解“Hello, World!”的意義,初步接觸Python的語法結構。 講解Python程序的執行流程,以及如何使用print()函數輸齣信息。 第三章:變量、數據類型與運算符 深入講解Python中基本的數據類型,包括整數(int)、浮點數(float)、字符串(str)和布爾值(bool)。 闡述變量的聲明、賦值以及命名規則。 介紹Python的運算符,包括算術運算符、比較運算符、邏輯運算符和賦值運算符,並通過實例展示它們的用法。 第四章:流程控製語句(條件語句) 講解如何使用if、elif、else語句來實現程序的條件分支,控製程序的執行路徑。 通過生活化的例子,如天氣判斷、分數等級劃分等,幫助讀者理解條件語句的應用場景。 第五章:流程控製語句(循環語句) 詳細介紹for循環和while循環,講解它們的語法結構和執行機製。 闡述break和continue語句在循環中的作用,以及如何使用它們來控製循環的終止和跳過。 通過一些經典的算法問題,如求和、計數、打印乘法錶等,鞏固循環語句的掌握。 第二部分:Python進階 第六章:列錶、元組與字典 介紹Python中常用的復閤數據結構:列錶(list)、元組(tuple)和字典(dict)。 講解它們的創建、訪問、修改、刪除操作,以及各種常用的方法,如append()、insert()、remove()、pop()、get()等。 通過實際案例,如學生成績管理、電話簿等,展示這些數據結構的強大功能。 第七章:字符串操作 深入講解字符串的各種常用操作,包括索引、切片、拼接、查找、替換、分割等。 介紹字符串的格式化輸齣,如使用f-string和.format()方法。 演示如何利用字符串操作處理文本數據,進行信息提取和轉換。 第八章:函數 講解函數的定義、調用以及參數傳遞(位置參數、關鍵字參數、默認參數、可變參數)。 闡述函數的返迴值,包括單返迴值和多返迴值。 介紹函數的作用域(局部變量和全局變量),以及如何使用global和nonlocal關鍵字。 強調函數的設計原則,如模塊化、復用性,並通過編寫一些實用函數(如計算最大公約數、求斐波那契數列等)進行練習。 第九章:模塊與包 介紹Python模塊(module)的概念,如何導入和使用標準庫模塊(如math、random、datetime)。 指導讀者如何創建自己的模塊,並將其組織成包(package)。 講解Python的包管理工具pip,以及如何安裝和卸載第三方庫,為擴展Python功能奠定基礎。 第三部分:麵嚮對象編程與文件操作 第十章:麵嚮對象編程基礎 介紹麵嚮對象編程(OOP)的核心概念:類(class)和對象(object)。 講解如何定義類,包括屬性(成員變量)和方法(成員函數)。 闡述對象的創建(實例化)以及如何訪問對象的屬性和調用對象的方法。 通過簡單的類設計,如“狗”類、“汽車”類,幫助讀者理解OOP的思想。 第十一章:麵嚮對象編程進階 深入講解麵嚮對象的三大特性:封裝、繼承和多態。 講解類的繼承機製,如何創建子類並重寫父類的方法。 闡述多態的概念,以及它在代碼靈活性和可擴展性方麵的優勢。 通過更復雜的類設計,如“動物”類體係,展示OOP的強大能力。 第十二章:文件操作 指導讀者如何打開、讀取、寫入和關閉文件。 介紹不同模式的文件打開方式(如'r'、'w'、'a'、'b')。 講解文本文件和二進製文件的讀寫方法。 演示如何處理文件路徑,以及使用with語句進行自動文件關閉,避免資源泄露。 第十三章:異常處理 講解Python的異常(exception)概念,以及程序運行時可能齣現的錯誤。 指導讀者如何使用try-except語句來捕獲和處理異常,提高程序的健壯性。 介紹不同類型的內置異常,以及如何創建自定義異常。 第四部分:綜閤應用與實踐 第十四章:常用標準庫的應用 選取若乾常用的Python標準庫,如`os`(操作係統交互)、`sys`(係統相關)、`re`(正則錶達式)等,進行詳細介紹和實例演示。 幫助讀者瞭解這些庫的功能,並學會如何在實際項目中調用它們來解決問題。 第十五章:簡單的項目實踐 通過一個或多個小型綜閤性項目,例如一個簡單的命令行計算器、一個文本文件分析工具、一個簡單的猜數字遊戲等,引導讀者將前麵學到的知識融會貫通。 強調項目開發過程中的設計思路、代碼組織和調試技巧,培養讀者的實踐能力和解決實際問題的能力。 本書特色: 理論與實踐相結閤: 每一章都配有豐富的代碼示例,並提供練習題,幫助讀者鞏固所學知識。 循序漸進,通俗易懂: 從基礎概念講起,逐步深入,語言通俗易懂,適閤初學者。 貼近教學需求: 作為高等院校信息技術規劃教材,內容緊密結閤教學大綱,滿足課程學習和考試需求。 注重編程思想培養: 在教授語法知識的同時,也注重培養讀者的邏輯思維能力、問題分析能力和程序設計思想。 覆蓋Python核心內容: 涵蓋瞭Python語言的關鍵特性,為讀者後續學習更高級的主題(如Web開發、數據科學、人工智能等)打下堅實基礎。 通過學習本書,讀者將能夠熟練掌握Python編程語言,具備獨立編寫Python程序解決問題的能力,為未來的學習和職業發展奠定堅實的IT基礎。