Acceder y modificar variable global en otro módulo
Publicado por Wilson (6 intervenciones) el 15/06/2019 03:02:31
Hola a todos, soy nuevo en python, he desarrollado por muchos años en otros lenguajes.
Mi duda puntual es como acceder y modificar una variable global que se encuentra en otro módulo.
Tengo tres módulos así:
Quiero controlar la terminación de un proceso mediante la variable global: done - que se encuentra en el modulo glo.py. De momento este enfoque me funciona sin errores. Mi pegunta es, si este modo es el correcto?
¿Hay una forma mas adecuada para acceder a una variabe global?
Muchas gracias de antemano.
Mi duda puntual es como acceder y modificar una variable global que se encuentra en otro módulo.
Tengo tres módulos así:
1
2
#Módulo global glo.py
done = False
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#Módulo funciones funciones.py
import itertools
import time
import sys
import glo
#here is the animation
def animate():
for c in itertools.cycle(['|', '/', '-', '\\']):
if glo.done:
break
sys.stdout.write('\rloading ' + c)
sys.stdout.flush()
time.sleep(0.1)
sys.stdout.write('\rDone! ')
1
2
3
4
5
6
7
8
9
10
11
12
#Módulo principal pal.py
import funciones as f
import threading
import time
import glo
t = threading.Thread(target=f.animate)
t.start()
#long process here
time.sleep(1)
glo.done = True
Quiero controlar la terminación de un proceso mediante la variable global: done - que se encuentra en el modulo glo.py. De momento este enfoque me funciona sin errores. Mi pegunta es, si este modo es el correcto?
¿Hay una forma mas adecuada para acceder a una variabe global?
Muchas gracias de antemano.
Valora esta pregunta


0