Así que puedo leer desde una variable global. def f() : print x Y también puedo asignarlo. def g() global x x = 3 Cuando la gente dice que “las variables globales son malas”, ¿significa que tanto la lectura como la asignación son malas, o simplemente la asignación es mala? (Mi impresión es que la […]
Me cuesta un poco entender por qué algunas variables son locales y otras globales. Por ejemplo, cuando bash esto: from random import randint score = 0 choice_index_map = {“a”: 0, “b”: 1, “c”: 2, “d”: 3} questions = [ “What is the answer for this sample question?”, “Answers where 1 is a, 2 is b, […]
Digamos que tengo dos módulos: a.py value = 3 def x() return value b.py from a import x value = 4 Mi objective es usar la funcionalidad de ax en b , pero cambiar el valor devuelto por la función. Específicamente, el value buscará con a como fuente de nombres globales incluso cuando ejecuto bx() […]
Recibí un proyecto del desarrollador que dejó nuestra empresa. No es demasiado complejo, pero no se ve muy bien. Así que aquí está la pregunta: la aplicación tiene algunos módulos y uno es la “configuración” que almacena alguna aplicación. opciones (no todas las opciones posibles, digamos solo dos: foo y bar ). Cuando se inicia […]
En resumen, la pregunta: ¿hay una manera de evitar que Python busque variables fuera del scope actual? Detalles: Python busca definiciones de variables en los ámbitos externos si no están definidas en el ámbito actual. Por lo tanto, un código como este puede romperse cuando no se tiene cuidado durante la refactorización: def line(x, a, […]
Posible duplicado: Las actualizaciones de variables globales de multiproceso de Python no se devuelven al padre Estoy usando una computadora con muchos núcleos y para obtener beneficios de rendimiento realmente debería usar más de uno. Sin embargo, estoy confundido por qué estos bits de código no hacen lo que espero: from multiprocessing import Process var […]
Me gustaría tener una variable definida en la función de anidación que se modificará en la función anidada, algo así como def nesting(): count = 0 def nested(): count += 1 for i in range(10): nested() print count Cuando se llama a la función de anidar, deseo que imprima 10, pero genera UnboundLocalError. La palabra […]
Supongamos que tengo una variable global a . Y dentro de una definición de función, también tenemos una variable local llamada a . ¿Hay alguna forma de asignar el valor de la variable global al de la variable local? a = ‘foo’ def my_func(a = ‘bar’): # how to set global a to value of […]
Cuando leo documentación de python y varias listas de correo, siempre leo algo que parece un dogma. Las variables globales deben ser evitadas como el infierno, son de diseño pobre … OK, ¿por qué no? Pero hay una situación de la vida real en la que no sé cómo evitar ese patrón. Digamos que tengo […]
Me pregunto si hay alguna diferencia en el rendimiento al acceder a una variable de clase (un dict) dentro de un método de la misma clase usando: self.class_variable_dict.add(some_key, some_value) y ClassName.class_variable_dict.add(some_key, some_value) obviamente, ambos funcionarán siempre que no haya una variable de instancia con el mismo nombre, pero ¿hay algún motivo de uso / razón […]