Home Page  >>>  Training  >>>  Python

Registrati su TheZion
Password Persa




Funzioni e Moduli by morpheus
Le funzioni in Python sono dichiarate nel seguente modo:

def nomefunzione:
     dichiarazioni


Ecco un esempio eseguito dall'interprete in maniera interattiva:

[matte@ryu matte]$ python2.0
Python 2.0 (#26, Feb 6 2001, 18:36:01)
[GCC 2.95.2 19991024 (release/franzo)] on linux2
Type "copyright", "credits" or "license" for more information.
>>> def printCiao(nome):
...      print "Ciao", nome
...
>>> printCiao("Matteo")
Ciao Matteo
>>>



In questo caso, come avrete potuto notare, alla funzione printCiao e' stato passato un parametro 'nome' che e' poi stato utilizzato all'interno della funzione stessa.


Nel Python i programmi possono essere suddivisi in diversi file. Ciascuno di questi file viene chiamato "modulo". Per poter accedere ad un modulo, e' necessario importarlo utilizzando, per l'appunto, la keyword "import". Python ha una libreria di moduli molto vasta che per default risiedono nella directory "lib" (salvo casi particolari). Ecco un'esempio di come importare all'interno di un programma il modulo "string" per la manipolazione delle stringhe.

[matte@ryu matte]$ python2.0
Python 2.0 (#26, Feb 6 2001, 18:36:01)
[GCC 2.95.2 19991024 (release/franzo)] on linux2
Type "copyright", "credits" or "license" for more information.
>>> import string
>>> str = "python rules"
>>> str
'python rules'
>>> string.upper(str)
'PYTHON RULES'
>>>
>>> string.capitalize(str)
'Python rules'
>>>



E' necessario fare attenzione al fatto che il Python e' "case sensitive" per cui scrivere "import String" o "import string" e' differente e porta ad un errore nel primo caso. Sotto Windows e' possibile, se volete (ma non ne vedo l'utilita') disabilitare l'opzione "case sensitive" settando una variabile d'ambiente in questo modo:

C>set PYTHONCASEOK=1

E' permesso l'uso della wild card * per l'istruzione "import". In questo modo e' possibile importare all'interno del proprio programma solo alcune parti di un modulo (solo quelle necessarie ai propri scopi):

[matte@ryu matte]$ python2.0
Python 2.0 (#26, Feb 6 2001, 18:36:01)
[GCC 2.95.2 19991024 (release/franzo)] on linux2
Type "copyright", "credits" or "license" for more information.
>>> from string import upper
>>> string.upper("ciao")
Traceback (most recent call last):
File "", line 1, in ?
NameError: There is no variable named 'string'
>>> upper("ciao")
'CIAO'
>>>


Come avete potuto constatare l'utilizzo di upper e' cambiato in questo caso, almeno dal punto di vista sintattico. Avendo importato solo "upper" da "string" l'interprete non e' piu' in grado di eseguire l'istruzione "string.upper()" ma puo' invece eseguire l'istruzione "upper()" . L'importazione dei moduli rende la programmazione molto semplice e compatta.


Morpheus

Leggi commenti

Numero commenti inviati: 0