Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
Python - modificare variabile globale da funzione
Forum - Python - modificare variabile globale da funzione

Avatar
delta (Normal User)
Pro


Messaggi: 96
Iscritto: 01/09/2009

Segnala al moderatore
Postato alle 9:50
Martedì, 08/09/2009
salve, ho bisogno di capire come poter modificare una variabile globale in modo permanente!!!

prendiamo ad esempio un codice di prova scritto sull'ide di pythhon (uso la versione 2.6)

Codice sorgente - presumibilmente Python

  1. >>>a=5 #variabile globale
  2. >>>def dividiperdue(a):
  3.        b=a/2.0
  4.        # operazione molto banale, giusto per far capire
  5.        print b
  6.  
  7. >>>dividiperdue(a) #a=5
  8. 2.5
  9. >>>a     #richiedo il valore all'ide di a
  10. 5
  11. >>>



ho bisogno, in sostanza, che la variabile globale a diventi 2.5 e non 5

è possibile? ho cercato su google ma non ho trovato niente

:hail::hail::hail: ne ho estremo bisogno... grazie in anticipo

PM Quote
Avatar
delta (Normal User)
Pro


Messaggi: 96
Iscritto: 01/09/2009

Segnala al moderatore
Postato alle 14:29
Martedì, 08/09/2009
chiedo scusa a tutti ma ho postato una stupidaggine. chiedo scusa. si può eliminare il topic?

PM Quote
Avatar
The Newbie (Member)
Pro


Messaggi: 175
Iscritto: 14/07/2010

Segnala al moderatore
Postato alle 19:48
Mercoledì, 11/08/2010
quella che passi come parametro non è una variabile globale, quindi non è alias della variabile all'interno della funzione e comunque non hai modificato minimamente il valore di a nella tua funzione bensì hai creato una nuova variabile locale b
se vuoi modificare permanentemente il valore di a ti consiglio di utilizzare una funzione produttiva

Codice sorgente - presumibilmente Python

  1. def dividiperdue(a):
  2.     return a/2.0
  3.  
  4. a = 5
  5. a = dividiperdue(a)
  6. print a



spero di essere stato chiaro

PM Quote
Avatar
delta (Normal User)
Pro


Messaggi: 96
Iscritto: 01/09/2009

Segnala al moderatore
Postato alle 21:53
Mercoledì, 11/08/2010
ciao, grazie io mi ricordo di aver anche scritto che avevo capito l'errore (variabile globale... )

comunque hai riesumato un post vecchissimo!

comunque esiste anche 'global'

PM Quote
Avatar
The Newbie (Member)
Pro


Messaggi: 175
Iscritto: 14/07/2010

Segnala al moderatore
Postato alle 22:24
Mercoledì, 11/08/2010
non capisco cosa stia accadendo al database di questo sito... mette i vecchi posts tra gli ultimi e non fa vedere le risposte

PM Quote