內容簡介
《學習編程第一步 零基礎上手Python開發》介紹了進行Python編程所必須進行的技能,包括:編程基礎,從簡單的數據存儲到複雜和有用的程式;Python如何在Visual Studio環境下工作;一些高級技術,包括類、基於對象的解決方案的設計;使用Python的各種庫;構建Web套用和基於雲的套用,以及GUI和遊戲;測試和調試代碼;理解職業開發的方方面面,構建自己的技能庫。
作者簡介
Rob Miles在英國赫爾大學講授編程課程的年限超過30年。他是一位Microsoft MVP,對編寫程式和創造新事物充滿熱情。即使在空閒時間,也不忘繼續編寫代碼。他喜歡編寫代碼,然後運行這些代碼,看看會有什麼結果。他認為編程最富有創意,讓你可以一探究竟。他相信,編程可以構築未來。
編輯推薦
《學習編程第一步 零基礎上手Python開發》是一本編程啟蒙書籍,將為你的編程之旅指明方向,指引你朝著正確的、有用的目標前進。本書共分三部分。第I部分介紹如何安裝和使用編程工具,講述Python 程式語言的基本元素。第II 部分描述如何利用Python 程式語言的特點構建複雜的應用程式;指導你設計、測試Python 應用程式,並為程式編寫文檔。第III 部分介紹如何使用軟體庫在圖形用戶界面中創建應用程式,如何在網路套用中將Python 程式用作客戶端和伺服器。最後創建充滿魅力的遊戲。
即使你沒有編程經驗,也可在本書的指導下編寫出解決實際問題的軟體。《學習編程第一步 零基礎上手Python開發》完全顛覆了編程入門書籍,緊跟時代,為當今的編程新手提供深入的講解,令其他書籍望塵莫及。本書編排新穎,從“代碼分析”“易錯之處” “動手練習”到“專家點津”,無不令人耳目一新。無論你是初出茅廬的新手,還是經驗豐富的編程人員,本書都將賦予你能量、激動和快樂!當你看到其他用戶樂於使用你寫的程式做一些有用的事情時,你的內心將是十分甜蜜的。
圖書目錄
第Ⅰ部分 編程基礎知識
第1章 開始使用Python 3
1.1 什麼是Python 3
1.1.1 Python的起源 4
1.1.2 Python版本 4
1.2 打造使用Python的場所 5
1.2.1 獲取工具 5
1.2.2 Python(適用於Windows PC) 6
1.3 啟動Python 8
1.4 本章小結 11
第2章 Python和編程 13
2.1 編程人員的工作 13
2.1.1 編程和規劃生日聚會 13
2.1.2 編程和問題 14
2.1.3 編程人員要善於溝通 15
2.2 計算機用於處理數據 16
2.2.1 機器、計算機和人 16
2.2.2 程式用於處理數據 18
2.2.3 Python用於處理數據 19
2.3 數據和信息 23
2.4 使用Python函式 27
2.4.1 ord函式 27
2.4.2 chr函式 28
2.4.3 使用bin函式探索數據存儲 29
2.5 本章小結 30
第3章 Python程式結構 33
3.1 編寫首個Python程式 33
3.1.1 使用IDLE運行Python程式 33
3.1.2 使用print函式獲得程式輸出 37
3.2 使用Python庫 42
3.2.1 random庫 42
3.2.2 time庫 45
3.3 Python注釋 46
3.4從桌面運行Python47
3.5添加一些snaps函式48
3.5.1添加pygame庫48
3.5.2snaps函式49
3.6本章小結52
第4章使用變數55
4.1Python中的變數55
4.2使用文本59
4.2.1標記字元串的開始和結束61
4.2.2文本中的轉義字元62
4.2.3使用input函式讀取文本63
4.3使用數值65
4.3.1將字元串轉換為整型值65
4.3.2整數和實數66
4.3.3實數和浮點數67
4.3.4將字元串轉換為浮點值71
4.3.5執行計算72
4.3.6在浮點數和整數之間轉換73
4.4snaps函式get_weather_temp75
4.5本章小結76
第5章在程式中制定決策79
5.1布爾數據79
5.1.1創建布爾變數79
5.1.2布爾表達式81
5.1.3比較值83
5.1.4布爾運算86
5.2if結構88
5.2.1嵌套if條件95
5.2.2使用邏輯96
5.3使用決策創建應用程式96
5.3.1設計用戶界面97
5.3.2實現用戶界面98
5.3.3測試用戶輸入99
5.3.4完成程式99
5.4導入snaps庫100
5.5本章小結103
第6章使用循環執行重複操作105
6.1while結構105
6.1.1使用while重複執行一系列語句105
6.1.2處理無效的用戶輸入109
6.1.3使用異常檢查無效編號輸入112
6.1.4異常和編號讀取114
6.1.5處理多個異常115
6.1.6跳出循環116
6.1.7使用continue返回到循環頂部117
6.1.8重複循環計數118
6.2for循環結構120
6.3使用snaps製作數字鬧鐘123
6.4本章小結124
第7章使用函式簡化程式125
7.1函式的組成125
7.1.1使用參數給函式提供信息128
7.1.2函式調用的返回值135
7.2構建可重用的函式141
7.2.1創建文本輸入函式141
7.2.2為函式添加幫助信息142
7.2.3創建數值輸入函式144
7.2.4將函式轉換為Python模組147
7.2.5使用IDLE調試器148
7.3本章小結153
第8章存儲數據集合155
8.1列表和銷售金額跟蹤155
8.1.1單獨變數的局限性157
8.1.2Python中的列表158
8.1.3在列表中讀取值160
8.1.4使用for循環顯示列表161
8.2將程式重構為函式162
8.2.1創建占位函式165
8.2.2創建用戶選單165
8.3使用冒泡排序法167
8.3.1使用測試數據初始化列表167
8.3.2按降序排序列表168
8.3.3按升序排序列表172
8.3.4查找最大值和最
小值173
8.3.5計算銷售總額和平均銷售額174
8.3.6完成程式174
8.4在檔案中存儲數據175
8.4.1寫入檔案176
8.4.2寫入銷售金額179
8.4.3從檔案讀取180
8.4.4讀取銷售金額182
8.4.5處理檔案錯誤183
8.5存儲數據表185
8.6將列表用作查找表188
8.7元組189
8.8本章小結191
第II部分高級編程
第9章使用類存儲數據197
9.1生成TinyContacts套用197
9.1.1生成原型198
9.1.2在不同的列表中存儲聯繫人詳細信息200
9.1.3使用類存儲聯繫人詳細信息202
9.1.4在TinyContacts程式中使用Contact類205
9.1.5編輯聯繫人信息207
9.1.6使用pickle將聯繫人信息保存到檔案中215
9.1.7使用pickle從檔案載入聯繫人信息217
9.1.8給TinyContacts程式添加save和load函式218
9.1.9設定類實例219
9.2字典223
9.2.1字典管理225
9.2.2從函式返回字典225
9.2.3使用字典存儲聯繫人信息226
9.3本章小結227
第10章使用類創建活動對象229
10.1創建TimeTracker229
10.1.1為類添加數據特性230
10.1.2創建聚合對象231
10.1.3為類創建方法特性232
10.1.4為方法添加驗證代碼234
10.1.5防止數據特性受到破壞243
10.1.6受保護的方法246
10.2創建類屬性246
10.3擴展類設計250
10.4類中的__str__方法257
10.5TimeTracker中的法庭工作時長跟蹤260
10.5.1Pythonmap函式264
10.5.2Pythonjoin方法269
10.6使用snaps製作音樂270
10.7本章小結273
第11章設計面向對象的解決方案277
11.1FashionShop應用程式277
11.1.1應用程式數據設計279
11.1.2面向對象的設計279
11.1.3創建超類和子類282
11.1.4數據設計總結295
11.1.5實現應用程式行為302
11.1.6將對象作為組件305
11.2創建FashionShop組件306
11.3設計類314
11.4Python集合315
11.4.1集合和標籤318
11.4.2集合與類層次結構的對比321
11.5本章小結324
第12章Python應用程式327
12.1高級函式327
12.1.1函式引用327
12.1.2使用lambda表達式332
12.1.3疊代器函式和yield語句335
12.1.4使用任意實參數量的函式340
12.2模組和包343
12.2.1Python模組343
12.2.2給BTCInput添加readme函式343
12.2.3將模組作為程式運行344
12.2.4檢測模組是否作為程式執行344
12.2.5創建Python包345
12.2.6導入包中的模組347
12.3程式測試350
12.3.1Pythonassert語句351
12.3.2Pythonunittest模組352
12.3.3創建測試355
12.4查看程式文檔356
12.5本章小結361
第III部分Python實戰
第13章Python和圖形用戶界面365
13.1VisualStudioCode365
13.1.1安裝VisualStudioCode366
13.1.2在VisualStudioCode中安裝PythonExtension366
13.1.3創建項目資料夾367
13.1.4創建程式檔案368
13.1.5調試程式369
13.1.6其他Python編輯器373
13.2使用Tkinter創建圖形用戶界面373
13.2.1創建圖形應用程式379
13.2.2格線布局380
13.2.3創建事件處理器382
13.2.4創建mainloop383
13.2.5處理GUI中的錯誤383
13.2.6顯示訊息框385
13.2.7在畫布上繪製388
13.2.8Tkinter事件391
13.2.9創建繪製程式392
13.2.10輸入多行文本394
13.2.11在Frame中組合顯示元素396
13.2.12使用GUI創建可編輯的StockItem396
13.2.13創建一個Listbox選擇器402
13.2.14包含GUI的應用程式408
13.3本章小結410
第14章Python程式用作網路客戶端413
14.1計算機網路413
14.2從Python使用Web422
14.2.1讀取網頁422
14.2.2使用基於Web的數據423
14.3本章小結426
第15章Python程式用作網路伺服器429
15.1在Python中創建Web伺服器429
15.1.1一台基於套接字的小型伺服器429
15.1.2PythonWeb伺服器433
15.1.3通過檔案支持網頁435
15.1.4從Web用戶獲取信息439
15.2在Web上託管Python應用程式443
15.3本章小結443
第16章使用pygame創建遊戲445
16.1開始使用pygame445
16.2使用pygame繪圖451
16.2.1圖像檔案類型451
16.2.2將圖像載入到遊戲中452
16.2.3使圖像能夠移動454
16.3從pygame獲取用戶輸入455
16.4創建遊戲Sprite457
16.4.1添加玩家Sprite461
16.4.2控制玩家Sprite463
16.4.3添加CrackerSprite464
16.4.4添加大量Sprite實例465
16.4.5捕獲薄脆餅乾466
16.4.6添加西紅柿殺手469
16.5完成遊戲472
16.5.1添加啟動螢幕472
16.5.2結束遊戲475
16.5.3遊戲記分476
16.6本章小結477