Générer des couleurs aléatoires en Python

Manav Narula 30 janvier 2023
  1. Générer des couleurs aléatoires au format RVB en Python
  2. Générer des couleurs aléatoires au format hexadécimal en Python
Générer des couleurs aléatoires en Python

Dans le monde numérique, les couleurs sont représentées dans différents formats. Les formats RVB et hexadécimal ne sont que quelques-uns des formats les plus utilisés.

Dans ce tutoriel, nous allons apprendre à générer des couleurs aléatoires en Python. Lorsque nous parlons de générer des couleurs aléatoires, nous générons un code aléatoire qui peut représenter la couleur. Différentes méthodes généreront des codes de couleur dans différents formats.

Générer des couleurs aléatoires au format RVB en Python

RVB signifie rouge, vert et bleu. Ensemble, ils représentent le spectre de couleurs dans le monde numérique. Le rouge, le vert et le bleu ensemble peuvent représenter toutes les couleurs et sont de 8 bits chacun. Cela signifie qu’ils ont une valeur entière comprise entre 0 et 255.

Pour générer des couleurs aléatoires au format RVB, nous allons générer une liste ou un tuple d’entiers aléatoires de 0 à 255.

Le code suivant montre comment implémenter cela.

import numpy as np

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

Production:

[245, 159, 34]

Nous générons des entiers aléatoires en utilisant le random du module NumPy dans le code ci-dessus. Il génère simplement un entier aléatoire de 0 à 255 trois fois et le stocke dans une liste. L’accent principal doit être mis sur la logique du code car les entiers aléatoires peuvent être générés de nombreuses autres manières.

Générer des couleurs aléatoires au format hexadécimal en Python

En hexadécimal, la couleur est représentée par six chiffres hexadécimaux, précédés du signe #. Le format est en #RRGGBB où R, V et B indiquent respectivement Red, Green et Blue et sont des nombres hexadécimaux.

Nous pouvons générer des couleurs aléatoires dans ce format en utilisant le code comme indiqué ci-dessous.

import random

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

Production:

['#BE3559']

Dans le code ci-dessus, nous choisissons six nombres aléatoires parmi les chiffres hexadécimaux spécifiés et les fusionnons avec un signe # en utilisant la fonction join().

Il existe de nombreux autres formats de couleurs disponibles et il est très facile d’effectuer des conversions entre eux.

Une chose à retenir est que nous avons généré des codes de couleur dans ce tutoriel dans différents formats. Pour voir réellement ces couleurs, nous devrons produire un graphique ou tracer un graphique en utilisant d’autres modules.

Par exemple, dans le code ci-dessous, nous allons tracer un simple point du code couleur que nous produisons à l’aide d’un nuage de points du module 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()

Production:

couleur aléatoire python

Auteur: 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

Article connexe - Python Color