Курс языка программирования Raku / Продвинутый уровень / Подробнее о встроенных типах

Дата и время

В Raku есть встроенные типы для работы с календарными датами и временем. Календарная дата представлена типом Date. Вы создаете её, указывая год, месяц и день:

my $d = Date.new(2026, 6, 27);
say $d; # 2026-06-27

Получив дату, вы можете прочитать её составные части:

my $d = Date.new(2026, 6, 27);
say $d.year;  # 2026
say $d.month; # 6
say $d.day;   # 27

Метод day-of-week возвращает день недели, на который приходится дата, нумеруя дни от 1 для понедельника до 7 для воскресенья:

say Date.new(2026, 6, 27).day-of-week; # 6

27 июня 2026 года — суббота, поэтому результат равен 6.

Метод is-leap-year сообщает, является ли год даты високосным:

say Date.new(2024, 1, 1).is-leap-year; # True
say Date.new(2026, 1, 1).is-leap-year; # False

Чтобы получить сегодняшнюю дату, вызовите Date.today. Мы не показываем здесь результат, так как он зависит от дня, когда вы запускаете программу.

Темы этого раздела

Практика

Пройдите 2 теста по содержанию этого раздела.

Упражнения

В этом разделе 3 упражнения. Прежде чем приступать к практике, изучите все темы раздела.

  1. Недели до Рождества
  2. Через неделю
  3. День недели

Навигация по курсу

Решение: Heredoc   |   Арифметика дат