超有趣學(xué)Python:編程超酷航天冒險游戲
定 價:89 元
超有趣Python入門,從零開始編程創(chuàng)造超酷太空冒險游戲!游戲開始,空氣所剩不多了?臻g站發(fā)生泄漏,因此你必須迅速采取行動。你能找到解決問題的辦法嗎?你需要探索空間站的周圍,找到門禁卡來把門打開,還要修復(fù)受損的航天服。冒險已經(jīng)開始了!本書向你展示了如何使用Python在圖形化的冒險游戲中在火星上建立空間站、探索空間站并避開危險。你能像航天員一樣找到解決問題的辦法嗎?
編輯推薦亞馬遜讀者五星好評。告別枯燥難懂,超有趣的Python入門指南。無論是初學(xué)者還是青少年,都可以輕松超有趣學(xué)Python。全彩印刷,全部代碼,全程指導(dǎo),手把手教你編程創(chuàng)造超酷太空冒險游戲。知名作者暢銷力作,派森社聯(lián)合發(fā)起人、知名創(chuàng)客布道師程晨傾力翻譯呈現(xiàn)。你將學(xué)會Python的基礎(chǔ)知識與編程實踐。● 學(xué)會如何將數(shù)據(jù)存儲在變量、列表和字典中● 學(xué)會如何在游戲中添加鍵盤控制● 學(xué)會如何創(chuàng)建函數(shù)來組織你的代碼● 學(xué)會如何完成循環(huán)以重復(fù)一段代碼● 學(xué)會如何在游戲中添加圖像、聲音和動畫……太空危機,氧氣即將耗盡,為了安全逃離空間站,你需要探索地圖,收集物品,解決謎題,同時還要躲避殺手機器人和泄漏的有毒物質(zhì)……你將親手實現(xiàn)編寫這個基于謎題的太空冒險游戲,游戲包含完整的圖像、聲音和動畫。準(zhǔn)備好了嗎,開始一起玩Python !
前言游戲開始,空氣所剩不多了?臻g站發(fā)生泄漏,因此你必須迅速采取行動。你能找到解決問題的辦法嗎?你需要探索空間站的周圍,找到門禁卡來把門打開,還要修復(fù)受損的航天服。冒險已經(jīng)開始了!從這里開始:在地球上,通過對任務(wù)下達命令,或者說是通過你的計算機來操作。本書向你展示了如何使用Python在圖形化的冒險游戲中在火星上建立空間站、探索空間站并避開危險。你能像航天員一樣找到解決問題的辦法嗎?
如何閱讀本書學(xué)習(xí)本書的內(nèi)容,你可以創(chuàng)建一個名為Escape(逃脫)的游戲,其中包含了要探索的地圖和需要解決的問題。游戲是使用Python編寫的,它是一種非常流行的易于閱讀的編程語言。游戲制作中使用的是Pygame Zero,它添加了一些關(guān)于管理圖像和聲音的指令。我將逐步介紹游戲的制作方法以及代碼的主要部分的邏輯關(guān)系,以便你可以創(chuàng)建自己的游戲或根據(jù)我的游戲代碼實現(xiàn)自己的游戲。如果你遇到了什么問題,或是想直接進入游戲看看這個游戲是怎么玩的,你可以直接下載源代碼,所有的代碼都可以下載,而且所有軟件都是免費的,書中提供了Windows操作系統(tǒng)版本和Raspberry Pi的說明。我建議你使用Raspberry Pi 3或Raspberry Pi 2。如果使用Pi Zero、舊的B 以及其他老版的型號,那么游戲運行速度可能會比較慢。你可以通過以下幾種方式來閱讀本書和創(chuàng)建游戲:1)下載游戲,先玩一玩,然后閱讀本書來了解游戲的工作原理。這樣能避免你在玩游戲之前就知道了具體的細節(jié)!盡管我已將游戲細節(jié)降至,但你在閱讀本書時依然會留意到代碼中的一些線索。如果你真的在游戲中遇到了問題,可以嘗試閱讀代碼以確定解決方案。無論如何,我都建議你至少運行一次游戲,以便確定要創(chuàng)建的是一個什么樣的游戲,并了解如何運行程序。2)創(chuàng)建游戲,然后再玩。本書將指導(dǎo)你如何從頭到尾創(chuàng)建游戲。在學(xué)習(xí)各章節(jié)內(nèi)容的過程中,你將會在游戲中添加新的內(nèi)容,并查看它們的工作方式。如果你在某個部分無法運行代碼,那么可以直接使用代碼段中的版本,然后從那里繼續(xù)編寫代碼。如果你選擇了這種方式,那么在創(chuàng)建并試玩游戲之前不要對游戲進行任何自定義的更改。否則,你可能會遇到某些意外導(dǎo)致無法完成游戲(完成我在練習(xí)任務(wù)中建議的修改是可以的)。3)自定義游戲。當(dāng)你了解了程序的工作原理后,你可以使用自己的地圖、圖像、對象和謎題對游戲進行修改。Escape 游戲是發(fā)生在空間站上的,但你的游戲可以發(fā)生在叢林、海底或其他任何地方。你可以先按照本書內(nèi)容來創(chuàng)建自己的Escape 游戲版本,也可以使用我的終版本來對其進行修改。我希望看到你將這個程序作為起點!
本書的內(nèi)容在你開始執(zhí)行任務(wù)之前,先讓我們來看一下各章的內(nèi)容介紹。第1章介紹如何進行太空行走。你將學(xué)習(xí)如何使用Pygame Zero 通過Python 程序顯示圖像,并了解Python 程序的一些基礎(chǔ)知識。第2章介紹列表,列表中存儲了Escape 游戲中的許多信息。你將看到如何使用列表來制作地圖。第3章將展示如何讓程序的各個部分循環(huán)運行,以及如何使用這部分知識來顯示地圖。你還將使用墻柱和地磚為空間站設(shè)計房間布局。在第4章中,我們將開始創(chuàng)建Escape 游戲,并為空間站設(shè)定藍圖。你將看到程序是如何理解空間站的布局的,以及程序是如何使用藍圖來創(chuàng)建房間,并且放置墻體和地磚的。在第5章中,你將學(xué)習(xí)如何在Python 中使用字典,這是存儲信息的另一種重要方法。你還將學(xué)習(xí)如何添加游戲中所使用的所有對象的信息,并了解如何設(shè)計自己的房間。之后當(dāng)你在第6 章中完善擴充了程序時,你將能看到所有的場景,并且能夠查看所有房間。空間站建設(shè)好之后,你可以進入其中。在第7 章中,你會學(xué)到如何添加航天員的角色,并了解如何在房間中四處移動并設(shè)置運動動畫。第8章會介紹如何通過陰影、墻體的顏色變化以及新的繪制房間的函數(shù)來優(yōu)化游戲的圖像,新的函數(shù)能夠消除圖像中的毛刺。當(dāng)空間站可操作時,你可以打開個人的物品包。在第9 章中,你可以控制角色檢查、拾取和放下物品。在第10 章中,你將了解如何使用及組合物品,從而解決游戲中的謎題。空間站即將完成。第11章將增加限制進入某些區(qū)域的安全門。正當(dāng)你要站起來慶祝自己的工作成果時,危險就潛伏在四周,因為你會在第12 章中添加移動的危險物品。在閱讀本書的過程中,你需要完成一些練習(xí)任務(wù),以便有機會測試程序和你的編程技能。如果需要,對應(yīng)的答案在每章的結(jié)尾。書后的附錄也能夠提供幫助。附錄A 包含整個游戲的代碼。如果不確定在何處添加了新代碼,可以在這里檢查。如果你不記得存儲的內(nèi)容,則附錄B 中的表格包含了重要的變量、列表和字典。如果程序無法正常運行,則附錄C 提供了一些調(diào)試的提示。有關(guān)本書的更多信息和資源,可以訪問本書的網(wǎng)站www.sean.co.uk/books/missionpython/。你也可以在https://nostarch.com/missionpython/ 上找到一些信息和資源。
程晨,科技作家,具有十余年嵌入式開發(fā)經(jīng)驗,少年創(chuàng)學(xué)院聯(lián)合創(chuàng)始人兼院長,兼任Inetl軟件創(chuàng)新大使,中國電子學(xué)會全國青少年機器人技術(shù)等級考試標(biāo)準(zhǔn)工作組副組長,中國教育技術(shù)協(xié)會數(shù)字教育資源專業(yè)委員會專家。編著和翻譯出版開源硬件、3D打印、機器人、智能硬件、物聯(lián)網(wǎng)領(lǐng)域相關(guān)圖書十余本,出版國內(nèi)的Arduino、Edison、3D打印技術(shù)普及圖書。他是機械工業(yè)出版社特聘技術(shù)顧問,曾任北京航空航天大學(xué)軟件學(xué)院特聘講師,參與了清華大學(xué)、北京郵電大學(xué)等多個高校的創(chuàng)新性課程設(shè)計。
引言 1 0.1如何閱讀本書 1 0.2本書的內(nèi)容 2 0.3安裝軟件 3 0.4下載游戲文件 5 0.5運行游戲 8 0.6玩游戲 9第1章 你的次太空行走 11 1.1啟動Python編輯器 12 1.2Python shell介紹 13 1.3腳本模式介紹 15 1.4創(chuàng)建星空背景 15 1.5停止Pygame Zero程序 19 1.6添加火星和飛船 19 1.7你掌握了么 25第2章 列表可以救你的命 27 2.1你的個列表:起飛檢查表 27 2.2使用序列號 29 2.3創(chuàng)建太空行走檢查表 31 2.4列表的列表:飛行手冊 31 2.5合并列表 33 2.6通過列表創(chuàng)建地圖:應(yīng)急倉 34 2.7你掌握了么 37第3章 重復(fù)執(zhí)行 39 3.1循環(huán)顯示 39 3.2循環(huán)嵌套 41 3.3顯示3D房間圖像 44 3.4了解如何繪制房間 45 3.5圖片繪制的位置 46 3.6你掌握了么 47第4章 創(chuàng)建空間站 49 4.1為什么要自動生成地圖 49 4.2如何自動生成地圖 49 4.3創(chuàng)建地圖數(shù)據(jù) 50 4.4編寫GAME_MAP代碼 51 4.5測試和調(diào)試代碼 54 4.6根據(jù)數(shù)據(jù)生成房間 54 4.7探索3D空間站 60 4.8制作自己的地圖 63 4.9你掌握了么 63第5章 籌備空間站設(shè)備 65 5.1創(chuàng)建一個簡單的行星字典 65 5.2制作空間站物品字典 70 5.3你掌握了么 79第6章 安裝空間站設(shè)備 81 6.1了解布景數(shù)據(jù)字典 81 6.2添加布景數(shù)據(jù) 83 6.3在行星表面添加圍欄 85 6.4將布景加載到每個房間 87 6.5更新EXPLORER瀏覽空間站 90 6.6你掌握了么 91第7章 進入空間站 93 7.1抵達空間站 93 7.2添加移動代碼 97 7.3理解移動代碼 100 7.4在房間之間移動 103 7.5你掌握了么 106第8章 修復(fù)空間站 107 8.1發(fā)送信息給函數(shù) 107 8.2添加陰影、墻體透明度和顏色的變量 109 8.3刪除EXPLORER部分 111 8.4添加DISPLAY部分 112 8.5在屏幕上定位房間 118 8.6讓前面的墻體淡入淡出 120 8.7顯示提示和警告 122 8.8進入房間時顯示房間名稱 123 8.9你掌握了么 125第9章 整理你的個人物品 127 9.1添加道具信息 127 9.2在房間地圖中添加道具 130 9.3從房間地圖查找對象編號 132 9.4拾取物品對象 134 9.5添加清單相關(guān)的函數(shù) 136 9.6放下物品對象 140 9.7檢查物品對象 141 9.8你掌握了么 143第10章 使用物品 145 10.1添加使用物品的鍵盤控制 145 10.2添加使用物品對象的標(biāo)準(zhǔn)消息 146 10.3添加游戲進度變量 147 10.4添加特定對象的操作 148 10.5組合物品 150 10.6添加游戲完成動畫 152 10.7探索物品對象 153 10.8你掌握了么 154第11章 激活安全門 155 11.1規(guī)劃在何處放置安全門 155 11.2定位房門 156 11.3添加通行控制 156 11.4讓門打開和關(guān)閉 158 11.5添加門的動畫 160 11.6關(guān)閉定時門 161 11.7添加傳送器 162 11.8激活氣閘艙安全門 163 11.9在自己的游戲設(shè)計中刪除出口 165 11.10任務(wù)完成了么 166 11.11你掌握了么 166第12章 危險!危險!突發(fā)事件 167 12.1添加空氣監(jiān)測 167 12.2添加移動的危險物品 171 12.3添加有毒的泄漏物 180 12.4收尾工作 180 12.5你的下一個任務(wù):自定義游戲 182 12.6你掌握了么 183附錄 185 附錄A Escape游戲完整代碼 185 附錄B 變量、列表和字典 209 附錄C 調(diào)試你的程序 210