[PIPython] ancora colonne!

Simone Piunno pioppo
Ven 19 Nov 2004 15:16:43 CET


On Friday 12 March 2004 15:48, ciccio a unical.it wrote:

> La questione e' la seguente. Io ho ad esempio 2 files (ma potrebbero essere
> n) del tipo:
> file 1:
> 1	4	7
> 2	5	8
> 3	6	9
>
> file 2:
> 10	13	16
> 11	14	17
> 12	15	18
>
> Voglio prendere solo la terza colonna ed inserirla in un file di output per
> ottenere qualcosa del tipo:
> outfile:
> 7	16
> 8	17
> 9	18

[pioppo a abulafia ex]$ cat file1.txt
1       4       7 
2       5       8 
3       6       9 
[pioppo a abulafia ex]$ cat file2.txt
10      13      16 
11      14      17 
12      15      18 
[pioppo a abulafia ex]$ cat file3.txt
19      20      23      26 
21      24     
22      25      28 
29      30      31
[pioppo a abulafia ex]$ python terzecolonne.py file1.txt file2.txt file3.txt
7       16      23
8       17      
9       18      28
                31
[pioppo a abulafia ex]$ cat terzecolonne.py
fps = [file(nome) for nome in sys.argv[1:]]
righe = []
ancora = 1
while ancora:
    riga = []
    ancora = 0
    for fp in fps:
        s = fp.readline()
        try:
            assert s
            ancora += 1
            riga.append(s.split()[2])
        except (IndexError, AssertionError):
            riga.append('')
    righe.append(riga)
# qui puoi fare qualcosa
for riga in righe:
    print '\t'.join(riga).expandtabs()

-- 
http://thisurlenablesemailtogetthroughoverzealousspamfilters.org




More information about the Python mailing list