[Python] Liste con Variabili
Matteo Boscolo
matteo.boscolo a boscolini.eu
Dom 10 Lug 2011 08:24:12 CEST
grazie mille,
stavo pensando anche io ad una cosa del genere ma non so se sia
abbastanza efficiente con molte variabili in lista ...
Per descrivere meglio cosa sto cercando di fare :
Ho una struttura a nodi (m0001,m0002) ,
ogni nodo puņ contenere una lista di regole
ogni nodo puņ aggiornare il valore del padre o dei figli del nodo.
m0001
p=['p1=10','p2=20']
m002 regola nodo ('p1==100')
p=['p1=10','p3=p1+10']
naturalmente questo e' un piccolo esempio la struttura potrebbe
espandersi a piacimento..
il problema e' molto simile alla risoluzione di formule in un foglio di
calcolo ..
ciao
Matteo
Il 09/07/2011 14:20, Stefano Dal Pra ha scritto:
> Io farei cosi':
>
> a=['p4=p3+10','p1=10', 'p2=p1', 'p3=p1+p2']
> n = 0
> while a:
> na = len(a)
> try:
> exec(a[n])
> except NameError,e:
> print e
> n+=1
> continue
> n=0
> x = a.pop(0)
>
>
> provandolo ottengo:
>
> >>> a=['p4=p3+10','p1=10', 'p2=p1', 'p3=p1+p2']
> >>> n = 0
> >>> while a:
> ... na = len(a)
> ... try:
> ... exec(a[n])
> ... except NameError,e:
> ... print e
> ... n+=1
> ... continue
> ... n=0
> ... x = a.pop(0)
> ...
> >>> p4
> 30
> >>> p3
> 20
> >>> p1
> 10
> >>> p2
> 10
>
> Ciao
>
> Stefano
> 2011/7/8 Matteo Boscolo <matteo.boscolo a boscolini.eu
> <mailto:matteo.boscolo a boscolini.eu>>
>
> Ciao a tutti,
> ho questa lista:
> a=['p1=10', 'p2=20', 'p3=p1+p2']
>
> e questa funzione:
> def e(var):
> for aa in var:
> print aa
> exec(aa)
> print "p3",p3
> e(a)
> >>>p3 30
>
> adesso le cose si complicano
>
> a=['p4=p3+10','p1=10', 'p2=p1', 'p3=p1+p2']
>
> def e(var):
> for aa in var:
> print aa
> exec(aa)
> print "p4",p4
> e(a)
>
> Naturalmente qui si rompe tutto ..
>
> Avete qualche link / suggerimento che risolve questo tipo di
> problematica??
>
> Grazie mille
> Matteo
> _______________________________________________
> Python mailing list
> Python a lists.python.it <mailto:Python a lists.python.it>
> http://lists.python.it/mailman/listinfo/python
>
>
>
> _______________________________________________
> Python mailing list
> Python a lists.python.it
> http://lists.python.it/mailman/listinfo/python
>
>
> Nessun virus nel messaggio.
> Controllato da AVG - www.avg.com <http://www.avg.com>
> Versione: 10.0.1388 / Database dei virus: 1516/3754 - Data di
> rilascio: 09/07/2011
>
-------------- parte successiva --------------
Un allegato HTML č stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20110710/b8dc010b/attachment.html>
Maggiori informazioni sulla lista
Python