0
我有一個程序在pygame環境中接收用戶的密鑰,然後在控制檯上打印一些信息並執行一些其他的工作 它在Windows上工作正常 當使用非常相同的代碼切換到linux時,它不能正常工作,並且它似乎沒有響應任何來自鍵盤 的輸入鍵,我試圖將1/0用於測試Hyperboreus先生建議的確切問題的位置(註釋下面的代碼) ,我發現確切的問題,「如果event.key」python pygame程序在切換到linux時無法正常工作
的功能,我使用:
for event in pygame.event.get(KEYDOWN):
# 1/0 --> it give me an error when pressing any button
if event.key == K_i:
numbers.insert(0,number)
#1/0 --> is not giving me any error when pressing i
print "ingoing"
return 1 #"ingoing"
elif event.key==K_m:
numbers.insert(0,number)
print "missed"
return 2 #"missed"
elif event.key==K_o:
numbers.insert(0,number)
print "outgoing"
return 3 #"outgoing"
elif event.key==K_l:
disp_log() #this function displays test on the pygame screen
else :
None
,我該命令 蟒蛇xxxxx.py播放從終端腳本
我安裝python2.7,python3和python3.2和pygame的 ,我試圖刪除它們,並重新安裝它們,同樣的問題存在
請在'print'ingoing''之前的行上放一個'1/0',以確保滿足這個條件。如果你的腳本在按'i'時發生錯誤,那麼輸出有問題。如果它沒有拋出錯誤,那麼你永遠不會到達'print'行。請發佈結果。 – Hyperboreus
@Hyperboreus:它沒有給出錯誤! ,聰明的建議 –
聰明的建議:(a)你的事件循環沒有運行,(b)你永遠不會得到關鍵事件,(c)太陽耀斑。真的,我只是在一個泥濘的池塘裏用棍子戳。檢查你的整個腳本,看看你的代碼實際上執行多遠,如果主要事件循環運行,等等。 – Hyperboreus