[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: 
 
#!/usr/bin/perl 
 
$file_list = "file_list.txt"; 
$output_file = "summary.txt"; 
 
open(LIST,$file_list) or die "Can't open file: $!\n"; 
 
@results = (); 
$replicate = 0; 
 
while($file = <LIST>) { 
	open(FILE,$file) or die "Can't open file: $!\n"; 
 
#	$line = <FILE>; 
	while($line = <FILE>) { 
		chop($line); 
		($a,$b,$c) = split /\s+/,$line; 
		$results[$a][$b][$replicate] = $c; 
>>>A me importa capire come tradurre in python la riga superiore, anche 
perche' se definisco results=[] non funziona nulla, ho sempre un errore di 
"out of range" 
 
	} 
	$replicate++; 
} 
 
open(OUT,">$output_file") or die "Can't open file: $!\n"; 
 
for $i (1 .. $#results) { 
	for $j ($i+1 .. $#results) { 
		print OUT "\n$i\t$j"; 
		for $k (0 .. $replicate) { 
			print OUT "\t$results[$i][$j][$k]"; 
		} 
	} 
} 
  
> Alle Thursday 11 March 2004 15:02, Simone Piunno ha scritto: 
> > Alle 14:52, giovedì 11 marzo 2004, Alessandro Pisa ha scritto: 
> > > matrice=[] 
> > > for line in file("tuo file").readlines(): 
> > >     matrice.append(line.split()[:2]) 
> > > 
> > > Giunti a questo hai una lista di liste di *stringhe* 
> > > Aggiungo un quesito: come importare velocemente e elegantemente dati di 
> > > tipo *numerico*? 
> > 
> > Ti piace la sintesi? 
> > 
> > matrice=[map(int, line.split()[:2]) for line in\ 
> >                       file('tuofile').readlines()] 
>  
> Prova a vedere se tiva bene... 
> Ciao 
> --  
> Alessandro Pisa 
> darkmoon.altervista.org 
> www.fe.infn.it/astro 
>  
> _______________________________________________ 
> 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