Moduł List::Util
Uniwersytet Gdański - Instytut Matematyki - Zakład Informatyki - Strona domowaSpis treści
Co to jest
Moduł ten zawiera funkcje operujące na listach. Ich ilość jest jednak mała, więc przydatność tego modułu jest ograniczona.
Funkcje
Poniżej wymienione są funkcje które zawiera moduł.
- first BLOCK LIST
- Funkcja ewaluuje BLOCK ustawiając w zmiennej $_ każdy element z listy. First zwraca pierwszy element dla którego wartość w BLOCK wynosi true
$foo = first { defined($_) } @list # first defined value in @list $foo = first { $_ > $value } @list # first value in @list which
- max LIST
- Zwraca największą wartość numeryczną w liście.
$foo = max 1..10 # 10 $foo = max 3,9,12 # 12
- maxstr LIST
- Podobna do max, lecz zwraca największy string z listy używając przy tym operatora gt.
$foo = maxstr 'A'..'Z' # 'Z' $foo = maxstr "hello","world" # "world"
- min LIST
- Zwraca najmniejszą wartość numeryczną w liście.
$foo = min 1..10 # 1 $foo = min 3,9,12 # 3
- minstr LIST
- Podobna do min, lecz zwraca najmniejszy string z listy używając operatora lt.
$foo = minstr 'A'..'Z' # 'A' $foo = minstr "hello","world" # "hello"
- reduce BLOCK LIST
- Redukuje LIST używając BLOCK wielokrotnie. Ustawiając $a i $b za każdym razem. Na początku ustawione są na pierwszy i drugi element listy. Następne wywołanie ustawia $a na rezultat poprzedniego wywołania, a $b na następny element listy.Zwraca rezutat ostatniego wywołania BLOCK. Jeżeli lista jest pusta zwraca undef. Jeżeli lista zawiera jeden element ten element jest zwracany bez wywoływania BLOCK.
$foo = reduce { $a < $b ? $a : $b } 1..10 # min $foo = reduce { $a lt $b ? $a : $b } 'aa'..'zz' # minstr $foo = reduce { $a + $b } 1 .. 10 # sum $foo = reduce { $a . $b } @bar # concat
- shuffle LIST
- Zwraca elementy listy ułożone w losowym porządku.
@cards = shuffle 0..51 # 0..51 w losowym porządku
- sum LIST
- Zwraca sumę wszystkich elementów listy. Jeżeli lista jest pusta zwraca undef.
$foo = sum 1..10 # 55 $foo = sum 3,9,12 # 24
Dodatkowe informacje
Pozostałe informacje znajdują się w dokumentacji modułu, można je wyświetlić wpisując polecenie perldoc List::Util lub wejść na stronę http://perldoc.perl.org/List/Util.html.
Kontakt i informacje o autorze opracowania
Autor: K.M.
[c] Piotr Arłukowicz, materiały z tej strony udostępnione są na licencji GNU.