日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

按键映射_第三章 中文注释及按键相关

發布時間:2024/4/13 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 按键映射_第三章 中文注释及按键相关 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

忙了幾天,又累了個周末,緊接著又出差,心塞...

今天跟大家一起學習一下中文注釋及按鍵相關方面的知識。

一、中文注釋

首先把上一章的代碼粘貼上來

import sys, pygame pygame.init()screen = pygame.display.set_mode((320, 240)) black = (0, 0, 250)while 1:for event in pygame.event.get():if event.type == pygame.KEYDOWN:if event.key == pygame.K_ESCAPE:sys.exit()screen.fill(black)pygame.display.flip()

剛接觸代碼的童鞋(比如我)很容易被雞腸文繞暈,畢竟不是母語。沒事,我們可以用中文注釋來標記,方便代碼管理和維護,我知道你們想說盡量用英語注釋,可誰叫咱英語差呢。

import sys, pygame # 導入所需庫 pygame.init() # 初始化pygamescreen = pygame.display.set_mode((320, 240)) # 設置屏幕尺寸320*240 black = (0, 0, 250) # 定義背景色while 1: """主循環開始"""for event in pygame.event.get(): # 監聽事件if event.type == pygame.KEYDOWN: # 監聽按鍵按下事件if event.key == pygame.K_ESCAPE: # 監聽ESC鍵按下sys.exit() # 程序退出screen.fill(black) # 背景色繪制屏幕pygame.display.flip() # 刷新屏幕

安全起見,丟進GS跑一遍。

久違的失敗三聯

哎,一點都不省心。

沒事,我們還有度娘支援啊。查了一通發現是中文編碼問題,只要在文件頭加上# coding=utf-8這么一句就行了。更改后代碼如下

# coding=utf-8import sys, pygame # 導入所需庫 pygame.init() # 初始化pygamescreen = pygame.display.set_mode((320, 240)) # 設置屏幕尺寸320*240 black = (0, 0, 250) # 定義背景色while 1: """主循環開始"""for event in pygame.event.get(): # 監聽事件if event.type == pygame.KEYDOWN: # 監聽按鍵按下事件if event.key == pygame.K_ESCAPE: # 監聽ESC鍵按下sys.exit() # 程序退出screen.fill(black) # 背景色繪制屏幕pygame.display.flip() # 刷新屏幕

順便說一下,上述的utf-8可替換為GB2312 、GBK 、GB18030,對應的就是編碼格式,然而無論我替換哪個...

標準的失敗三聯

不對啊大哥,你這不按套路出牌啊,你總不能每個地方都卡我幾天吧?

內心毫無波瀾.jpg

又翻查了一通,還是找不出個所以然來,但是有一段話倒是給我一個思路:

來源:https://blog.csdn.net/junkichan/article/details/51913845,侵刪

首先,我們的注釋中出現的中文字符應該是沒問題的,都是常用字,不可能是上述幾個編碼格式未收錄的情況,那就是標點符號的問題咯?

按這個思路,要么是井號(#)出問題要么是雙引號(”)出問題,先保留井號試試。把代碼更改如下:

# coding=utf-8import sys, pygame # 導入所需庫 pygame.init() # 初始化pygamescreen = pygame.display.set_mode((320, 240)) # 設置屏幕尺寸320*240 black = (0, 0, 250) # 定義背景色while 1: # 主循環開始for event in pygame.event.get(): # 監聽事件if event.type == pygame.KEYDOWN: # 監聽按鍵按下事件if event.key == pygame.K_ESCAPE: # 監聽ESC鍵按下sys.exit() # 程序退出screen.fill(black) # 背景色繪制屏幕pygame.display.flip() # 刷新屏幕

丟進GS,成功運行。

這難道還有玄學的成分???

意思無法識別雙引號???

這是什么鬼邏輯???不過我不想在這里卡太多時間,畢竟現階段我們還沒那么急切的需求雙引號的長注釋,中文注釋功能已經可以實現,先這樣吧,回頭有時間再研究。


二,按鍵相關

接下來是按鍵映射的問題,根據GS的開發文檔,其按鍵映射是這樣紙滴:

來源見水印,圖侵刪

上圖中左下部分(LK1-LK5鍵)為擴展背板按鍵,部分機友貌似是沒有這個部分的,而且不知道是不是我的版本問題,這部分擴展按鍵鍵值是相反的,意思是按shift鍵之前,LK1鍵對應的是h鍵,按shift鍵之后才對應home鍵。

將我們的代碼擴展如下:

# coding=utf-8import sys, pygame # 導入所需庫 pygame.init() # 初始化pygamescreen = pygame.display.set_mode((320, 240)) # 設置屏幕尺寸320*240 black = (0, 0, 250) # 定義背景色while 1: # 主循環開始for event in pygame.event.get(): # 監聽事件if event.type == pygame.KEYDOWN: # 監聽按鍵按下事件if event.key == pygame.K_ESCAPE: # 監聽ESC鍵按下sys.exit() # 程序退出elif event.key == pygame.K_h: # 監聽h鍵按下black = (0, 250, 0) # 重新定義背景色為綠elif event.key == pygame.K_k: # 監聽k鍵按下black = (0, 0, 250) # 重新定義背景色為藍screen.fill(black) # 背景色繪制屏幕pygame.display.flip() # 刷新屏幕

這樣我們開機后運行程序,撲面而來的是滿屏的心慌藍,當你按住shift鍵(方向盤上方那個也可,擴展的LK3也可)再按B鍵,就會變成全屏的開心綠,松開shift鍵再按A鍵,心慌藍又回來了。

對應鍵值如下(排名不分先后):

注意區分大小寫

大家可以自己測試一下,今天就到這。

古得耐

總結

以上是生活随笔為你收集整理的按键映射_第三章 中文注释及按键相关的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。