我的Python世界(修訂版)玩《Minecraft我的世界》學(xué)Python編程
定 價(jià):69.8 元
- 作者:程晨
- 出版時(shí)間:2023/12/1
- ISBN:9787115603975
- 出 版 社:人民郵電出版社
- 中圖法分類(lèi):TP311.561
- 頁(yè)碼:171
- 紙張:
- 版次:02
- 開(kāi)本:小16開(kāi)
Python是一種解釋型、面向?qū)ο、?dòng)態(tài)數(shù)據(jù)類(lèi)型的高階程序設(shè)計(jì)語(yǔ)言,它具有豐富和強(qiáng)大的庫(kù),能夠把用其他語(yǔ)言(尤其是C/C++)制作的各種模塊很輕松地聯(lián)結(jié)在一起。這兩年隨著人們對(duì)人工智能的關(guān)注越來(lái)越多,大家學(xué)習(xí)Python的熱情也越來(lái)越高漲。Python在IEEE發(fā)布的2017年編程語(yǔ)言排行榜中高居前列。本書(shū)介紹了Python編程的基礎(chǔ)知識(shí),并以游戲《Minecraft(我的世界)》為載體,通過(guò)Python編程來(lái)與游戲中的玩家或方塊互動(dòng),先后實(shí)現(xiàn)了“劍球”游戲、五子棋游戲以及像素圖像掃描儀這幾個(gè)項(xiàng)目,最后還實(shí)現(xiàn)了通過(guò)游戲控制Arduino等外部設(shè)備的功能。希望大家能夠在游戲的過(guò)程中輕松地進(jìn)入Python的世界,跨越軟硬件的鴻溝,初步嘗試自動(dòng)化控制。本書(shū)提供邊玩游戲邊學(xué)編程的全新體驗(yàn),適合對(duì)Python編程感興趣的讀者閱讀。游戲不再只是用來(lái)玩的,你將同時(shí)體驗(yàn)超級(jí)玩家、設(shè)計(jì)師和程序員的角色。
1.熱門(mén)編程語(yǔ)言與熱門(mén)游戲的巧妙結(jié)合,趣味性十足!帶你輕松跨越軟硬件的鴻溝,體驗(yàn)Python世界的魅力!
2.全新修訂版,內(nèi)容更豐富!不僅介紹了Python編程的基礎(chǔ)知識(shí),還新增了通過(guò)游戲控制Arduino等外部設(shè)備的功能。讓你在享受游戲樂(lè)趣的同時(shí),也能探索更多實(shí)用技能。
3.學(xué)習(xí)編程從來(lái)都不是一件枯燥的事,邊玩邊學(xué)更簡(jiǎn)單!從“劍球”游戲到五子棋,再到像素圖像掃描儀,讓你成為游戲世界的編程高手!
程晨,科技作家,具有十余年嵌入式開(kāi)發(fā)經(jīng)驗(yàn),編著、翻譯出版開(kāi)源硬件、3D打印、機(jī)器人、物聯(lián)網(wǎng)領(lǐng)域相關(guān)圖書(shū)十余本,國(guó)內(nèi)較早的Arduino和3D打印技術(shù)普及圖書(shū)都出自他手。他是機(jī)械工業(yè)出版社特聘技術(shù)顧問(wèn),曾任北京航空航天大學(xué)軟件學(xué)院特聘講師,參與了清華大學(xué)、北京郵電大學(xué)等多個(gè)高校的創(chuàng)新性課程設(shè)計(jì)。
1 Python 基礎(chǔ) 1
1.1 Python 的歷史 1
1.2 Python 的發(fā)展 1
1.3 Python 的優(yōu)缺點(diǎn) 2
1.3.1 Python 的優(yōu)點(diǎn) 2
1.3.2 Python 的缺點(diǎn) 2
1.4 Python 的適用領(lǐng)域 3
1.5 Python 的安裝與使用 3
1.5.1 Python 的安裝 3
1.5.2 Python 的使用 5
1.5.3 編輯器 7
1.6 關(guān)鍵字 9
1.7 數(shù)字 10
1.8 變量 10
1.9 程序的基本結(jié)構(gòu) 11
1.9.1 for 循環(huán) 12
1.9.2 if 選擇結(jié)構(gòu) 13
1.9.3 比較 14
1.9.4 邏輯運(yùn)算 14
1.10 擲骰子 16
1.10.1 隨機(jī)數(shù) 16
1.10.2 重復(fù)擲骰子 16
1.10.3 擲兩個(gè)骰子 17
1.10.4 大小判斷 18
1.11 While 20
2 字符串、列表和字典 22
2.1 字符串 22
2.1.1 字符串的定義 22
2.1.2 字符串的方法 22
2.2 列表 24
2.2.1 列表的定義 24
2.2.2 列表的方法 25
2.3 函數(shù) 26
2.4 猜詞游戲 27
2.4.1 游戲規(guī)則 27
2.4.2 創(chuàng)建單詞庫(kù) 27
2.4.3 游戲結(jié)構(gòu) 28
2.4.4 完善函數(shù) 29
2.5 字典 34
2.6 元組 35
2.6.1 元組的定義 35
2.6.2 多重賦值 35
2.6.3 多返回值 36
2.7 異!36
2.8 函數(shù)匯總 37
2.8.1 數(shù)字 37
2.8.2 字符串 38
2.8.3 列表 39
2.8.4 字典 40
2.8.5 類(lèi)型轉(zhuǎn)換 40
3 類(lèi)庫(kù)和方法 42
3.1 庫(kù) 42
3.1.1 使用 random 庫(kù) 42
3.1.2 使用 Python 標(biāo)準(zhǔn)庫(kù) 43
3.2 面向?qū)ο蟆?4
3.3 定義類(lèi) 44
3.4 繼承 46
3.5 文件 48
3.5.1 讀取文件 48
3.5.2 讀取大文件 50
3.5.3 寫(xiě)入文件 51
3.5.4 文件系統(tǒng)操作 51
3.6 侵蝕化 52
3.7 網(wǎng)絡(luò) 52
4 《Minecraft 我的世界》 54
4.1 《Minecraft 我的世界》是什么 54
4.2 準(zhǔn)備工作 55
4.3 歡迎來(lái)到《Minecraft 我的世界》 55
4.4 位置坐標(biāo) 60
4.5 玩家的位置 60
4.5.1 獲取玩家的位置 60
4.5.2 顯示玩家的位置 61
4.5.3 設(shè)定玩家的位置 62
4.6 彈射區(qū)域 62
5 “劍球”游戲 64
5.1 建造球場(chǎng) 64
5.1.1 開(kāi)辟空間 64
5.1.2 鋪設(shè)球場(chǎng) 65
5.1.3 搭建球門(mén) 67
5.1.4 球場(chǎng)函數(shù) 67
5.2 擊打事件處理 68
5.2.1 獲取擊打事件 68
5.2.2 確認(rèn)方塊的面 70
5.3 球的移動(dòng) 71
5.3.1 擊打方塊不同的面 71
5.3.2 移動(dòng)球的程序 73
5.4 異常情況 74
5.4.1 球多了 74
5.4.2 球沒(méi)了 75
5.5 出界與進(jìn)球 77
5.5.1 出界的判定 77
5.5.2 進(jìn)球了 78
6 “劍球”進(jìn)階 81
6.1 特殊規(guī)則 81
6.1.1 規(guī)則介紹 81
6.1.2 移動(dòng)的中線(xiàn) 81
6.1.3 最大偏移量 83
6.2 顯示數(shù)字 83
6.3 球門(mén)上的比分 86
6.3.1 東側(cè)的比分 86
6.3.2 西側(cè)的比分 94
6.4 CSV 文件 99
6.4.1 什么是 CSV 文件 99
6.4.2 新建 CSV 文件 100
6.4.3 讀取外部文件 100
6.4.4 優(yōu)化代碼 102
6.5 彩蛋:TNT 來(lái)了 106
6.6 顯示時(shí)間 108
6.6.1 獲取系統(tǒng)時(shí)間 108
6.6.2 顯示形式 109
6.6.3 功能實(shí)現(xiàn) 109
7 五子棋 115
7.1 繪制棋盤(pán) 115
7.1.1 二維數(shù)組 115
7.1.2 代碼實(shí)現(xiàn) 1167.2 落子 117
7.2.1 獲取擊打事件 118
7.2.2 改變方塊顏色 118
7.2.3 更改數(shù)組 118
7.3 五子相連 118
7.3.1 落子效果 118
7.3.2 重復(fù)落子問(wèn)題 119
7.3.3 獲勝判斷 121
7.4 重新開(kāi)始 128
7.4.1 結(jié)束后的提示 128
7.4.2 刷新棋盤(pán) 129
7.4.3 反復(fù)刷新的問(wèn)題 130
8 圖片掃描儀 131
8.1 像素畫(huà) 131
8.2 項(xiàng)目介紹 132
8.3 操作菜單 133
8.3.1 獲取輸入信息 133
8.3.2 制作菜單 135
8.3.3 中文輸入法 138
8.3.4 掃描儀菜單 138
8.4 掃描操作 142
8.5 復(fù)印操作 146
8.6 演示操作 148
8.6.1 原始內(nèi)容制作 148
8.6.2 掃描 148
8.6.3 復(fù)印 152
8.7 完整的代碼 154
9 硬件控制 160
9.1 Raspberry Pi 的硬件接口 160
9.1.1 連接 GPIO 160
9.1.2 數(shù)字輸出 161
9.1.3 模擬輸出 163
9.2 串口通信 164
9.2.1 什么是 Arduino 164
9.2.2 在 Raspberry Pi 上安裝 Arduino 165
9.2.3 Arduino 與 Python 通信 165
9.3 比特開(kāi)關(guān) 166
9.3.1 功能描述 166
9.3.2 準(zhǔn)備工作 167
9.3.3 功能實(shí)現(xiàn) 167
附錄 方塊材質(zhì)名稱(chēng)對(duì)照表 169