[PIPython] creare array multidimensionali

ciccio a unical.it ciccio
Ven 19 Nov 2004 15:16:45 CET


  
> > Questa parte di codice l'ho gia' utilizzata con successo. La questione 
> > dell'array multidimensionale e' nata quando ho provato a tradurre uno 
> > script dal perl che fa cio' che voglio, ma essendo in perl non ne ho il 
> > controllo e mi sono stupito della semplicita' del perl nel trattare gli 
> > array lo script e' il seguente: 
 
> Il problema è che stai usando un array come se fosse un hash, solo perchè 
> perl  
> esige che le chiavi degli hash siano scalari.   
Considerato che sono un neofita ma mi piace la spontaneita' e l'eleganza del 
python, potreste darmi qualche dritta sulla differenza tra array e hash? 
 
 
> Python non ti permette di far confusione tra sequence e dictionary, però i  
> dictionary di python sono più potenti degli hash di perl. 
>  
> #!/usr/bin/python 
>  
> CRLF = '\r\n' 
> file_list = 'file_list.txt' 
> output_file = 'summary.txt' 
> results = {} 
> replicate = 0 
>  
> for filename in file(file_list): 
>     filename = filename.rstrip(CRLF) 
>     for line in file(filename): 
>         a, b, c = line.rstrip(CRLF).split('\t') 
>         a, b, c = int(a), int(b), c.strip() 
>         results[a, b, replicate] = c 
>     replicate += 1 
> out = file(output_file, 'w') 
> m = 1 + max([x[0] for x in results]) 
> for i in range(1, m): 
>     for j in range(1 + i, 1 + m): 
>         clist = [results.get((i, j, k), '') for k in range(0, replicate)] 
>         print >> out, '\t'.join([str(i), str(j)] + clist) 
>  
> Nota che il tuo script perl non funziona (o almeno non fa quello che  
> descrivevi nell'esempio precedente) poichè manca un +1 nell'estremo destro  
> del ciclo su $j, durante la stampa del file d'uscita. 
>  
 
Geazie per lo script cerchero' di imparare il piu' possibile  
 
 
> http://thisurlenablesemailtogetthroughoverzealousspamfilters.org 
> _______________________________________________ 
> Python mailing list 
> Python a lists.python.it 
> http://lists.zope.it/cgi-bin/mailman/listinfo/python 
>  
 
 

-------------------------------------------------
This mail sent through IMP: http://horde.org/imp/




More information about the Python mailing list