Random color generator python

Генератор случайных цветов Python: использование нескольких методов

Генерация случайных цветов в Python — хорошее упражнение, если вы только начинаете. Начинающим рекомендуется научиться генерировать случайные цвета разными способами, поскольку это включает в себя применение множества базовых понятий, таких как переменные, функции, циклы и модули. Это помогает разработчику изучить логику программирования, решение проблем и алгоритмы.

В мире программирования генерация случайных цветов открывает бесконечные возможности для создания красивой графики. Вы можете комбинировать их с такими модулями, как Turtle, чтобы создавать привлекательные дизайны всего несколькими строками кода, чтобы повысить свои навыки Python.

В этом уроке мы узнаем, как создавать случайные цвета, используя несколько методов, от простых до сложных. Давайте начнем.

Генератор случайных цветов

Генератор случайных цветов или средство выбора случайных цветов в Python — это, по сути, функция, которая генерирует количество цветов путем случайного выбора целочисленных значений для красного, зеленого и синего (RGB) каналов. Обычно он возвращает фактический цвет или значение RGB в виде кортежа. Давайте теперь посмотрим на различные способы генерации случайных цветов в Python.

Использование случайного модуля

Модуль random — это встроенный модуль, в котором есть метод randint(), который может выдавать целые числа в пределах диапазона, переданного в качестве аргументов. Мы можем реализовать его для генерации случайных цветов.

import random def random_color_generator(): r = random.randint(0, 255) g = random.randint(0, 255) b = random.randint(0, 255) return (r, g, b) random_color = random_color_generator() print(random_color)

Здесь мы создали функцию generate_random_color() для получения случайного цвета. Функция содержит randint(0, 255) для получения целых чисел в диапазоне от 0 до 255 для каждого канала, а затем возвращает их в виде кортежа.

Читайте также:  Считает количество строк php

Использование секретного модуля

Этот модуль имеет функцию randbelow() для генерации случайных значений в указанном диапазоне. Работа этой функции такая же, как и у предыдущей, но это более безопасный способ.

import secrets def random_color_generator(): r = secrets.randbelow(256) g = secrets.randbelow(256) b = secrets.randbelow(256) return (r, g, b) random_color = random_color_generator() print(random_color)

Здесь также возвращаемое значение представляет собой кортеж, содержащий значение RGB.

Использование модуля numpy

Существует более продвинутый и быстрый способ генерации случайных цветов с помощью модуля numpy. Это очень просто и требует всего несколько строк кода. Посмотрим, как.

import numpy as np def random_color_generator(): color = np.random.randint(0, 256, size=3) return tuple(color) random_color = random_color_generator() print(random_color)

Здесь мы использовали функцию np.random.randint() и передали диапазон в качестве аргументов для создания случайного целого числа между ними, кроме того, мы передали 3 в качестве последнего аргумента, который указывает, что мы хотим получить массив, содержащий три случайно сгенерированных целых числа. Затем мы можем преобразовать этот массив в кортеж, используя tuple(), а затем вернуть его в консоль.

Читайте также: Введение в массивы NumPy

Использование модуля matplotlib

Мы можем использовать метод mcolors.CSS4_COLORS.keys() этого модуля, чтобы получить список различных цветов CSS4, а затем использовать функцию random.choice() модуля random, чтобы случайным образом выбрать один из них для отображения в консоли. Таким образом, мы можем получить разные случайные цвета.

import matplotlib.colors as mcolors import random def random_color_generator(): color = random.choice(list(mcolors.CSS4_COLORS.keys())) return color random_color = random_color_generator() print(random_color)

Здесь возвращаемое значение представляет собой строку, содержащую имя случайно выбранного цвета.

Примечание: Если вы хотите получить код цвета, вы можете вместо этого использовать mcolors.CSS4_COLORS.values().

Заключение

В этом уроке мы узнали много новых простых в использовании методов для создания случайных цветов. Вы можете попробовать их самостоятельно и использовать основные концепции Python, чтобы исключить ненужный код для дополнительной оптимизации при использовании генератора случайных цветов, например, использовать цикл вместо трех одинаковых строк, чтобы каждый раз получать случайное целое число.

В заключение можно сказать, что все методы могут генерировать случайные цвета, но выбор зависит от требований, например, если вам нужен быстрый и простой способ, это функция random() модуля random, и если вам нужно получить цвета вместо значений RGB, лучше всего использовать модуль matplotlib. Надеюсь, вам понравилось читать содержание. В конце концов, надеюсь, что этот урок предоставил вам достаточно информации, чтобы иметь возможность генерировать случайные цвета.

Источник

Python Random Color Generator: Using Multiple Methods

Python's Random Color Generator

Generating random colors in Python is a good exercise if you’re just starting out. It is recommended for beginners to learn how to generate random colors in different ways as it involves applying a lot of basic concepts like variables, functions, loops and modules. It helps the developer learn programming logic, problem-solving and algorithms.

In the world of programming, generating random colors opens up endless possibilities for creating beautiful graphics. You can combine them with modules like Turtle to create attractive designs with just a few lines of code to level up your Python Skills.

In this tutorial, we’ll learn how to generate random colors using several methods from easy to advanced. Let’s get started.

Random Color Generator

A random color generator or a random color picker in Python is basically a function that generates number of colors by randomly selecting integer values for the red, green, and blue (RGB) channels. It usually returns an actual color or RGB value as a tuple.

Let us now look at the different ways to generate random colors in Python

Using the random module

The random module is a built-in module, that has a method randint() which can produce integers within the range passed as arguments. We can implement it to generate random colors.

import random def random_color_generator(): r = random.randint(0, 255) g = random.randint(0, 255) b = random.randint(0, 255) return (r, g, b) random_color = random_color_generator() print(random_color)

Here we have created a function random_color_generator() to get the random color. The function contains randint(0, 255) to obtain integers within the range 0 to 255 for each channel, then returns them as a tuple.

Using the secrets module

This module has a randbelow() function for generating random values within a specified range. The working of this function is the same as the previous one, but it is a more secure way.

import secrets def random_color_generator(): r = secrets.randbelow(256) g = secrets.randbelow(256) b = secrets.randbelow(256) return (r, g, b) random_color = random_color_generator() print(random_color)

Here also the return value is a tuple containing the RGB value.

Using the numpy module

There is a more advanced and faster way to generate random colors using the numpy module. It’s very simple and requires only a few lines of code. Let’s see how.

import numpy as np def random_color_generator(): color = np.random.randint(0, 256, size=3) return tuple(color) random_color = random_color_generator() print(random_color)

Here we have used np.random.randint() function and passed range as arguments to produce the random integer between them, moreover, we have passed 3 as the last argument which indicates that we want to get an array containing three randomly generated integers. Next, we can convert that array to a tuple using tuple() and then return it to the caller.

Using the matplotlib module

We can use the mcolors.CSS4_COLORS.keys() method of this module to get a list of CSS4 different colors and then use the random.choice() function of the random module to choose one of them randomly to display in the console. In this way, we can get different random colors.

import matplotlib.colors as mcolors import random def random_color_generator(): color = random.choice(list(mcolors.CSS4_COLORS.keys())) return color random_color = random_color_generator() print(random_color)

Here the return value is a string containing the name of a randomly selected color.

Note: If you want to get the code for the color, you can use mcolors.CSS4_COLORS.values() instead.

Conclusion

Through this tutorial, we have learned many new easy-to-use methods to generate random colors. You can try them on your own and use Python core concepts to eliminate unnecessary code for more optimizations, such as using a loop instead of three identical lines to get a random integer each time.

In conclusion, we can say that all methods can generate random colors, but if you want the easiest way, it is random() function of random module, and if your need is to get colors instead of RGB values, the best way is to use the matplotlib module. In the end, hope this tutorial provided you with enough information to be able to generate random colors.

References

Источник

Generate Random Colors in Python

Generate Random Colors in Python

  1. Generate Random Colors in RGB Format in Python
  2. Generate Random Colors in Hexadecimal Format in Python

In the digital world, colors are represented in different formats. The RGB, Hexadecimal formats are just a few of the highly used formats.

In this tutorial, we will learn how to generate random colors in Python. When we talk about generating random colors, we will generate a random code that can represent color. Different methods will generate color codes in different formats.

Generate Random Colors in RGB Format in Python

RGB stands for Red, Green, and Blue. Together they represent the color spectrum in the digital world. The Red, Green, and Blue together can represent every color and are of 8 bit each. It means that they have an integer value from 0 to 255.

For generating random colors in RGB format, we will generate a list or tuple of random integers from 0 to 255.

The following code shows how to implement this.

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

We generate random integers using the random from the NumPy module in the above code. It simply generates a random integer from 0 to 255 three times and stores it in a list. The main focus should be on the logic of the code since random integers can be generated in many other ways.

Generate Random Colors in Hexadecimal Format in Python

In the Hexadecimal, the color is represented in six hexadecimal digits, prefixed by a # sign. The format is in #RRGGBB where R, G, and B indicate Red , Green , and Blue , respectively, and are hexadecimal numbers.

We can generate random colors in this format using the code as shown below.

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

In the above code, we pick six random numbers from the specified hexadecimal digits and merge them with a # sign using the join() function.

There are many other color formats available and it is very easy to carry out conversions between them.

One thing to remember is that we generated color codes in this tutorial in different formats. To actually see these colors, we would have to produce some graphic or plot some graph using other modules.

For example, in the code below, we will plot a simple dot of the color code we produce using a scatterplot of the Matplotlib module.

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 random color

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.

Related Article — Python Color

Источник

Оцените статью