[PIPython] passaggio di variabili tra metodi
Stefano Maniero
smaniero
Mar 4 Gen 2005 22:07:35 CET
Definire una variabile globale è banale:
variabileGlobale = "valore"
class Test:
def stamvaVariabileGlobale(self):
print variabileGlobale
Ma solitamente le variabili globali raramente sono una buona scelta
implementativa.
Per le tue esigenze, se vuoi far ritornare ad una metodo di un oggetto dei
valori multipli puoi:
1) Ritonrare una lista, una tupla o un dizionario
class Test:
def ritornaLista(self):
return [ "valore1", "valore2", "valore3" ]
def ritornaTupla(self):
return [ "valore1", "valore2", "valore3" ]
def ritornaDizionario(self):
return { "var1" : "valore1", "var2" : "valore2" }
2) Oppure, utilizzando la programmazione ad oggetti, puoi definire le variabile
a livello di oggetto:
class Test:
def __init__(self,v1,v2):
self.var1 = v1
self.var2 = v2
def setVars(self, v1, v2):
self.var1 = v1
self.var2 = v2
def printValues(self):
print self.var1
print self.var2
test = test( "valore1", "valore2")
test.printValues()
test.setVars( "valore3", "valore4")
test.printValues()
Ciao
Stefano
Adriano Allora ha scritto:
> Il giorno 03/gen/05, alle 21:03, Stefano Maniero ha scritto:
>
>> E' un problema di "scope" della variabile luogo. Nel tuo caso la
>> variabile luogo
>> è locale alla funzione Gambe, perciò la variabile è visibile solamente
>> all'interno della funzione.
>
>
> come faccio a rendere una variabile globale? cioè, per ora questo metodo
> va benissimo,
> ma in futuro avrò bisogno di funzioni che generano più variabili con i
> loro valori in modo da
> passare valori e variabili ad altre funzioni.
>
> Inoltre, questo mi serve anche per variabili che possono o meno essere
> incrementate all'interno
> di funzioni che vengono ripetute (per ora, facendolo come speravo fosse
> ragionevole farlo,
> cioè passando le variabili, ad ogni iterazione riparte dai valori base).
>
> mi scuso se la domanda è imbecille, ma non ho trovato risposta nella
> manualistica a mia disposizione
> (compreso il manuale apogeo python2.1... GRRR, troppi euri e troppo
> poche informazioni...)
>
>
> grazie,
> ciao
>
> alladr
>
>
> |^|_|^|_|^| |^|_|^|_|^|
> | | | |
> | | | |
> | |*\_/*\_/*\_/*\_/*\_/* | |
> | |
> | |
> | |
> | http://www.e-allora.net |
> | |
> | |
> **************************************
>
> _______________________________________________
> La mailing list di python.it
> python a lists.python.it
> http://lists.python.it/cgi-bin/mailman/listinfo/python
More information about the Python
mailing list