Модуль:Random/doc
Это страница документации Модуль:Random.
Этот модуль содержит ряд функций, использующих случайные числа. Он может вернуть случайное число, выбрать случайный элемент списка или перемешать список случайным образом. Перемешанные списки могут быть выведены в строчку или в виде нумерованных или ненумерованных списков различных видов. Доступные функции описаны более подробно ниже.
Number
Функция number возвращает случайное число.
{{#invoke:Random|number|m|n|same=yes}}
Аргументы m и n могут быть опущены, однако в случае, если они заданы, они должны быть приводимы к целым числам.
- При вызове без параметров возвращает вещественное число в полуинтервале <math>[0,1)</math>.
- При вызове с одним параметром возвращает целое число из интервала <math>[1,m]</math>.
mдолжно быть положительным. - При вызове с двумя параметрами возвращает целое число из интервала <math>[m,n]</math>.
mиnмогут быть как положительными, так и отрицательными. Еслиmбольшеn, возвращает целое число из интервала <math>[n,m]</math>. - Если параметру
|same =присвоено одно из значений «yes», «y», «true» или «1», одно и то же случайное число возвращается для каждого вызова модуля на данной странице.
Примеры ()
{{#invoke:Random|number}}→ 0.91126704817231{{#invoke:Random|number|100}}→ 43{{#invoke:Random|number|-100|-50}}→ -95{{#invoke:Random|number|100|same=yes}}→ 20{{#invoke:Random|number|100|same=yes}}→ 20
Документация этой функции частично скопирована из справки по Scribunto Lua, в свою очередь основанной на справке по Lua 5.1, доступной под лицензией MIT.
Date
Функция date возвращает случайную дату.
{{#invoke:Random|date|метка1|метка2|format=формат даты|same=yes}}
- Если ни одна из временных меток не задана, модуль возвращает случайную дату текущего года.
- Если заданы параметры
метка1иметка2, модуль возвращает случайную дату между данными двумя временными метками.метка1должна быть раньшеметка2. - Если задан только параметр
метка1, модуль возвращает случайную дату между «эрой Unix» (1 января 1970) и временной меткой. Меткаметка1не должна быть раньше 1 января 1970. - Форматирование может быть задано параметром
|format =. Форматирование по умолчанию — «hh:mm, DD Month YYYY (UTC)» (аналогично форматированию по умолчанию временных меток РуСказок). - Временные метки и параметр
|format =поддерживают значения, совместимые с функцией парсера #time. Обратитесь к документации #time для получения полного списка возможных входных значений и опций форматирования. - Если параметру
|same =присвоено одно из значений «yes», «y», «true» или «1», одна и та же дата возвращается для каждого вызова модуля на данной странице.
Примеры ()
{{#invoke:Random|date}}→ 08:47, 29 ноябрь 2025 (UTC){{#invoke:Random|date|format=F j}}→ июль 29{{#invoke:Random|date|1 Jan 1980|31 Dec 1999}}→ 10:00, 16 июнь 1986 (UTC){{#invoke:Random|date|1st January 1500|1st January 3000|format=g:i a, l d M Y}}→ 9:24 am, воскресенье 30 янв 1538{{#invoke:Random|date|1970/06/01}}→ 07:30, 19 май 1970 (UTC){{#invoke:Random|date|same=yes}}→ 03:52, 13 март 2025 (UTC){{#invoke:Random|date|same=yes}}→ 03:52, 13 март 2025 (UTC)
Item
Функция item возвращает случайный элемент списка.
{{#invoke:Random|item|элемент списка 1|элемент списка 2|элемент списка 3|...|same=yes}}
Если параметру |same = присвоено одно из значений «yes», «y», «true» или «1», один и тот же элемент возвращается для каждого вызова модуля на данной странице.
Пример ()
{{#invoke:Random|item|egg|beans|sausage|bacon|spam}}→ egg{{#invoke:Random|item|egg|beans|sausage|bacon|spam|same=yes}}→ sausage{{#invoke:Random|item|egg|beans|sausage|bacon|spam|same=yes}}→ sausage
List
Функция list возвращает список в случайном порядке.
{{#invoke:Random|list|элемент списка 1|элемент списка 2|элемент списка 3|...|sep=разделитель|limit=сколько элементов отображать|same=yes}}
Именованные параметры
|sep =или|separator =— опциональный разделитель списка элементов. Некоторые значения зарезервированы, см. таблицу ниже.|limit =— максимальное число отображаемых элементов списка. Наименьшее возможное значение — 0, наибольшее — число элементов в списке.- Если параметру
|same =присвоено одно из значений «yes», «y», «true» или «1», один и тот же список возвращается для каждого вызова модуля на данной странице.
| Код | Вывод |
|---|---|
dot |
⧼dot-separator⧽ |
pipe
|
| |
comma |
, |
tpt-languages |
⧼tpt-languages-separator⧽ |
space |
пробел |
newline |
символ перевода строки |
| любое другое значение | остальные значения используются без изменения |
Передать пробелы в параметр |sep = невозможно из-за ограничений, накладываемых синтаксисом шаблонов в MediaWiki. Однако их можно обойти, используя мнемоники HTML. Используйте   для представления обычного пробела и для представления неразрывного пробела.
Примеры ()
{{#invoke:Random|list|egg|beans|sausage|bacon|spam}}→ spambaconbeanseggsausage{{#invoke:Random|list|egg|beans|sausage|bacon|spam|sep=dot}}→ sausage⧼dot-separator⧽beans⧼dot-separator⧽spam⧼dot-separator⧽bacon⧼dot-separator⧽egg{{#invoke:Random|list|egg|beans|sausage|bacon|spam|sep=space}}→ egg spam sausage bacon beans{{#invoke:Random|list|egg|beans|sausage|bacon|spam|sep=; }}→ sausage; spam; beans; bacon; egg{{#invoke:Random|list|egg|beans|sausage|bacon|spam|sep=foo}}→ spamfoobeansfooeggfoobaconfoosausage{{#invoke:Random|list|egg|beans|sausage|bacon|spam|limit=3}}→ baconeggsausage{{#invoke:Random|list|egg|beans|sausage|bacon|spam|same=yes}}→ beansspambaconeggsausage{{#invoke:Random|list|egg|beans|sausage|bacon|spam|same=yes}}→ beansspambaconeggsausage
Text list
Функция text_list возвращает список в случайном порядке в виде связанного текста. Другими словами, эта функция работает так же, как функция list, но использует другой разделитель перед последним элементом.
{{#invoke:Random|text_list|элемент списка 1|элемент списка 2|элемент списка 3|...|sep=разделитель|conj=союз|limit=сколько элементов отображать|same=yes}}
Разделитель может быть задан параметрами |sep = или |separator =; значение по умолчанию — «, ». Союз может быть задан параметрами |conj = или |conjunction =; значение по умолчанию — « и ». В параметры разделителя и союза могут быть переданы те же значения, что и в параметр разделителя в функции list.
Максимальное число отображаемых элементов списка может быть задано параметром |limit =. Наименьшее возможное значение — 0, наибольшее — число элементов в списке.
Если параметру |same = присвоено одно из значений «yes», «y», «true» или «1», один и тот же список возвращается для каждого вызова модуля на данной странице.
Примеры ()
{{#invoke:Random|text_list|egg|beans|sausage|bacon|spam}}→ egg, spam, sausage, beans и bacon{{#invoke:Random|text_list|egg|beans|sausage|bacon|spam|sep=; }}→ bacon; beans; sausage; egg и spam{{#invoke:Random|text_list|egg|beans|sausage|bacon|spam|sep=; |conj= или }}→ spam; sausage; egg; beans или bacon{{#invoke:Random|text_list|egg|beans|sausage|bacon|spam|limit=3}}→ spam, egg и sausage{{#invoke:Random|text_list|egg|beans|sausage|bacon|spam|same=yes}}→ beans, spam, bacon, egg и sausage{{#invoke:Random|text_list|egg|beans|sausage|bacon|spam|same=yes}}→ beans, spam, bacon, egg и sausage
HTML-списки
Если вы хотите вывести HTML-список в случайном порядке, вы можете выбрать одну из пяти функций: bulleted_list, unbulleted_list, horizontal_list, ordered_list, и horizontal_ordered_list. Все эти функции используют Модуль:List.
| Название функции | Создаёт | Код примера | Вывод примера () |
|---|---|---|---|
bulleted_list
|
Маркированный список | {{#invoke:Random|bulleted_list|egg|sausage|spam}}
|
|
unbulleted_list
|
Немаркированный список | {{#invoke:Random|unbulleted_list|egg|sausage|spam}}
|
|
horizontal_list
|
Горизонтальный маркированный список | {{#invoke:Random|horizontal_list|egg|sausage|spam}}
|
|
ordered_list
|
Упорядоченный список (нумерованные и алфавитные списки) | {{#invoke:Random|ordered_list|egg|sausage|spam}}
|
|
horizontal_ordered_list
|
Горизонтальный упорядоченный список | {{#invoke:Random|horizontal_ordered_list|egg|sausage|spam}}
|
|
- Базовое использование
{{#invoke:Random|функция|элемент списка 1|элемент списка 2|элемент списка 3|...|limit=сколько элементов отображать|same=yes}}
- Все параметры
{{#invoke:Random|функция
|первый элемент|второй элемент|третий элемент|...
|start = начальное число для упорядоченного списка
|type = тип маркера для упорядоченного списка
|list_style_type = тип маркера для упорядоченного списка (использует CSS)
|class = класс
|style = стиль
|list_style = стиль списка
|item_style = стиль всех элементов списка
|item_style1 = стиль первого элемента списка |item_style2 = стиль второго элемента списка |...
|indent = отступ для горизонтальных списков
}}
Максимальное число отображаемых элементов списка может быть задано параметром |limit =. Наименьшее возможное значение — 0, наибольшее — число элементов в списке.
Если параметру |same = присвоено одно из значений «yes», «y», «true» или «1», один и тот же список возвращается для каждого вызова модуля на данной странице.
Посетите документацию Модуля:List для получения полной информации по остальным параметрам.
См. также
- {{Случайное число}}
- {{Случайный элемент}}
- {{Очищать кэш}} — для периодической пересборки страницы