Страница 25 из 82
%hash = $scalar; # то же, что %hash = ($scalar)
# defined($hash{$scalar}) будет ложно: значения не было
# exists($hash{$scalar}) будет истинно: ключ есть
В этой лекции завершается изучение основных типов данных в языке Perl: скаляров, списков и хэшей. В таблице 6.1 для сравнения приведены контексты и форматы обращения к скалярным переменным, элементам массивов и хэшей и их срезам.
Таблица 6.1. Форматы записи переменных
Конструкция Хранимое значение Описание Контекст (в левой части присваивания) @variable список весь массив @variable списочный %variable хэш весь хэш %variable списочный $variable скаляр просто скалярная переменная скалярный $variable[$index] скаляр элемент массива @variable, заданный индексом $index скалярный @variable[@list] список срез массива @variable, заданный списком индексов @list списочный @variable[$index] список (из одного элемента) срез массива @variable, заданный списком из одного индекса $index списочный $variable{$key} скаляр элемент хэша %variable скалярный @[email protected]/* */} список (значений) срез хэша %variable, заданный списком ключей @list списочный @variable{$key} список (из одного значения) срез хэша %variable, заданный списком из одного ключа $key списочный