Raku kurss / Padziļināti / Operatori / Metaoperatori
Zip metaoperatori
Zip metaoperators Z paņem divus (vai vairākus) sarakstus
un sapāro to elementus pēc pozīcijas:
say (1, 2, 3) Z (4, 5, 6); # ((1 4) (2 5) (3 6))Rezultāts ir grupu saraksts: pirmie elementi no katra saraksta kopā, tad otrie no katra un tā tālāk.
Vēl interesantāk — Z var apvienot ar operatoru, lai
darbotos ar katru pāri. Piemēram, Z+ saskaita elementus pa
pozīcijām:
say (1, 2, 3) Z+ (10, 20, 30); # (11 22 33)Šis ir zip metaoperators, kas ietver + operatoru: tas
aprēķina 1 + 10, 2 + 20 un
3 + 30. Tāpat Z* sareizina atbilstošos
elementus:
say (1, 2, 3) Z* (10, 20, 30); # (10 40 90)Un Z~ savieno atbilstošās virknes:
say <a b c> Z~ <1 2 3>; # (a1 b2 c3)Kursa navigācija
← Viktorīna — Reducēšana | Krustojuma, hiper un noliedzošie →
💪 Vai arī dodieties tieši uz šīs sadaļas
vingrinājumiem.