Strona korzysta z plików cookies w celu realizacji usług i zgodnie z Polityką Plików Cookies.



29.10.2021

Veritas po raz 16. liderem...

Firma Veritas Technologies, producent uznanych rozwiązań backup klasy enterprise,...
21.10.2021

Zarządzanie IT

We wrześniu BTC Sp. z o.o. zaprezentowała premierową wersję systemu eAuditor V8 AI.
21.10.2021

Konferencja VMworld

Imagine That. Pod takim hasłem w dniach 5–7 października 2021 r. odbyła się jedna z...
21.10.2021

Darmowy deszyfrator

Bitdefender wspólnie z organami ścigania opracował i wydał narzędzie, które pozwala...
21.10.2021

Dell C1422H

Dell Technologies wprowadza do oferty przenośny monitor do zwiększenia wydajności pracy w...
21.10.2021

Dysk dla cyfrowych twórców

Western Digital zaprezentowało nowy dysk – WD Blue SN750 NVMe SSD.
21.10.2021

Projektory laserowe

Optoma wprowadza serię projektorów laserowych Ultra Bright ZU1700, ZU1900, ZU2200 z...
21.10.2021

Orzeł wśród routerów

D-Link wprowadza na rynek smart router EAGLE PRO AI AX1500 R15.
21.10.2021

Nowe generacje Ryzen i Epyc

AMD 3D V-Cache. AMD zapowiada procesory Ryzen i Epyc z nowym rozwiązaniem.

Perl – manipulacja tablicami

Data publikacji: 29-04-2021 Autor: Grzegorz Kuczyński

W poprzedniej części przedstawiliśmy, jak w języku Perl wypisywać i pobierać dane ze standardowego wejścia, w tym również z plików. Omawialiśmy podstawowe typy danych oraz tablice zwykłe i asocjacyjne.

 

Podczas omawiania tablic zwykłych wspominaliśmy o funkcjach, jakie są przeznaczone w Perlu do manipulowania nimi. Perl oferuje takie funkcje również dla tablic asocjacyjnych. Najpopularniejsze wśród nich są funkcje keys() i values(). Pierwsza z nich pobiera z tablicy wszystkie klucze i zwraca je w postaci listy. Klucze w tej liście są umieszczone w tej samej kolejność, w jakiej znajdowały się w tablicy. Natomiast druga funkcja wykonuje analogiczne zadanie z tą różnicą, że zwraca listę wartości tablicy. Działanie tych funkcji najłatwiej zaprezentować wraz z pętlą foreach, która została wręcz stworzona do iteracji po listach. W ramce Struktury kontrolne znajduje się krótki spis konstrukcji językowych używanych w języku Perl.

 

%t = ('key1','value1','key2','value2');
foreach $key (keys(%t)) {
print "Klucz '$key' ma wartość '$t{$key}'n";}

Klucz 'key1' ma wartość 'value1'
Klucz 'key2' ma wartość 'value2'

 

Funkcja values() nie może w prosty sposób odtworzyć pary klucz-wartość z tablicy asocjacyjnej, gdyż ta zwraca tylko wartości.

 

%t = ('key1','value1','key2','value2');
$i = 1;
foreach (values(%t)) {
  print "Pozycja $i ma wartość: '$_'n";
  $i++;
}

Pozycja 1 ma wartość: 'value1'
Pozycja 2 ma wartość: 'value2'

 

W powyższym przykładzie zaprezentowano również użycie zmiennej domyślnej $_ dla pętli foreach.

Prędzej czy później zajdzie potrzeba usunięcia jakiegoś elementu z tablicy asocjacyjnej. Służy do tego funkcja delete(). Podajemy jej wartość, którą chcemy usunąć, a ona usuwa parę klucz–wartość z tablicy. Warto również sprawdzić, czy tablica nie jest już pusta. Możemy tego dokonać za pomocą instrukcji if (%t) . Załóżmy, że chcemy usunąć pierwszy element tablicy, ale tylko pod warunkiem że nie jest on jedynym jej elementem.

 

[...]

 

Autor zawodowo zajmuje się informatyką. Jest członkiem społeczności open source, prowadzi blog nt. systemu GNU/Linux.

Pełna treść artykułu jest dostępna w papierowym wydaniu pisma.

.

Transmisje online zapewnia: StreamOnline

All rights reserved © 2019 Presscom / Miesięcznik "IT Professional"