Как генерировать случайные числа в Python (случайный модуль)
Узнайте, как генерировать случайные числа в Python. Сравните randrange, randint и генерацию равномерного числа с плавающей запятой с контролем заполнения.
Обзор
Генерация случайных чисел является ключевым требованием при программировании игр, выборе случайных элементов из наборов данных, написании криптографических приложений и выполнении статистического моделирования. Python предоставляет специальную встроенную библиотеку под названием «random» для генерации псевдослучайных чисел.
Если вам нужно случайное целое число в определенном диапазоне, функция «random.randint(a, b)» является наиболее распространенным инструментом, возвращающим случайное целое число, в котором обе конечные точки являются включенными. Альтернативно, `random.random()` генерирует число с плавающей запятой от 0,0 (включительно) до 1,0 (не включая), которое можно математически масштабировать в соответствии с пользовательскими границами.
Чтобы сделать моделирование и тесты повторяемыми, вы можете использовать функцию «random.seed()». Предоставление начального целого числа гарантирует, что последовательность сгенерированных чисел будет идентична при каждом запуске кода. Для криптографических операций, требующих высокой безопасности (например, генерации токенов), следует избегать стандартных псевдослучайных генераторов в пользу модуля «секреты».
Код и вывод выполнения
Этот скрипт демонстрирует генерацию случайных целых чисел, чисел с плавающей запятой и выбор элементов с помощью модуля случайных чисел.
import random
# Setting a seed for deterministic output in this example
random.seed(42)
# 1. Generate a random integer between 1 and 10 (inclusive)
random_int = random.randint(1, 10)
print("Random Integer (1-10):", random_int)
# 2. Generate a random float between 0.0 and 1.0
random_float = random.random()
print("Random Float (0-1):", round(random_float, 4))
# 3. Select a random element from a list
fruits = ["apple", "banana", "cherry"]
random_choice = random.choice(fruits)
print("Random Choice:", random_choice)Random Integer (1-10): 2
Random Float (0-1): 0.025
Random Choice: bananaПошаговая реализация
- Импортируйте случайный модуль в начале вашего скрипта.
- Используйте random.randint(min, max) для генерации случайного целого числа, в котором обе конечные точки являются включенными.
- Используйте random.random() для генерации случайного числа с плавающей точкой от 0,0 до 1,0.
Часто задаваемые вопросы
Как создать случайное число с плавающей запятой в пределах пользовательского диапазона?
Используйте random.uniform(a, b), чтобы получить случайное число с плавающей запятой между a и b.
Безопасен ли случайный модуль для криптографического использования?
Нет, случайный модуль является псевдослучайным и не должен использоваться в целях безопасности. Вместо этого используйте модуль секретов.
Связанные темы
Узнайте, как найти длину списка в Python с помощью функции len(). Поймите временную сложность O(1) и количество проверок.
Как использовать Enumerate в PythonУзнайте, как использовать функцию enumerate() в Python. Получите и индекс, и значение при переборе списков с чистыми примерами.
Рекомендуемые ресурсы Python
Расширьте свои знания с помощью соответствующих интерактивных руководств, шпаргалок и сравнений кода.
Циклы Python
Узнайте, как использовать циклы Python для перебора данных. Освойте циклы for, while, прерывание, продолжение и лучшие практики работы с циклами с помощью интерактивных примеров.
Шпаргалка по строковым методам Python
Полное справочное руководство по манипулированию строками в Python. Мастер форматирования, поиска, разделения, замены и проверки свойств строк.
Python против JavaScript: какой язык программирования лучше?
Всестороннее сравнение Python и JavaScript. Изучите синтаксические различия, производительность, варианты использования (серверная и клиентская части) и примеры кодирования.