[linux_var] [OT][PERL] Quale struttura dati?

0bscure obscure9 a gmail.com
Ven 20 Mar 2009 15:58:25 UTC


2009/3/20 Aladino Amantini <geniodelmale a tele2.it>

>
>
> On Fri, 20 Mar 2009 16:04:30 +0100
> 0bscure wrote:
> > Saluten
> >
> > Domanda per chi si diletta di Perl almeno al livello
> >monaco corrotto
> >
> > Il dato di input e' composto da un'associazione univoca
> > NN STRINGA
> > del tipo:
> > 11 PERL
> > 2 LINUX
> >
> > (Il separatore tra i due campi e' a mia discrezione)
> >
> > Ora qual'e' secondo voi la struttura dati tranquilla
> >adatta per una
> > memorizzazione per accesso sequenziale? (Non ho un db)
> > Io pensavo ad un array a 2 dimensioni.
> > Da qui il problema:
> >
> > [cut]
> > while ()
> > {
> > chomp;
> > ($str, $banned) = split(/;/);
> > push(@BANLIST,$str,$banned);
> > }
> > }
> >
> > print "@BANLIST"; <---- Restituisce l'array multidim.
> > print "@BANLIST[2]"; <---- Restituisce giustamente il
> >secondo
> > elemento prima colonna (es. 2)
> >
> > print "@BANLIST[1][1]"; <--- Non funziona
> > print "@BANLIST[1]->[1]"; <---- Non funziona
> >
> >
> > So how?
>
> Con perl ho fatto proprio poco piu' che altro qualche scrippettino per
> facilitarmi nella gestione di input o output massiccio.
> Quello che proverei io e' un
>
> print "$BANLIST[1][1]";
>
> oppure
>
> print "$BANLIST[1]->[1]";
>
> insomma di cambiare di array a grandezza scalare, alla fine tu stai
> cercando di accedere a un campo (scalare) di un array.
>
> ripeto, con perl ho fatto solo qualche scrippettino del cavolo andando piu'
> che altro a tentativi.
>
> by aL
>
>

Grazie seminarista!! :-)

In realta' vedo che il problema e' a monte:
La
      push(@BANLIST,$str,$banned);

non inserisce come array multidim. ma sequenziale quindi prima ho detto male
print "@BANLIST[2]"; restituisce il terzo elemento dell'array
monodimensionale... ergo la push non si usa cosi probabilmente...

Non trovo molta docs anche sul web... eppure e' un operazione base...




-- 
gpg fingerprint = D66C 9448 F9CC 8AC8 5074  ADB3 3597 A363 FA8D 3BE2

La pulenta e l vin ross a fan ben ai oss!! Picaa gi fin a la mort...

http://digilander.libero.it/ccudiga/
-------------- parte successiva --------------
Un allegato HTML  stato rimosso...
URL: <http://ml.linuxvar.it/pipermail/talking/attachments/20090320/394bcac5/attachment.html>


More information about the Talking mailing list