Articles of global

Una alternativa a lo global en Python.

Actualmente tengo un código como este: cache = 1 def foo(): global cache # many # lines # of code cache = 2 Sin embargo, esto puede llevar a errores difíciles de encontrar en el futuro, ya que el lector puede no notar que global cache aparece en algún lugar arriba del cache = 2 […]

Python, ¿cómo puedo cambiar el valor de una variable en el ámbito principal?

por ejemplo: statement de statement declarará una nueva variable local. foo = ‘global’ def func1(): foo = ‘func1’ def func2(): foo = ‘local variable in func2’ La statement global use usará foo en global: def func2(): global foo foo = ‘global changed in func2’ #changed the foo value in global scope ¿Cómo puedo cambiar la […]

como actualizar la variable global en python

En Python, tengo una función que devuelve una lista de los últimos enlaces (a carpetas) en un sitio web. También tengo otra función que descarga los últimos archivos de esas carpetas. Planeo ejecutar este script todos los días. Tengo una lista global con los enlaces de carpetas a los que la función de descarga accede […]

Python: Vida útil de las variables globales del módulo

Tengo un recurso compartido con un alto costo de inicialización y, por lo tanto, quiero acceder a él a través del sistema (se usa básicamente para algunos instrumentos, por lo que tiene que ser liviano). Así que creé un módulo gestionando la configuración y accediendo a él. Realiza una inicialización perezosa del recurso y lo […]

Búsqueda recursiva de Python de Dict con claves anidadas

Hace poco tuve que resolver un problema en un sistema de datos real con una combinación de dictado / lista anidada. Trabajé en esto durante bastante tiempo y encontré una solución, pero estoy muy insatisfecho. Tuve que recurrir al uso de globals() y un parámetro global temporal nombrado. No me gusta usar globals. Eso es […]

Referencias locales y globales con UnboundLocalError

No entiendo muy bien por qué el código. def f(): print(s) s = “foo” f() corre perfectamente bien pero def f(): print(s) s = “bar” s = “foo” f() me da UnboundLocalError. Sé que puedo solucionar esto declarando s como una variable global dentro de la función o simplemente pasando un argumento a la función. […]

execfile () no se puede usar de manera confiable para modificar los locales de una función

La documentación de python indica que “execfile () no se puede usar de manera confiable para modificar los locales de una función“. en la página http://docs.python.org/2/library/functions.html#execfile ¿Alguien puede proporcionar más detalles sobre esta statement? La documentación es bastante mínima. La statement parece muy contradictoria con “Si se omiten ambos diccionarios, la expresión se ejecuta en […]

Añadir separadores de registro a todos los accesorios en unittests

Estoy usando el módulo unittest. Necesito separar los registros setUp, setUpClass, teardown y teardownClass de los registros de unittests. La salida debe verse algo como: **************setting things up************** INFO: preparing database INFO: create new users **************end of setup**************** INFO: starting test one INFO: … **************Cleaning things************** INFO: delete users … Intenté anular algunas funciones en […]

Llamar a una variable en una función diferente sin usar global

Estoy tratando de usar una variable / lista en una función que está definida en otra función sin hacerla global. Aquí está mi código: def hi(): hello = [1,2,3] print(“hello”) def bye(hello): print(hello) hi() bye(hello) En este momento me aparece el error de que “hola” en “bye (hola)” no está definido. ¿Cómo puedo resolver esto?

Asignar un valor a la variable de clase es asignarlo a todas las instancias de ese objeto

Tengo una clase con un diccionario. Creo n instancias de números de la clase. Cuando I + = los valores en una clave en ese diccionario se reflejan en cada uno de los objetos que he creado desde ese objeto. ¿Cómo hago que ese diccionario sea único para cada instanciación de esa clase? Así es […]