Модуль:Random/doc: различия между версиями

Материал из Тептар — свободной энциклопедии
Перейти к навигации Перейти к поиску
(Новая страница: «Этот модуль содержит ряд функций, использующих случайные числа. Он может вернуть случай...»)
 
Нет описания правки
 
Строка 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.20079354066439
  • {{#invoke:random|number|100}} → 97
  • {{#invoke:random|number|-100|-50}} → -99
  • {{#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}} → 12:18, 01 июнь 2024 (UTC)
  • {{#invoke:random|date|format=F j}} → декабрь 11
  • {{#invoke:random|date|1 Jan 1980|31 Dec 1999}} → 16:58, 27 декабрь 1990 (UTC)
  • {{#invoke:random|date|1st January 1500|1st January 3000|format=g:i a, l d M Y}} → 1:21 pm, четверг 20 авг 1739
  • {{#invoke:random|date|1970/06/01}} → 05:09, 21 февраль 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}} → spam
  • {{#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. Используйте &#32; для представления обычного пробела и &nbsp; для представления неразрывного пробела.

Примеры (обновить)

  • {{#invoke:random|list|egg|beans|sausage|bacon|spam}} → beanssausageeggbaconspam
  • {{#invoke:random|list|egg|beans|sausage|bacon|spam|sep=dot}} → egg⧼dot-separator⧽spam⧼dot-separator⧽sausage⧼dot-separator⧽beans⧼dot-separator⧽bacon
  • {{#invoke:random|list|egg|beans|sausage|bacon|spam|sep=space}} → beans egg sausage spam bacon
  • {{#invoke:random|list|egg|beans|sausage|bacon|spam|sep=;&#32;}} → egg; beans; spam; bacon; sausage
  • {{#invoke:random|list|egg|beans|sausage|bacon|spam|sep=foo}} → sausagefoobaconfooeggfoospamfoobeans
  • {{#invoke:random|list|egg|beans|sausage|bacon|spam|limit=3}} → eggsausagespam
  • {{#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}} → spam, egg, bacon, sausage и beans
  • {{#invoke:random|text_list|egg|beans|sausage|bacon|spam|sep=;&#32;}} → sausage; beans; bacon; spam и egg
  • {{#invoke:random|text_list|egg|beans|sausage|bacon|spam|sep=;&#32;|conj=&#32;или&#32;}} → spam; beans; bacon; egg или sausage
  • {{#invoke:random|text_list|egg|beans|sausage|bacon|spam|limit=3}} → egg, sausage и beans
  • {{#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}}
  • sausage
  • spam
  • egg
unbulleted_list Немаркированный список {{#invoke:random|unbulleted_list|egg|sausage|spam}}
  • sausage
  • spam
  • egg
horizontal_list Горизонтальный маркированный список {{#invoke:random|horizontal_list|egg|sausage|spam}}
  • sausage
  • egg
  • spam
ordered_list Упорядоченный список (нумерованные и алфавитные списки) {{#invoke:random|ordered_list|egg|sausage|spam}}
  1. spam
  2. egg
  3. sausage
horizontal_ordered_list Горизонтальный упорядоченный список {{#invoke:random|horizontal_ordered_list|egg|sausage|spam}}
  1. spam
  2. sausage
  3. egg
Базовое использование
{{#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 для получения полной информации по остальным параметрам.

См. также[править код]

  • {{очищать кэш}} — для периодической пересборки страницы