Python 編程實戰 : 妙趣橫生的項目之旅 (Impractical Python Projects: Playful Programming Activities to Make You Smarter)

[美]李·沃恩(Lee Vaughan)

  • Python 編程實戰 : 妙趣橫生的項目之旅 (Impractical Python Projects: Playful Programming Activities to Make You Smarter)-preview-1
  • Python 編程實戰 : 妙趣橫生的項目之旅 (Impractical Python Projects: Playful Programming Activities to Make You Smarter)-preview-2
Python 編程實戰 : 妙趣橫生的項目之旅 (Impractical Python Projects: Playful Programming Activities to Make You Smarter)-preview-1

買這商品的人也買了...

商品描述

《Python編程實戰:妙趣橫生的項目之旅》基於Python語言,通過項目展示Python的奇妙應用,適合Python初學者學習。在本書中,你將使用Python編程語言模擬探索火星、木星以及銀河系最遙遠的地方,體驗詩人的意境,瞭解高級的金融知識等。你還會學到各種各樣的技術,如馬爾可夫鏈分析技術、蒙特卡羅模擬、圖像疊加技術、基因遺傳算法等。與此同時,你還會學習一些模塊的使用方法,例如pygame、Pylint、pydocstyle、Tkinter、python-docx、Matplotlib和pillow等。

《Python編程實戰:妙趣橫生的項目之旅》基於一些有趣的項目進行講解,能夠讓讀者在新奇的項目案例中體驗學習Python的樂趣。此外,讀者還能將自己所學的知識與實際的應用程序開發、數據庫設計和解決實際問題聯系起來,提升自己的項目實踐能力。

作者簡介

李.沃恩(Lee Vaughan)是一位程序員和教育工作者。
作為埃克森美孚公司的主管級科學家,他負責構建並審查計算機模型,開發和測試軟件,並培訓地球科學家和工程師。
他還通過自己編寫的圖書,幫助很多讀者磨煉Python 編程技能,並從中獲得樂趣。

目錄大綱

第1章虛假姓名生成器1
1.1項目1:生成假名1
1.1.1項目規劃與設計1
1.1.2策略2
1.1.3偽代碼2
1.1.4代碼3
1 .2本章小結11
1.3延伸閱讀12
1.3.1偽代碼編寫標準12
1.3.2編程規範12
1.3.3第三方模塊12
1.4實踐項目12
1.4.1兒童黑話13
1.4.2簡單條形圖13
1.5挑戰項目13
1.5.1拉丁文簡單條形圖14
1.5.2中間名14
1.5.3挑戰不同的項目14

第2章尋找回文15
2.1尋找和加載字典文件15
2.1.1處理文件打開異常16
2.1.2加載字典文件16
2.2項目2:尋找回文單詞18
2.2.1策略和偽代碼18
2.2.2尋找回文單詞的代碼19
2.3項目3:尋找回文短語20
2.3.1策略和偽代碼20
2.3.2尋找回文短語的代碼22
2 .3.3程序性能分析24
2.4本章小結27
2.5延伸閱讀27
2.6實踐項目:字典清理27
2.7挑戰項目:用遞歸方法查找回文27

第3章尋找易位詞28
3.1項目4:尋找單詞的易位詞28
3.1.1策略和偽代碼28
3.1.2尋找易位詞的代碼30
3.2項目5:尋找易位短語31
3.2.1策略和偽代碼32
3. 2.2尋找易位短語的代碼35
3.3項目6:尋找伏地魔(Voldemort)——高盧人策略41
3.4項目7:尋找伏地魔(Voldemort)——英式蠻力方式43
3.4 .1策略43
3.4.2英式蠻力方式的代碼45
3.5本章小結52
3.6延伸閱讀52
3.7實踐項目:尋找二元字母組52
3.8挑戰項目:易位詞自動生成器52

第4章破解美國內戰密碼53
4.1項目8:路由密碼53
4.1.1策略55
4.1.2偽代碼57
4.1.3解密路由密碼的代碼58
4.1 .4破解路由密碼60
4.1.5增加用戶接口62
4.2項目9:柵欄密碼67
4.2.1策略68
4.2.2使用柵欄密碼加密代碼69
4.2.3使用柵欄密碼解密代碼71
4.3本章小結73
4.4延伸閱讀73
4.5實踐項目74
4.5 .1黑客林肯74
4.5.2判斷密碼類型74
4.5.3以字典的形式存儲密鑰74
4.5.4自動生成可能的密鑰75
4.5.5路由換位密碼:暴力破解75
4.6挑戰項目76
4.6.1路由密碼編碼器76
4.6.2三欄式柵欄密碼77

第5章編寫英國內戰密碼78
5.1項目10:Trevanion密碼78
5.1. 1策略和偽代碼80
5.1.2 Trevanion密碼的代碼81
5.2項目11:編寫空密碼84
5.2.1清單型空密碼的代碼85
5.2.2清單型空密碼程序的輸出86
5.3本章小結87
5.4延伸閱讀87
5.5實踐項目87
5.5.1營救瑪麗87
5.5.2科爾切斯特脫險88

第6章隱寫術89
6.1項目12:隱藏維吉尼亞密碼89
6.1.1程序運行平台90
6.1.2策略91
6.1.3偽代碼96
6.1.4代碼97
6.1.5添加維吉尼亞密碼100
6.1.6檢測隱藏消息101
6.2本章小結104
6.3延伸閱讀104
6.4實踐項目:檢查空行數105
6.5挑戰項目:使用Monospace字體105

第7章用遺傳算法培育大鼠106
7.1在所有解中尋找最優解106
7.2項目13:培育超級老鼠大軍107
7.2.1策略107
7.2.2培育超級大鼠的代碼110
7.2.3項目小結115
7.3項目14 :破解高科技保險櫃117
7.3.1策略118
7.3.2保險櫃破解器的代碼119
7.4本章小結122
7.5延伸閱讀122
7.6挑戰項目122
7.6.1為老鼠建立“后宮” 123
7.6.2創建更高效的破解器123

第8章統計俳句音節數124
8.1日本俳句124
8.2項目15:統計音節數125
8.2.1策略126
8.2.2管理缺失單詞128
8.2.3音節計數程序代碼134
8.2.4編寫檢查音節計數程序的程序136
8.3本章小結137
8.4延伸閱讀137
8.5實踐項目:音節計數器對比字典文件計數器137

第9章用馬爾可夫鏈分析技術編寫俳句139
9.1項目16:馬爾可夫鏈分析139
9.1.1策略141
9.1.2偽代碼144
9.1 .3訓練語料庫145
9.1.4程序調試146
9.1.5程序代碼147
9.1.6輸出結果156
9.2本章小結159
9.3延伸閱讀159
9.4挑戰項目160
9.4 .1新詞生成器160
9.4.2圖靈測試160
9.4.3俳句判斷161
9.4.4馬爾可夫音樂161

第10章我們孤獨嗎——探索費米悖論162
10. 1項目17:模擬銀河系162
10.1.1策略163
10.1.2估算文明的數量163
10.1.3選擇無線電氣泡大小164
10.1.4得出探測概率計算公式165
10.1.5計算探測概率的代碼167
10.1.6建立圖形模型171
10.1.7結果分析182
10.2本章小結183
10.3延伸閱讀183
10.4實踐項目184
10.4. 1遙遠的銀河184
10.4.2建立銀河系帝國184
10.4.3預測可探測性的迂迴方法186
10.5挑戰項目186
10.5.1創造條狀螺旋銀河系186
10.5.2為你的星系添加可居住區186

第11章蒙蒂·霍爾問題188
11.1蒙特卡羅模擬188
11.2項目18:驗證薩凡特說法的正確性190
11.2.1策略190
11. 2.2驗證薩凡特說法的代碼191
11.3項目19:蒙蒂霍爾遊戲193
11.3.1面向對象程序設計簡介193
11.3.2策略和偽代碼196
11.3.3蒙蒂霍爾遊戲代碼197
11.4本章小結207
11.5延伸閱讀207
11.6實踐項目:生日悖論207

第12章儲蓄安全208
12.1項目20:模擬退休生活208
12.1.1策略209
12.1.2偽代碼215
12.1.3獲取歷史收益數據216
12.1.4程序代碼217
12.2本章小結229
12.3延伸閱讀229
12.4挑戰項目229
12.4.1一圖值千金229
12.4.2組合投資230
12.4.3我的運氣230
12.4.4財富值排序230

第13章模擬外星火山231
13.1項目21 :艾奧之羽231
13.1.1認識pygame 232
13.1.2策略233
13.1.3代碼235
13.1.4運行模擬程序244
13.2本章小結245
13.3延伸閱讀245
13 .4實踐項目:拋射245
13.5挑戰項目246
13.5.1羽流冠246
13.5.2 “泉源”——粒子運動軌跡246
13.5.3彈丸247

第14章用探測器繪製火星地圖248
14.1與遊戲有關的航天及動力學知識248
14.1.1萬有引力定律248
14.1.2開普勒行星運動定律249
14.1.3軌道力學250
14.1.4向後飛行250
14.1.5提升和降低軌道高度250
14.1.6走內線251
14. 1.7圓化橢圓形軌道251
14.1.8用霍曼轉移提升和降低軌道252
14.1.9利用單次切向點火提升和降低軌道高度253
14.1.10利用螺旋轉移實現軌道高度螺旋式改變254
14.1.11實現同步軌道254
14.2項目22:火星軌道飛行器遊戲254
14.2.1策略255
14.2.2遊戲資源257
14.2.3程序代碼258
14. 3本章小結279
14.4挑戰項目279
14.4.1設置遊戲啟動畫面279
14.4.2智能儀表280
14.4.3無線電黑障280
14.4.4遊戲評分280
14.4.5策略指南280
14.4.6大氣製動281
14.4.7入侵警報282
14.4.8越過極地282

第15章用行星疊加技術完善天體攝影圖片283
15.1項目23:疊加木星照片283
15.1.1認識pillow模塊284
15.1.2操作文件和目錄285
15.1.3從視頻獲取圖片287
15.1.4策略288
15.1.5代碼288
15.2本章小結299
15 .3延伸閱讀299
15.4挑戰項目:消失之法299

附錄實踐項目解決方案302
第1章虛假姓名生成器302
第2章尋找回文303
第3章尋找易位詞303
第4章破解美國內戰密碼304
第5章編寫英國內戰密碼308
第6章隱寫術310
第8章統計俳句音節數311
第10章我們孤獨嗎——探索費米悖論312
第11章蒙蒂·霍爾問題316
第13章模擬外星火山317