<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">On 08/05/2013 10:06 AM, Gollum1 wrote:<br>
    </div>
    <blockquote
cite="mid:CANTVqs_RHS+rCYYR8GEvEbEbOmPnK9kpnOUweR2+baaQ8iRtbQ@mail.gmail.com"
      type="cite">
      <blockquote type="cite" style="font-weight: bold; font-style:
        italic; color: #000099;">
        <pre wrap="">Le parentesi sulla print sulla 3 le trovo, boh, scomode
</pre>
      </blockquote>
      <pre wrap="">qui ora parte una guerra di religione... :P

per quanto mi riguarda, avendo iniziato da poco ad usare python, è
solo una questione di abitudine, certo è che almeno si uniforma a
tutte le varie chiamate di funzione... era l'unica (credo) anomalia
nell'ambito delle chiamate di funzione.</pre>
    </blockquote>
    Non c'e' alcuna anomalia. In Python 2 `print` non e' una funzione,
    ma una istruzione semplice:<br>
    <br>
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
    <a
href="http://docs.python.org/2/reference/simple_stmts.html#the-print-statement">http://docs.python.org/2/reference/simple_stmts.html#the-print-statement</a><br>
    <br>
    Non puoi usarla all'interno di una espressione:<br>
    <br>
        >>> print('Vero') if True else print('Falso') # Python
    2<br>
          File "<stdin>", line 1<br>
            print('Vero') if True else print('Falso') # Python 2<br>
                                           ^<br>
        SyntaxError: invalid syntax<br>
    <br>
    <br>
    Non essendo una etichetta, ma una parola chiave:<br>
    <br>
        >>> from keyword import kwlist # Python 2<br>
        >>> 'print' in kwlist<br>
        True<br>
    <br>
    non puoi assegnarle un altro oggetto:<br>
    <br>
        >>> print = 33<br>
          File "<stdin>", line 1<br>
            print = 33<br>
                  ^<br>
        SyntaxError: invalid syntax<br>
    <br>
    <br>
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
    A partire da Python 3 e' invece una funzione (e' una etichetta che
    fa riferimento<br>
    ad una funzione):<br>
    <br>
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
    <a
      href="http://docs.python.org/3.0/whatsnew/3.0.html#print-is-a-function">http://docs.python.org/3.0/whatsnew/3.0.html#print-is-a-function</a><br>
    <br>
    Puoi quindi usarla all'interno di una espressione, come tutte le
    altre funzioni:<br>
    <br>
        >>> print('Vero') if True else print('Falso') # Python
    3<br>
        Vero<br>
    <br>
    Visto che e' una etichetta (un nome), puoi assegnarle un altro
    oggetto, come per<br>
    tutte le altre etichette:<br>
    <br>
        >>> print_ = print # Python 3<br>
        >>> print = 33<br>
        >>> print<br>
        33<br>
        >>> print_<br>
        <built-in function print><br>
        >>> print_('python')<br>
        python<br>
        >>> print = sum <br>
        >>> sum(range(5))<br>
        10<br>
    <br>
    Non e' per nulla scomoda, e quando si inizia a programmare con
    Python 3 ci si rende conto<br>
    immediatamente di quanto questo sia più intiutivo rispetto a Python
    2<br>
    <pre class="moz-signature" cols="72">-- 
Marco Buttu

INAF Osservatorio Astronomico di Cagliari
Loc. Poggio dei Pini, Strada 54 - 09012 Capoterra (CA) - Italy
Phone: +39 070 71180255
Email: <a class="moz-txt-link-abbreviated" href="mailto:mbuttu@oa-cagliari.inaf.it">mbuttu@oa-cagliari.inaf.it</a></pre>
  </body>
</html>