Hash de arreglos en Perl
Una clave, muchos valores: la estructura de batalla para datos agrupados.
use strict;
use warnings;
my %tags = (
perl => ["regex", "sigils"],
python => ["indent"],
);
# push through the reference grows the inner array
push @{ $tags{perl} }, "context";
push @{ $tags{python} }, "batteries";
for my $lang (sort keys %tags) {
my $count = scalar @{ $tags{$lang} };
print "$lang ($count): @{ $tags{$lang} }\n";
}
Cómo funciona
- Cada valor de
%tagses un arreglo anónimo construido con[...]. push @{ $tags{perl} }agranda el arreglo interno a través de su referencia.- El bucle interpola
@{ $tags{$lang} }para imprimir cada lista en su lugar.
Palabras clave y builtins usados aquí
forkeysmyprintpushscalarsortuse
El intento, en números
- Líneas
- 16
- Caracteres a escribir
- 338
- Tokens
- 84
- Ritmo de tres estrellas
- 65 tpm
Al ritmo de tres estrellas de 65 tokens por minuto, este intento toma unos 78 segundos.
Paso 2 de 3 en Referencias y estructuras; paso 20 de 27 en Fundamentos del lenguaje.