1樓:我爸喜歡
event英文翻譯是事件 get 獲取 type是樣式,型別的意思,所以他這個都是有規律的,但是有順序事件在前,後面跟屬性
同時也有父子(層級)關係
event.get() 獲取到的事件
event.type() 事件型別
event.key() 按鍵事件
一般都是寫在while裡面,因為這是個不斷迴圈的過程,不然,只執行一便達不到實際要求,這是pygame裡面設定好的
這是貪吃蛇遊戲的一段**(一部分):
txt = font.render('game over', true, (255, 0, 0))
screen.blit(txt, (size[0]/6, size[1]*2/5-20)) # (0, 0) (size[0]/6, size[1]*2/5)100號字中心位置
direction = 'right' # 初始方向,向右
changedirection = direction # 定義一個改變方向的變數,按鍵
running = true
while trunning:
for event in pygame.event.get(): # 從佇列中獲取事件
if event.type == quit: # 判斷事件型別是否為退出事件
# pygame.quit()
sys.exit()
elif event.type == keydown: # 如果按鍵被按下(事件)
if event.key == k_right or event.key == k_d: # 如果是右鍵頭或者是d,蛇向右移動
changedirection = 'right'
if event.key == k_left or event.key == k_a: # 如果是左鍵頭或者是a,蛇向左移動
changedirection = 'left'
if event.key == k_up or event.key == k_w:
changedirection = 'up'
if event.key == k_down or event.key == k_s:
changedirection = 'down'
#這下面一行可以忽略,
if event.key == k_escape: # 對應鍵盤上的esc鍵,表示退出
pygame.event.post(pygame.event.event(quit))
# 繪製文字,重新整理顯示
screen.blit(txt, (20, 10))
screen.fill(blackcolor) #放在for語句一列,屬於while的(子)層級,迴圈不斷的重新整理
2樓:yuuy小童鞋
import pygame,sys
from pygame.locals import *pygame.init()
windowwidth=480
windowheight=700
caption_name='hello woad'
displaysurf=pygame.display.set_mode((windowwidth,windowheight))
pygame.display.set_caption(caption_name)
while true:
displaysurf.fill((255,255,255))#初始化螢幕 白色
for event in pygame.event.get():
if event.type == quit:#退出檢測pygame.quit()
sys.exit()
pygame.display.update()#更新
3樓:使用者協議書
while true:
for event in pygame.event.get():
if event.type = = pygame.quit:
pygame.quit()
quit()
# 螢幕填充在while迴圈下,而不在for迴圈下screen.fill((0, 0, 0))# 反轉螢幕以展示最近一次的繪製,非常重要!
pygame.display.flip()
4樓:匿名使用者
你的while true沒有處理,也沒有main loop
進入了死迴圈,當然沒有響應了
python pygame的執行問題?
5樓:匿名使用者
你只截圖出錯的地方,但是截圖中沒有包含你出錯的**
不方便分析錯誤原因啊
6樓:900就
建議安裝最新pygame版本。
python利用pygame模組編遊戲遇到個小問題 30
7樓:jason粉絲團
錯誤提示說sprite沒有__int__方法,應該是__init__吧,第九行,因為你是繼承pygame.sprite.sprite,然後要初始化他的類,所以應該是__init__少了一個i吧。
學會debug看錯誤提示
8樓:
updates=sprites.draw(screen) 這是隻畫了螢幕,就是白色的部分,雖然載入**了,但是並沒有blit到screen上,試下screen.blit(weight_image,(0,0)),就會被新增到螢幕上了
9樓:
樓主你用的python是3.0以上版本嗎?建議用2.7版本試一下,我用3.6的pygame初始化和呼叫鍵盤都報錯,但是重新配置2.7版本就可以了
10樓:匿名使用者
這是因為源**和**檔案不在同一個目錄裡
應該把**和源**放在一個資料夾
11樓:爵亙
12樓:江滬椿明
樓主 你的skier_images 裡面的5個**檔案可以發給我一份嗎? 找了好多地方都沒找到。謝謝
13樓:匿名使用者
樓主求skier的相關**檔案,目前也在看這本書,**在網上找了很久沒有。[email protected]謝謝
我在匯入python的一個庫pygame的時候出現了下面這種問題,求回答:
14樓:匿名使用者
這種情況多數是因為 你作業系統是64位的,但是python安裝的是32位的,而現在安裝的模組又是64位的。
解決辦法就是,把pygame模組換成 32位的就可以了。
python pygame執行問題
15樓:匿名使用者
updates=sprites.draw(screen) 這是隻畫了螢幕,就是白色的部分,雖然載入**了,但是並沒有blit到screen上,試下screen.blit(weight_image,(0,0)),就會被新增到螢幕上了
16樓:
是放到當前目錄嗎?執行路徑是可執行檔案當前路徑嗎
17樓:匿名使用者
把最後四行**縮排下放到while塊中就對了哈
python基礎,求解這個pygame為什麼關不掉
18樓:匿名使用者
在sys.exit前加一行:pygame.quit()
我試著能正常退出,你試試
19樓:匿名使用者
判斷退出時候,應該是這個
event.type==pygame.locals.quit
20樓:活寶黑色咖啡
試試這段
while true:
for event in pygame.event.get():
if event.type==pygame.quit:
pygame.quit()
exit()
21樓:匿名使用者
在sys.exit()前,加一行pygame.quit()
用python怎麼用類的方法計算圓柱的表面積和體積
墨汁諾 12345678910111213import mathclass cylinder def init self,r,h self.r r self.h h def volume self return math.pi self.r self.r self.h def area self r...
用Python輸出0 100之間的奇數之和
具體算式如下 t 0 for i in range 100 if i 2 1 t i print t 這句if i 2 1 是i對2求餘即偶數對2求餘為0,奇數對2求餘為1。python,是一種物件導向的解釋型計算機程式設計語言,由荷蘭人guido van rossum於1989年發明,第一個公開發...
怎麼用python直接讀取檔案中的數字
網際網路前世今生 coding utf 8 f open test.txt s f.readline print s while s n arr s.split a1 arr 0 a2 arr 1 replace n readline 讀取檔案的時候,預設加上 n print a1 print a2...