[Soci SLIP] Aiuto python

Mauro Mosso mauro.mosso a gmail.com
Gio 2 Apr 2009 09:42:30 CEST


Il giorno 1 aprile 2009 21.46, Davide Corio <davide.corio a domsense.com> ha
scritto:

> On Wed, 2009-04-01 at 18:49 +0000, Davide Corio wrote:
> > il metodo più semplice sta ovviamente nel confrontare la corrispondenza,
> > ovvero, se "lista" è la tua lista iniziale e vuoi mettere in una lista
> > chiamata "a" tutti quelli che iniziano per 176 e finiscono per
> > "010","020","050" e "060", potrai ad esempio fare:
> >
> > >>> a = []
> > >>> for element in lista:
> > ...    if element[1:4]=="176" and element[-7:-4] in
> > ["010","020","050","060"]:
> > ...       a.append(element)
> > ...
> > >>> a
> > ['s176010.tfw', 's176050.tfw', 's176010.tfw']
>
>
> Dimenticavo, se non conosci i criteri di suddivisione a priori la
> questione è più ardua e potresti fare una cosa simile:
>
> >>> liste = {}
> >>> for element in lista:
> ...    if not element[1:4] in liste.keys():
> ...       liste[element[1:4]]={}
> ...       if not element[-7:-4] in liste[element[1:4]].keys():
> ...          liste[element[1:4]][element[-7:-4]]={}
> ...          liste[element[1:4]][element[-7:-4]]=element
> ...
> >>> liste
> {'157': {'160': 's157160.tfw'}, '156': {'160': 's156160.tfw'}, '158':
> {'130': 's158130.tfw'}, '176': {'050': 's176050.tfw'}, '175': {'150':
> 's175150.tfw'}, '174': {'120': 's174120.tfw'}}
>
> poi alla fine puoi passare ogni elemento del dizionario e ogni suo sotto
> elemento, tanto li il livello di profondità non cambia.
>
> volendo nel passaggio potresti anche crearti le liste con nome xa, xb,
> xc e così via
>
>

Visto e provato, ma non siamo ancora alla soluzione che mi aspettavo. Ecco i
problemi:
1. I dizionari hanno solo un sistema chiave-variabile in cui la variabile
puo essere anche una lista oppure la variabile è solo un elemento numero o
stringa?
2. come faccio ada estrarre i valori dal vocaboalario senza inserire la
chiave?  liste[157] se io non conosco le chiavi?

Ho pensato a questa soluzione più macchinosa, ma non so se funziona...
adesso la proverò
Se mi faccio fare prima una lista delle sole sezioni ovvero dei soli 3 primi
numeri e poii uso quella nella prima soluzione chi mi hai dato tu ieri sera?










>
> --
> Davide Corio
> email: davide.corio<at>domsense.com
> web: http://www.domsense.com
>
>
> _______________________________________________
> Soci mailing list
> Soci a mail.pinerolo.linux.it
> http://mail.pinerolo.linux.it/mailman/listinfo/soci
>
>


-- 
------
Mauro MOSSO - Consulenze faunistiche, ambientali e zootecniche
Via Inserra, 18 - 14020 CERRETO D'ASTI (AT)
Cell. +39 339 7944830      mauro.mosso a gmail.com
------
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: http://mailman.pinerolo.linux.it/pipermail/soci/attachments/20090402/a76523a8/attachment.html


Maggiori informazioni sulla lista Soci