Списочные литералы

Массив (способ представления списочных значений в программе) инициализируется списком значений, разделенных запятыми и заключенных в круглые скобки. Эти значения образуют элементы списка.

Примеры:
(1, 2, 3) # Список из трех значений 1, 2 и 3
(1, 2, 3,) # Те же три значения (последняя запятая игнорируется)
("fred", 4.5) # Два значения, "fred" и 4.5
( ) # Пустой список - ноль элементов
(1..100) # Список из 100 целых чисел

В последней строке используется диапазонный оператор .., с которым мы здесь встретились впервые. Этот оператор создает список от левого до правого скалярного значения с шагом 1. Примеры:

(1..5) # То же, что (1, 2, 3, 4, 5)
(1.7..5.7) # То же самое - оба значения усекаются
(5..1) # Пустой список - .. работает только "вверх"
(0, 2..6, 10, 12) # То же, что (0, 2, 3, 4, 5, 6, 10, 12)
($m..$n) # Диапазон определяется текущими значениями $m и $n
(0..$#rocks) # Индексы массива из предыдущего раздела

Как видно из двух последних примеров, элементы списочного литерала не обязаны быть константами – это могут быть выражения, которые вычисляются заново при каждом использовании литерала. Пример:

($m, 17) # Два значения: текущее значение $m и 17
($m+$o, $p+$q) # Два значения

Конечно, список может состоять из одних скалярных значений, как
этот типичный список строк:
("fred", "barney", "betty", "wilma", "dino")

Оцените статью: (0 голосов)
0 5 0

Статьи из раздела Perl на эту тему:
в списочном контексте
Главная служебная переменная: $_
Интерполяция массивов в строках
Использование выражений, создающих скаляры, в списочном контексте
Использование выражений, создающих списки, в скалярном контексте

Вернуться в раздел: Perl / 2. Списки и массивы