Модуль:Random/doc: различия между версиями
Mansur700 (обсуждение | вклад) (Новая страница: «Этот модуль содержит ряд функций, использующих случайные числа. Он может вернуть случай...») |
Adam (обсуждение | вклад) Нет описания правки |
||
Строка 30: | Строка 30: | ||
* Если заданы параметры <code>''метка1''</code> и <code>''метка2''</code>, модуль возвращает случайную дату между данными двумя временными метками. <code>''метка1''</code> должна быть раньше <code>''метка2''</code>. | * Если заданы параметры <code>''метка1''</code> и <code>''метка2''</code>, модуль возвращает случайную дату между данными двумя временными метками. <code>''метка1''</code> должна быть раньше <code>''метка2''</code>. | ||
* Если задан только параметр <code>''метка1''</code>, модуль возвращает случайную дату между «[[Unix-время|эрой Unix]]» (1 января 1970) и временной меткой. Метка <code>''метка1''</code> не должна быть раньше 1 января 1970. | * Если задан только параметр <code>''метка1''</code>, модуль возвращает случайную дату между «[[Unix-время|эрой Unix]]» (1 января 1970) и временной меткой. Метка <code>''метка1''</code> не должна быть раньше 1 января 1970. | ||
* Форматирование может быть задано параметром {{para|format}}. Форматирование по умолчанию — «hh:mm, DD Month YYYY (UTC)» (аналогично форматированию по умолчанию временных меток | * Форматирование может быть задано параметром {{para|format}}. Форматирование по умолчанию — «hh:mm, DD Month YYYY (UTC)» (аналогично форматированию по умолчанию временных меток Тептар). | ||
* Временные метки и параметр {{para|format}} поддерживают значения, совместимые с [[mw:Help:Extension:ParserFunctions##time|функцией парсера #time]]. Обратитесь к документации #time для получения полного списка возможных входных значений и опций форматирования. | * Временные метки и параметр {{para|format}} поддерживают значения, совместимые с [[mw:Help:Extension:ParserFunctions##time|функцией парсера #time]]. Обратитесь к документации #time для получения полного списка возможных входных значений и опций форматирования. | ||
* Если параметру {{para|same}} присвоено одно из значений «yes», «y», «true» или «1», одна и та же дата возвращается для каждого вызова модуля на данной странице. | * Если параметру {{para|same}} присвоено одно из значений «yes», «y», «true» или «1», одна и та же дата возвращается для каждого вызова модуля на данной странице. |
Текущая версия от 04:40, 23 февраля 2022
Этот модуль содержит ряд функций, использующих случайные числа. Он может вернуть случайное число, выбрать случайный элемент списка или перемешать список случайным образом. Перемешанные списки могут быть выведены в строчку или в виде нумерованных или ненумерованных списков различных видов. Доступные функции описаны более подробно ниже.
Number[править код]
Функция number
возвращает случайное число.
{{#invoke:random|number|m|n|same=yes}}
Аргументы m
и n
могут быть опущены, однако в случае, если они заданы, они должны быть приводимы к целым числам.
- При вызове без параметров возвращает вещественное число в полуинтервале .
- При вызове с одним параметром возвращает целое число из интервала .
m
должно быть положительным. - При вызове с двумя параметрами возвращает целое число из интервала .
m
иn
могут быть как положительными, так и отрицательными. Еслиm
большеn
, возвращает целое число из интервала . - Если параметру
|same=
присвоено одно из значений «yes», «y», «true» или «1», одно и то же случайное число возвращается для каждого вызова модуля на данной странице.
Примеры (
){{#invoke:random|number}}
→ 0.60127181168705{{#invoke:random|number|100}}
→ 72{{#invoke:random|number|-100|-50}}
→ -91{{#invoke:random|number|100|same=yes}}
→ 61{{#invoke:random|number|100|same=yes}}
→ 61
Документация этой функции частично скопирована из справки по 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}}
→ 23:18, 26 январь 2024 (UTC){{#invoke:random|date|format=F j}}
→ август 9{{#invoke:random|date|1 Jan 1980|31 Dec 1999}}
→ 06:28, 08 май 1984 (UTC){{#invoke:random|date|1st January 1500|1st January 3000|format=g:i a, l d M Y}}
→ 1:34 pm, среда 17 май 2006{{#invoke:random|date|1970/06/01}}
→ 15:26, 30 май 1970 (UTC){{#invoke:random|date|same=yes}}
→ 10:32, 08 август 2024 (UTC){{#invoke:random|date|same=yes}}
→ 10:32, 08 август 2024 (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}}
→ spam{{#invoke:random|item|egg|beans|sausage|bacon|spam|same=yes}}
→ spam
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}}
→ spambaconeggbeanssausage{{#invoke:random|list|egg|beans|sausage|bacon|spam|sep=dot}}
→ spam⧼dot-separator⧽sausage⧼dot-separator⧽egg⧼dot-separator⧽beans⧼dot-separator⧽bacon{{#invoke:random|list|egg|beans|sausage|bacon|spam|sep=space}}
→ bacon sausage egg spam beans{{#invoke:random|list|egg|beans|sausage|bacon|spam|sep=; }}
→ bacon; egg; spam; beans; sausage{{#invoke:random|list|egg|beans|sausage|bacon|spam|sep=foo}}
→ sausagefoobaconfooeggfoospamfoobeans{{#invoke:random|list|egg|beans|sausage|bacon|spam|limit=3}}
→ sausagebeansspam{{#invoke:random|list|egg|beans|sausage|bacon|spam|same=yes}}
→ beansbaconeggsausagespam{{#invoke:random|list|egg|beans|sausage|bacon|spam|same=yes}}
→ beansbaconeggsausagespam
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}}
→ beans, bacon, spam, egg и sausage{{#invoke:random|text_list|egg|beans|sausage|bacon|spam|sep=; }}
→ beans; spam; egg; sausage и bacon{{#invoke:random|text_list|egg|beans|sausage|bacon|spam|sep=; |conj= или }}
→ sausage; beans; egg; bacon или spam{{#invoke:random|text_list|egg|beans|sausage|bacon|spam|limit=3}}
→ spam, egg и bacon{{#invoke:random|text_list|egg|beans|sausage|bacon|spam|same=yes}}
→ beans, bacon, egg, sausage и spam{{#invoke:random|text_list|egg|beans|sausage|bacon|spam|same=yes}}
→ beans, bacon, egg, sausage и spam
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 для получения полной информации по остальным параметрам.
См. также[править код]
- {{очищать кэш}} — для периодической пересборки страницы