国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識百科 - 正文

python編寫貪吃蛇

來源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-06-17 15:21:19
文檔

python編寫貪吃蛇

首先來看貪吃蛇模塊,其次是食物模塊,然后是init_board函數(shù),接著是game_over模塊,接下來是游戲初始化模塊,最后是游戲主函數(shù)
推薦度:
導(dǎo)讀首先來看貪吃蛇模塊,其次是食物模塊,然后是init_board函數(shù),接著是game_over模塊,接下來是游戲初始化模塊,最后是游戲主函數(shù)

首先來看貪吃蛇模塊:

首先__init__初始化貪吃蛇的位置初始方向豎直向上。toward函數(shù)用于改變貪吃蛇的方向,(x,y)分別表示蛇頭在水平和豎直方向的朝向。朝左x=-1,朝右x=1,朝上y=-1,朝下y=1。move函數(shù),使用標(biāo)志enlarge來判斷蛇是否吃到了食物,并進(jìn)行相應(yīng)的操作。eat_food函數(shù)判斷蛇是否吃到食物,吃到的話,分?jǐn)?shù)加 100,并返回True。toward函數(shù),用于改變蛇頭的方向,但如果改變方向與當(dāng)前方向相反,就什么操作都不執(zhí)行。draw函數(shù)用于畫出貪吃蛇的模樣,蛇頭是略大一點(diǎn)的紅心,蛇身是小一點(diǎn)的黃心。

我們怎么畫出這條蛇呢?這就要借助函數(shù)pygame.draw.circle,這個(gè)函數(shù)的主要參數(shù)有screen:就是你要在其中畫出貪吃蛇的游戲界面,color:圖案的顏色(RGB), position:圖案在屏幕上的位置, radius:的半徑,width:內(nèi)部填色的大小,如果為零,圖案就是空心圓;如果與半徑大小相同,圖案就是實(shí)心圓。

下面是貪吃蛇的代碼部分,大家可以結(jié)合注釋閱讀

其次是食物模塊

np.random.randint用于產(chǎn)生邊界之內(nèi)的坐標(biāo),如果與貪吃蛇的坐標(biāo)重合,那么就繼續(xù)生成新的隨機(jī)坐標(biāo)。

然后是init_board函數(shù)

board_width、board_height分別為游戲界面的寬度和高度,根據(jù)計(jì)算得出邊框占據(jù)的位置,然后打印出正方形來。pygame.draw.rect和pygame.draw.circle用法類似,區(qū)別就是rect四個(gè)參數(shù)分別為screen:屏幕,color:顏色,pos:橫坐標(biāo) x,縱坐標(biāo) y,矩形的長,矩形的寬。這里我設(shè)置矩形長寬都為 20 。width和circle中width用法相同,都是填充大小的意思。

接著是game_over模塊

如何判斷誰咬到自身呢?可以利用python內(nèi)置數(shù)據(jù)結(jié)構(gòu)set:set這種數(shù)據(jù)結(jié)構(gòu)中不能有重復(fù)元素。如果將list變成set之后,長度變短了,就說明list中有重復(fù)元素,即貪吃蛇咬到自己了。

接下來是游戲初始化模塊

使用pygame模塊需要使用pygame.init進(jìn)行初始化。pygame.display.set_mode用來設(shè)置游戲界面的大小。pygame.display.set_caption用來顯示游戲標(biāo)題。

最后是游戲主函數(shù)

首先實(shí)例化貪吃蛇和食物。其次設(shè)置字體為SimHei,如果使用默認(rèn)字體對中文的支持很不好。其次顯示游戲界面,判斷游戲是否失敗。如果失敗的話,就打印GAME OVER。否則就一直執(zhí)行主函數(shù)。其中 pygame.event.get從隊(duì)列中獲取事件,也就是說必須先獲取事件,才能得到用戶的鍵盤輸入和其他操作,screen.fill用于填充屏幕,pygame.key.get_pressed用于獲取用戶的鍵盤輸入,pygame.display.update用來刷新到之前的圖案,time.sleep用于控制刷新的頻率。

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

python編寫貪吃蛇

首先來看貪吃蛇模塊,其次是食物模塊,然后是init_board函數(shù),接著是game_over模塊,接下來是游戲初始化模塊,最后是游戲主函數(shù)
推薦度:
標(biāo)簽: 怎么做 簡單 怎么
  • 熱門焦點(diǎn)

最新推薦

猜你喜歡

熱門推薦

專題Excel怎么橫坐標(biāo)專題{{!value}}專題python是什么專題python編程專題python基礎(chǔ)教程專題python教程專題python爬蟲專題food專題用python畫蝴蝶代碼專題python畫圖代碼彩虹專題python爬蟲有什么用專題python爬蟲是什么專題爬蟲python能做什么專題python爬蟲有什么實(shí)際作用專題python爬蟲能干什么專題為什么python適合爬蟲專題python爬蟲可以干什么專題python怎么寫爬蟲專題python爬蟲能做什么專題python基礎(chǔ)專題
Top
主站蜘蛛池模板: 国产 欧美 在线 | 亚洲一区二区三区免费 | 无毛片| 国产精品久久久久无码av | 日韩网站在线观看 | 国产成人久久精品激情91 | 国内精品伊人久久久久 | 免费国产在线观看 | 91导航在线观看 | 伊人久久精品久久亚洲一区 | 国产在线成人一区二区 | 国产正在播放 | 欧美性俄罗斯18精品 | 亚洲欧美日韩第一页 | 国产成人精品亚洲一区 | 国产精品伊人 | 大陆日韩欧美 | 欧美成人精品第一区二区三区 | 一区二区亚洲视频 | 欧美日韩亚洲一区二区三区在线观看 | 在线亚洲精品国产成人二区 | 久久久精品一区二区三区 | 国产亚洲精品成人婷婷久久小说 | 欧美嘿咻视频 | 国产日产高清欧美一区二区三区 | 国产一区二区在线免费观看 | 看一级特黄a大片日本片 | 自拍偷拍亚洲视频 | 亚洲第八页| 国产一级淫片a免费播放口 国产一级特黄a大片99 | 小说区 亚洲 自拍 另类 | 免费看真人a一级毛片 | 久久精品成人国产午夜 | 亚洲视频第一页 | 99久久精品国产国产毛片 | 亚洲人成一区二区三区 | 日本大黄在线观看 | 国产精品久久久久久久久鸭 | 又大又硬又爽 | 久久国产成人精品国产成人亚洲 | 黄色在线观看网站 |