Sujet : array of array
De : kurtzlepirate (at) *nospam* free.fr (kurtz le pirate)
Groupes : fr.comp.lang.perlDate : 15. Jan 2024, 18:17:06
Autres entêtes
Organisation : Compagnie de la Banquise
Message-ID : <65a56892$0$3013$426a74cc@news.free.fr>
User-Agent : Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:78.0) Gecko/20100101 Thunderbird/78.14.0
Bonjour,
Je ne sais pas s'il y a du monde qui vient encore ici, mais je tente ma
chance ;
Donc :
J'ai des données de ce genre :
f 198/216 199/218 2/3 1/1
Le but est de découper chaque couple a/b dans un tableau '@faces'
Le fichier a 'x' lignes comme ça.
J'ai donc fait pour chaque ligne du fichier :
# je decoupe sur le séparateur espace et je mets dans '@line'
@line = split ' ';
# j'enlève le 'f' du début
shift(@line);
# je découpe chaque element de @line en un tableau de deux
# valeurs sur le séparateur '/'
@line = map { [ split /\//, $_ ] } @line;
# je pousse ce tableau dans mon tableau global
push @faces, [@line];
Jusque la, cela semble correct.
L'exemple donné a 4 'couples' mais il peut y en avoir entre 3 et n.
Mais, quand je veux accéder au valeurs :
(les deux boucles c'est juste pour le debug)
for my $i ( 0 .. $#faces ) {
for my $j ( 0 .. $#{$faces[$i]} ) {
print "faces[$i,$j] = $faces[$i][$j]\n";
}
}
J'obtiens :
faces[0,0] = ARRAY(0x7f8a2987f288)
faces[0,1] = ARRAY(0x7f8a2987ea48)
faces[0,2] = ARRAY(0x7f8a29960b08)
faces[0,3] = ARRAY(0x7f8a2982d9c8)
Alors qu'avec le dumper :
$VAR1 = [
[
'198',
'216'
],
[
'199',
'218'
],
[
'2',
'3'
],
[
'1',
'1'
]
];
Si quelqu'un peut me dire où je me trompe ...
Merci d'avance.
ps : pour ceux qui ont reconnu, oui, c'est pour convertir des fichiers
obj en autre chose.
-- kurtz le piratecompagnie de la banquise
Haut de la page
Les messages affichés proviennent d'usenet.
NewsPortal