亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Python 中的 pygame.draw.rect() 有哪些不同的顏色?

Python 中的 pygame.draw.rect() 有哪些不同的顏色?

守著一只汪 2023-03-16 10:58:00
我正在學習使用 PyGame 制作貪吃蛇游戲?,F在代碼是這樣的(它不完整,請不要給出制作貪吃蛇游戲的實際代碼?。? Setting up PyGame and a windowimport pygamepygame.init()dis = pygame.display.set_mode((400, 300))pygame.display.update()pygame.display.set_caption('Snake game by snoopstick')game_over = False# Creating Colorsblue = (0, 0, 225)red = (255, 0, 0)while not game_over:    for event in pygame.event.get():        if event.type == pygame.QUIT:            game_over = True    pygame.draw.rect(dis, blue, [200, 150, 10, 10])    pygame.display.update()pygame.quit()quit()你可以看到我已經可以制作紅色和藍色,但我想知道如何制作更多顏色或更多不同類型的游戲。有哪些不同的參數可以代替藍色和紅色。
查看完整描述

3 回答

?
HUX布斯

TA貢獻1876條經驗 獲得超6個贊

pygame 有大量預定義的命名顏色,這很有用。您無需自己重新定義它們,只需從 pygames 預定義列表中獲取紅色和藍色即可:


red = pygame.Color('red')

blue = pygame.Color('blue')

你可以通過查看字典 pygame.color.THECOLORS 直接看到所有的顏色,但是要遍歷很多顏色。這是我對類似問題的先前回答的回答的鏈接。也許我應該把它留給答案的鏈接?不確定,所以我將包含足夠有用的內容。


我發現這個代碼片段很容易在交互式會話中執行,然后我可以在我的實際代碼中使用我想要的那個。


import pygame

from pprint import  pprint


def print_colors(color_name):

    color_list = [(c, v) for c, v in pygame.color.THECOLORS.items() if color_name in c]

    pprint(color_list)


print_colors('slategrey')

輸出:


[('darkslategrey', (47, 79, 79, 255)),

 ('slategrey', (112, 128, 144, 255))

 ('lightslategrey', (119, 136, 153, 255))]

我在交互式會話中執行此操作以獲取包含“slategrey”的所有名稱,然后在我的實際代碼中我可以使用我想要的名稱,如下所示:


darkslategrey = pygame.Color('darkslategrey')


查看完整回答
反對 回復 2023-03-16
?
倚天杖

TA貢獻1828條經驗 獲得超3個贊

顏色是紅色、綠色和藍色的混合。就像油漆一樣。您可以使用 0 到 255(含)之間的值來控制混合中每個的數量。

您可以使用 PygameColor類制作任何您想要的顏色 - https://www.pygame.org/docs/ref/color.html

查看Color類構造函數,了解創建顏色的各種方法。

如果您想嘗試一些顏色混合,請使用HTML 顏色選擇器頁面。


查看完整回答
反對 回復 2023-03-16
?
慕絲7291255

TA貢獻1859條經驗 獲得超6個贊

這些是RGB 顏色,提供的鏈接中有一個選擇器!



查看完整回答
反對 回復 2023-03-16
  • 3 回答
  • 0 關注
  • 153 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號