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

После выполнения этого кода массив @Data будет содержать шесть элементов. Причем элементы с четными индексами (включая нуль) соответствуют именам режиссеров, а элементы с нечетными индексами — названию фильмов. С этим массивом можно выполнить любую операцию, возможную с массивами, и затем присвоить получившийся массив хэшу %Movies:

Массивы и хэши имеют сходства и в другом. Для копирования хэша достаточно присвоить один хэш другому:

Когда вы помещаете %Old_ Hash в правую часть оператора присваивания, там, где обычно Perl ожидает встретить список или массив, Perl преобразует хэш в список, используемый в дальнейшем для инициализации %New Hash. Подобным образом вы можете комбинировать хэши и манипулировать ими, как списками:

Первый список объединяет два хэша, %First и %Second в третий хэш %Both. Если некоторые ключи %First присутствуют в %Second, пара ключ-значение второго хэша заменяет пару ключ-значение первого. Во второй строке %Both представлен списком пар ключ-значение. Кроме него в скобках есть еще две пары ключ-значение. Полученный полный список используется для инициализации хэша %Additional.