variables globales
rapto
rapto en arrakis.es
Jue Feb 21 11:21:33 CET 2002
Python considera una variable local siempre que se le asigne un valor
dentro de un bloque de visibilidad o ámbito. Si quieres modificar este
comportamiento, puedes declarar la variable global.
#!/usr/bin/python
n=0
def A():
global n #Se fuerza a que sea global
print n
n=n+1
def B():
print n #Como no se asigna n, es global
print n
A()
B()
----- Mensaje Original -----
Remitente: Sergio Rua <srua en esware.com>
Fecha: Miércoles, Febrero 20, 2002 4:28 pm
Asunto: [python-es] variables globales
> Hola,
>
> Ante todo, gracias a todos por las respuestas en mi anterior
> mensaje. Ya sé que algunas de mis preguntas son un poco
> idiotas (en especial la de hoy) pero a veces el programar
> en muchos
> lenguajes proboca equivocaciones graves.
>
>
> En fin, que mi problema de hoy es que en el programa que estoy
> haciendo necesito usar una variable global que no siempre me
> funciona. Os pongo un ejemplo de cómo las uso:
>
> #!/usr/bin/python
>
> n=0
>
> def A():
> print n
> n=n+1 #Esta asignación convierte a n en local
>
> def B():
> print n #Ésta es global, por que no se asigna dentro
del bloque
>
>
> print n
> A()
> B()
>
>
>
> Si mi variable es "n", cómo tendría que definirla para que la
> reconozcan las funciones A y B?
>
>
> Un saludo,
>
> Sergio Rua <srua en esware.com>
> Departamento de Desarrollo
> http://esware365.net/~srua
>
>
Más información sobre la lista de distribución Python-es