在 Python 中生成隨機顏色

Manav Narula 2023年1月30日 2021年4月29日
  1. 在 Python 中以 RGB 格式生成隨機顏色
  2. 在 Python 中以十六進位制格式生成隨機顏色
在 Python 中生成隨機顏色

在數字世界中,顏色以不同的格式表示。RGB、十六進位制格式只是一些常用格式。

在本教程中,我們將學習如何在 Python 中生成隨機顏色。當我們談論生成隨機顏色時,我們將生成一個可以表示顏色的隨機程式碼。不同的方法將生成不同格式的顏色程式碼。

在 Python 中以 RGB 格式生成隨機顏色

RGB 代表紅色,綠色和藍色。它們一起代表了數字世界中的色譜。紅色,綠色和藍色可以一起代表每種顏色,並且每種顏色均為 8 位。這意味著它們的整數值為 0 到 255。

為了生成 RGB 格式的隨機顏色,我們將生成一個從 0 到 255 的隨機整數列表或元組。

以下程式碼顯示瞭如何實現此目的。

import numpy as np
color = list(np.random.choice(range(256), size=3))
print(color)

輸出:

[245, 159, 34]

在上面的程式碼中,我們使用 NumPy 模組中的 random 生成隨機整數。它只是簡單地生成 0 到 255 之間的隨機整數三遍,並將其儲存在列表中。由於可以通過許多其他方式生成隨機整數,因此主要重點應放在程式碼的邏輯上。

在 Python 中以十六進位制格式生成隨機顏色

在十六進位制中,顏色以六個十六進位制數字表示,並以#號為字首。格式為 #RRGGBB,其中 R,G 和 B 分別表示 RedGreenBlue,並且是十六進位制數。

我們可以使用如下所示的程式碼以這種格式生成隨機顏色。

import random
color = ["#"+''.join([random.choice('0123456789ABCDEF') for j in range(6)])]
print(color)

輸出:

['#BE3559']

在上面的程式碼中,我們從指定的十六進位制數字中選擇六個隨機數,然後使用 join() 函式將它們與 # 符號合併。

還有許多其他顏色格式可用,並且在它們之間進行轉換非常容易。

要記住的一件事是,我們在本教程中以不同的格式生成了顏色程式碼。要實際看到這些顏色,我們必須使用其他模組生成一些圖形或繪製一些圖形。

例如,在下面的程式碼中,我們將使用 Matplotlib 模組的散點圖繪製所產生顏色程式碼的簡單點。

import random
import matplotlib.pyplot as plt

color = ["#"+''.join([random.choice('0123456789ABCDEF') for j in range(6)])]
print(color)

plt.scatter(random.randint(0, 10), random.randint(0,10), c=color, s=200)
plt.show()

輸出:

python 隨機顏色

Author: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

相關文章 - Python Color