<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
    <title></title>
  </head>
  <body text="#000000" bgcolor="#ffffff">
    grazie mille,<br>
    stavo pensando anche io ad una cosa del genere ma non so se sia
    abbastanza efficiente con molte variabili in lista ...<br>
    <br>
    Per descrivere meglio cosa sto cercando di fare :<br>
    <br>
    Ho una struttura a nodi (m0001,m0002) ,<br>
    ogni nodo può contenere una lista di regole<br>
    ogni nodo  può aggiornare il valore del padre o dei figli del nodo.<br>
    m0001<br>
        p=['p1=10','p2=20']<br>
         m002 regola nodo ('p1==100')<br>
            p=['p1=10','p3=p1+10']<br>
    naturalmente questo e' un piccolo esempio la struttura potrebbe
    espandersi  a piacimento..<br>
    <br>
    il problema e' molto simile alla risoluzione di formule in un foglio
    di calcolo ..<br>
    <br>
    ciao<br>
    Matteo<br>
           <br>
        <br>
    Il 09/07/2011 14:20, Stefano Dal Pra ha scritto:
    <blockquote
cite="mid:CAG8zrU7Y5zeWSyPSmDAJeDGrBZNwtbquVO07J8qjfocxEP__9g@mail.gmail.com"
      type="cite">Io farei cosi':<br>
      <br>
      a=['p4=p3+10','p1=10', 'p2=p1', 'p3=p1+p2']<br>
      n = 0<br>
      while a:<br>
          na = len(a)<br>
          try:<br>
              exec(a[n])<br>
          except NameError,e:<br>
              print e<br>
              n+=1<br>
              continue<br>
          n=0<br>
          x = a.pop(0)<br>
      <br>
      <br>
      provandolo ottengo:<br>
      <br>
      >>> a=['p4=p3+10','p1=10', 'p2=p1', 'p3=p1+p2']<br>
      >>> n = 0<br>
      >>> while a:<br>
      ...     na = len(a)<br>
      ...     try:<br>
      ...         exec(a[n])<br>
      ...     except NameError,e:<br>
      ...         print e<br>
      ...         n+=1<br>
      ...         continue<br>
      ...     n=0<br>
      ...     x = a.pop(0)<br>
      ... <br>
      >>> p4<br>
      30<br>
      >>> p3<br>
      20<br>
      >>> p1<br>
      10<br>
      >>> p2<br>
      10<br>
      <br>
      Ciao<br>
      <br>
      Stefano<br>
      <div class="gmail_quote">2011/7/8 Matteo Boscolo <span dir="ltr"><<a
            moz-do-not-send="true"
            href="mailto:matteo.boscolo@boscolini.eu">matteo.boscolo@boscolini.eu</a>></span><br>
        <blockquote class="gmail_quote" style="border-left: 1px solid
          rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left:
          1ex;">Ciao a tutti,<br>
          ho questa lista:<br>
          a=['p1=10', 'p2=20', 'p3=p1+p2']<br>
          <br>
          e questa funzione:<br>
          def e(var):<br>
             for aa in var:<br>
                 print aa<br>
                 exec(aa)<br>
             print "p3",p3<br>
          e(a)<br>
          >>>p3 30<br>
          <br>
          adesso le cose si complicano<br>
          <br>
          a=['p4=p3+10','p1=10', 'p2=p1', 'p3=p1+p2']<br>
          <br>
          def e(var):<br>
             for aa in var:<br>
                 print aa<br>
                 exec(aa)<br>
             print "p4",p4<br>
          e(a)<br>
          <br>
          Naturalmente qui si rompe tutto ..<br>
          <br>
          Avete qualche link / suggerimento che risolve questo tipo di
          problematica??<br>
          <br>
          Grazie mille<br>
          Matteo<br>
          _______________________________________________<br>
          Python mailing list<br>
          <a moz-do-not-send="true" href="mailto:Python@lists.python.it"
            target="_blank">Python@lists.python.it</a><br>
          <a moz-do-not-send="true"
            href="http://lists.python.it/mailman/listinfo/python"
            target="_blank">http://lists.python.it/mailman/listinfo/python</a><br>
        </blockquote>
      </div>
      <br>
      <pre wrap="">
<fieldset class="mimeAttachmentHeader"></fieldset>
_______________________________________________
Python mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Python@lists.python.it">Python@lists.python.it</a>
<a class="moz-txt-link-freetext" href="http://lists.python.it/mailman/listinfo/python">http://lists.python.it/mailman/listinfo/python</a>
</pre>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <p class="avgcert" color="#000000" align="left">Nessun virus nel
        messaggio.<br>
        Controllato da AVG - <a moz-do-not-send="true"
          href="http://www.avg.com">www.avg.com</a><br>
        Versione: 10.0.1388 / Database dei virus: 1516/3754 - Data di
        rilascio: 09/07/2011</p>
    </blockquote>
    <br>
  </body>
</html>