<br><br>
<div class="gmail_quote">2009/8/5 alberto rossini <span dir="ltr"><<a href="mailto:albross_2000@hotmail.com">albross_2000@hotmail.com</a>></span><br>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">
<div>Salve, sono un neofita di python e della programmazione in generale. Ho un problema con il manuale 'Pensare da informatico' paragr. 5.3 Composizione quando viene chiamata una funzione all'interno di un'altra. Come faccio per fare in modo che le funzioni definite in altri script vengano riconosciute al momento della chiamata della funzione principale? Grazie e scusate l'ignoranza</div>
</blockquote>
<div> </div>
<div>Ciao, </div>
<div> </div>
<div>quello che devi cercare nella documentazione si chiama "import". Python ha un fondamentale concetto che č quello di namespace.</div>
<div>Immagina di avere un file di nome "primo.py" e un file di nome "secondo.py", in cui hai definito la funzione second_function:</div>
<div># secondo.py</div>
<div>"""</div>
<div>This module exposes a single very basic function as a simple example.</div>
<div>"""</div>
<div> </div>
<div>def second_function(a, b):</div>
<div> """ Simple example function, prints a message and returns the product of a and b.</div>
<div> """ </div>
<div> print "Within second_function with parameters %s and %b" % (a, b)</div>
<div> return a*b</div>
<div># fine di secondo.py</div>
<div> </div>
<div>Se all'interno di primo.py scrivi import secondo, hai reso disponibile il nome "second" all'interno del namespace in cui ti trovi e potrai usare la funzione riferendoti ad essa con secondo.second_function, cosi':</div>
<div> </div>
<div># primo.py</div>
<div>import secondo # Ora secondo e' nel namespace</div>
<div> </div>
<div>if __name__ == '__main__':</div>
<div> c = secondo.second_function(3, 4) # puoi riferirti ai nomi presenti in secondo.py utilizzando un '.'</div>
<div> print c</div>
<div> </div>
<div># fine di primo.py</div>
<div> </div>
<div>Naturalmente ci sono moltissime cose da approfondire, ma questo esempio semplice potrebbe darti un'idea per iniziare.</div>
<div>Alcuni link utili:</div><a href="http://docs.python.it/html/tut/node8.html">http://docs.python.it/html/tut/node8.html</a>
<div><a href="http://effbot.org/zone/import-confusion.htm">http://effbot.org/zone/import-confusion.htm</a></div>
<div> </div>
<div>ciao,</div>
<div>Francesco</div>
<div> </div></div>