中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python外星人入侵游戲重構鍵盤鼠標響應的方法是什么

發布時間:2021-11-30 15:43:44 來源:億速云 閱讀:110 作者:iii 欄目:大數據

本篇內容主要講解“Python外星人入侵游戲重構鍵盤鼠標響應的方法是什么”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Python外星人入侵游戲重構鍵盤鼠標響應的方法是什么”吧!

用法分析

在大型項目中,經常需要在添加新代碼前重構既有代碼。重構旨在簡化既有代碼的結構,使其更容易擴展。在本節中,我們將創建一個名為game_functions 的新模塊,它將存儲大量讓游戲《外星人入侵》運行的函數。通過創建模塊game_functions ,可避免alien_invasion.py太長,并使其邏輯更容易理解。

將check_events() 和update_screen放在一個名為game_functions 的模塊中 

代碼實例

#======================================================
#功能:game_functions 類
#作者:python小哥
#時間:2020-7-5
#微信公眾號:DJXY00001
#微信名稱:Python提升課堂
#Version:1.0
#======================================================
import sysimport pygamedef check_events():    """響應按鍵和鼠標事件"""    for event in pygame.event.get():        if event.type == pygame.QUIT:            sys.exit()def update_screen(ai_settings, screen, ship):    """更新屏幕上的圖像,并切換到新屏幕"""    # 每次循環時都重繪屏幕    screen.fill(ai_settings.bg_color)    ship.blitme()    # 讓最近繪制的屏幕可見    pygame.display.flip()

這個模塊中導入了事件檢查循環要使用的sys 和pygame 。當前,函數check_events() 不需要任何形參,其函數體復制了alien_invasion.py的事件循環。

下面來修改alien_invasion.py,使其導入模塊game_functions ,并將事件循環替換為對函數check_events() 的調用。屏幕更新代碼替換為update_screen函數。

#======================================================
#功能:alien_invasion類
#作者:python小哥
#時間:2020-7-5
#微信公眾號:DJXY00001
#微信名稱:Python提升課堂
#Version:1.0
#======================================================
import pygamefrom settings import Settingsfrom ship import Shipimport game_functions as gfdef run_game():  --snip--  # 開始游戲主循環  while True:    gf.check_events()    gf.update_screen(ai_settings, screen, ship)

其中--snip--代表延續前節的內容。

在主程序文件中,不再需要直接導入sys ,因為當前只在模塊game_functions 中使用了它。出于簡化的目的,我們給導入的模塊game_functions 指定了別名gf 。

代碼運行輸出:

Python外星人入侵游戲重構鍵盤鼠標響應的方法是什么

我們一開始只想使用一個文件,因此沒有立刻引入模塊game_functions 。這讓你能夠了解實際的開發過程:一開始將代碼編寫得盡可能簡單,并在項目越來越復雜時進行重構。

到此,相信大家對“Python外星人入侵游戲重構鍵盤鼠標響應的方法是什么”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

黑河市| 中牟县| 平果县| 鞍山市| 平阳县| 原阳县| 云霄县| 宝山区| 沁源县| 谢通门县| 陆川县| 大名县| 涟源市| 锡林浩特市| 吴堡县| 新巴尔虎左旗| 剑川县| 苍南县| 团风县| 周至县| 通渭县| 临泽县| 库伦旗| 呼伦贝尔市| 垫江县| 原阳县| 辉县市| 道孚县| 鹤山市| 漳平市| 昔阳县| 阿拉尔市| 富顺县| 东山县| 玛沁县| 博罗县| 铜陵市| 肃宁县| 竹溪县| 青河县| 滦平县|