random
Макрос !{random} генерирует случайные значения: числа, выбор из списка, строки.
Где используется:
- Генерация случайных чисел (бонусы, скидки)
- Случайный выбор фраз (приветствия, ответы)
- Генерация уникальных идентификаторов (пароли, коды)
💡 Совет: Макрос удобен для создания вариативности в ответах бота.
Оглавление функций
| Функция | Описание |
|---|---|
| random.number | Случайное число в диапазоне |
| random.select | Случайный выбор из списка |
| random.string | Случайная строка из символов |
random.number
Генерирует случайное целое число в заданном диапазоне (включительно).
Параметры
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
| min | Число | ✅ Да | Минимальное значение |
| max | Число | ✅ Да | Максимальное значение |
Возвращает
Случайное число в виде строки.
Примеры
Случайное число от 1 до 100
!{random.number|min: 1; max: 100;}
Результат: "42" (или любое другое число от 1 до 100)
Случайный бонус от 0 до 50
!{random.number|min: 0; max: 50;}
Результат: "27"
Случайный возраст от 18 до 99
!{random.number|min: 18; max: 99;}
Результат: "34"
random.select
Выбирает случайный элемент из списка.
Параметры
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
| list | Строка | ✅ Да | Список элементов, разделённых разделителем |
| splitter | Строка | ❌ Нет | Разделитель (по умолчанию ,) |
Возвращает
Случайно выбранный элемент.
Примеры
С разделителем по умолчанию (запятая)
!{random.select|list: Всем привет!, Приветствую!, Добро пожаловать!}
Результат: "Приветствую!" (случайно)
С пользовательским разделителем
!{random.select|splitter: @; list: слово1@слово2@слово3}
Результат: "слово2" (случайно)
С русским разделителем (пробел)
!{random.select|splitter: ; list: Кот Собака Хомяк}
Результат: "Собака" (случайно)
random.string
Описание
Генерирует случайную строку заданной длины из указанного набора символов.
Параметры
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
| chars | Строка | ✅ Да | Набор символов для генерации |
| length | Число | ✅ Да | Длина генерируемой строки |
Возвращает
Случайно сгенерированную строку.
Примеры
Случайная строка из 32 латинских букв
!{random.string|chars: qwertyuiopasdfghjklzxcvbnm; length: 32;}
Результат: "xylkqpaowirhfngbvsdjcmwthnzabcfg" (случайно)
Случайный 6-значный код (цифры)
!{random.string|chars: 0123456789; length: 6;}
Результат: "483291" (случайно)
Случайный пароль (буквы + цифры)
!{random.string|chars: abcdefghijklmnopqrstuvwxyz0123456789; length: 12;}
Результат: "h3k9qw2b8x7a" (случайно)
Сравнение функций
| Функция | Что генерирует | Когда использовать |
|---|---|---|
| random.number | Число | Бонусы, скидки, случайные значения |
| random.select | Элемент из списка | Случайные ответы, выбор победителя |
| random.string | Строка из символов | Коды, пароли, идентификаторы |
Частые ошибки и их решение
| Ошибка | Причина | Решение |
|---|---|---|
| Всегда одно и то же число | min и max не указаны или равны | Укажите разные значения |
| random.select возвращает всё подряд | Неверный разделитель | Убедитесь, что splitter соответствует списку |
| random.string генерирует короткую строку | length слишком маленький | Увеличьте length |
| В random.string попадают не те символы | chars содержит повторы или лишние символы | Проверьте набор символов |