中文字幕精品无码一区二区,成全视频在线播放观看方法,大伊人青草狠狠久久,亚洲一区影音先锋色资源

小學課后服務 Python少兒編程 進階篇:10-飛機大戰1 (19張PPT)

資源下載
  1. 二一教育資源

小學課后服務 Python少兒編程 進階篇:10-飛機大戰1 (19張PPT)

資源簡介

(共19張PPT)
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Cum sociis natoque tatibus et magnis dis parturient montes, nascetur ridiculus mus.
少兒編程課
飛機大戰1
Pygame簡介與下載安裝
Pygame簡介
Pygame是一套用來寫游戲的Python模塊
同時,pygame也是一個第三方庫模塊,所以如果我們想要使用它,首先需要下載安裝
Pygame能夠制作什么游戲?
現在,開始下載安裝pygame
1
打開cmd,輸入pip install pygame
2
按下回車,將會自動下載安裝
安裝完成之后,首先創建一個屏幕
1
導入與初始化
2
然后創建一個屏幕
import pygame
from pygame.locals import *
# 定義屏幕寬、高
WIDTH = 480
HEIGHT = 600
# 初始化
pygame.init()
# 創建屏幕
screen=pygame.display.set_mode((WIDTH, HEIGHT))
運行程序,可以看到窗口出現
可以看到,雖然屏幕出現了,但是很快又消失了,這是為什么呢?
1
程序的執行過程是從上往下順序執行
當程序執行到末尾,進入死循環,程序一直不會結束,之前創建的屏幕就不會消失。
2
使用死循環來解決這個問題
屏幕閃退的原因和解決方法:
1+1
2+2
3+3
4+4
2
4
6
8
當程序執行到末尾,沒有其他程序段可執行,程序退出,屏幕跟著消失。
3
添加死循環
while True:
pass
4
再次運行程序,屏幕不在閃退
但是此時又有其他的問題,退出十分的費勁
程序運行之后,點擊好幾次叉號退出都沒有反應,而且程序很容易卡死。
如何更方便的退出?
實現這個功能,我們需要先了解一下“事件”
比如像很多程序的退出一樣:
按下鍵盤上的ESC鍵
程序就退出
事件
事件是什么?
1
點擊鼠標是事件
2
按下鍵盤是事件
3
點擊叉號,關閉我們編寫的這個程序也是事件
而對于這些事件,pygame都能夠知道
點擊鼠標
按下鍵盤
滑動鼠標
.
.
事件包含事件、事件源和事件監聽。在pygame中,事件可以這樣簡單來總結:
在了解事件之后,開始編寫退出游戲的功能
1
完善死循環代碼,實現退出功能
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
# 結束游戲
running = False
elif event.type == pygame.KEYDOWN:
if event.key == pygame.K_ESCAPE:
# 結束游戲
running = False
2
然后讓程序退出時,Pygame徹底退出
pygame.quit()
3
運行程序,嘗試幾次退出功能的效果
pygame.event.get能夠監聽并獲得所有的事件,通過它可以知道是否按下了某個按鍵
接著繪制一個飛機出來,最開始可以使用一個綠色的小方塊來表示
1
定義一個surface
2
將surface的顏色改為綠色
surf_plane = pygame.Surface((50, 50))
# 設置surf_plane的背景顏色
surf_plane.fill((0, 255, 0))
在pygame中,surface代表一塊區域,例如整個屏幕。
上面的代碼定義了一個長和寬都為50像素,顏色為黑色的正方形區域
這里指定顏色時,是使用rgb來表達顏色的
屏幕上的一個像素點由三種顏色構成:紅、綠、藍也就是RGB。
三種顏色可以混合出很多種顏色,取值范圍是0到255。
比如(255, 0, 0)就表示紅色全部,加0個綠色,加0個藍色,最終還是紅色。
練習
Exercises








將這個正方形顏色修改為藍色
接著我們把表示飛機的方塊畫到屏幕中,先來了解下Pygame中的坐標系
(0,0)
600
480
(0,600)
(480,0)
( , )
X軸
Y軸
注意:在pygame中,使用的單位是像素
將飛機畫到屏幕左上角
1
將正方形畫到屏幕
3
運行程序,方塊表示的飛機就顯示在屏幕中了
# 將正方形繪制到屏幕上
screen.blit(surf_plane, (100, 100))
注意:這句話要寫在循環中。
第一個參數表示這個正方形,第二對參數表示繪制出的正方形的左上角的坐標。
2
重繪畫面,使綠色小塊顯示
# 重繪游戲界面,相當于刷新一次
pygame.display.flip()
總結
Summary
pygame簡單使用

Pygame中事件的簡單理解與使用

顏色表達方式——RGB的理解與運用

Thanks!

展開更多......

收起↑

資源預覽

<pre id="tfb94"><li id="tfb94"></li></pre>

<bdo id="tfb94"><rt id="tfb94"></rt></bdo>
  • <menu id="tfb94"><dl id="tfb94"></dl></menu><i id="tfb94"><acronym id="tfb94"><sub id="tfb94"></sub></acronym></i>

    1. 主站蜘蛛池模板: 八宿县| 长岛县| 雷州市| 溧水县| 衡水市| 巢湖市| 清水河县| 渑池县| 类乌齐县| 达孜县| 荣昌县| 庐江县| 阜康市| 隆安县| 承德县| 手机| 新乐市| 鄢陵县| 来宾市| 台中县| 房产| 永吉县| 泽州县| 库伦旗| 呼和浩特市| 双牌县| 梁山县| 丹江口市| 临朐县| 沂水县| 武乡县| 西林县| 铁岭县| 三台县| 宣城市| 顺昌县| 德兴市| 武城县| 南安市| 新巴尔虎右旗| 曲阜市|