← Volver

Cómo declarar un objeto («variable») global

Todo objeto que no haya sido creado dentro de una clase o una función es, por defecto, global y por ello puede ser accedido desde cualquier lugar dentro del mismo archivo en el que ha sido definido.

a = 1

def f():
print(a)

Ahora bien, para poder alterar el valor de a desde la función f(), es necesario indicárselo a Python vía la palabra reservada global.

a = 1

def f():
global a
a = 2

print(a) # 1
f()
print(a) # 2

El siguiente código, en cambio, crea un nuevo objeto local a dentro de la función f(), por lo que el objeto global a mantiene su valor.

a = 1

def f():
a = 2

print(a) # 1
f()
print(a) # 1



¿Alguna duda sobre este código? ¡Preguntanos en el foro!