Articles of exec

Configuración de variables con exec dentro de una función

Acabo de comenzar a enseñar Python y necesito un poco de ayuda con este script: old_string = “didnt work” new_string = “worked” def function(): exec(“old_string = new_string”) print(old_string) function() Quiero conseguirlo tan old_string = “worked” .

os.exec en Windows

Tengo un script que llama a os.execvp a otra instancia de Python. Después de hacer esto, parece que estoy conectado a una instancia de cmd.exe , no a la instancia de Python que acabo de crear. La instancia de Python responde a Ctrl + C sin embargo. H:\bin>Python 3.2.1 (default, Jul 10 2011, 21:51:15) [MSC […]

¿No puede cambiar las variables globales en una función a través de una statement exec ()?

¿Por qué no puedo cambiar las variables globales desde dentro de una función, usando exec ()? Funciona bien cuando la sentencia de asignación está fuera de exec (). Aquí hay un ejemplo de mi problema: >>> myvar = ‘prueba’ >>> def myfunc (): … myvar global … exec (‘myvar = “cambiado!”‘) … imprimir (myvar) … […]

¿Por qué los cambios de Python 3 para que exec rompa este código?

Miré a través de los innumerables hilos de ‘Python exec‘ en SO, pero no pude encontrar uno que respondiera a mi problema. Lo siento mucho si esto se ha preguntado antes. Aquí está mi problema: # Python 2.6: prints ‘it is working’ # Python 3.1.2: “NameError: global name ‘a_func’ is not defined” class Testing(object): def […]

Comstackr PyPy a Exe

Sé cómo comstackr el archivo CPython a exe usando cx_freeze pero ¿es posible comstackr un progtwig simple usando PyPy a Exe?

no permitir el acceso al sistema de archivos dentro de exec y eval en Python

Quiero no permitir el acceso al sistema de archivos desde el código de los clientes, así que creo que podría sobrescribir la función abierta env = { ‘open’: lambda *a: StringIO(“you can’t use open”) } exec(open(‘user_code.py’), env) pero tengo esto unqualified exec is not allowed in function ‘my function’ it contains a nested function with […]

¿Por qué Python 3 exec () falla al especificar locales?

Lo siguiente se ejecuta sin error en Python 3: code = “”” import math def func(x): return math.sin(x) func(10) “”” _globals = {} exec(code, _globals) Pero si también bash capturar la variable local dict, falla con un NameError : >>> _globals, _locals = {}, {} >>> exec(code, _globals, _locals) ————————————————————————— NameError Traceback (most recent call […]

¿Cómo puedo analizar una cadena que representa una lista anidada en una lista real?

Digamos que tengo una cadena que representa algunas listas anidadas y quiero convertirla en algo real. Yo podría hacer esto, creo: exec “myList = [‘foo’, [‘cat’, [‘ant’, ‘bee’], ‘dog’], ‘bar’, ‘baz’]” Pero en un entorno donde los usuarios podrían proporcionar la cadena para ejecutar esto, podría ser una mala idea. ¿Alguien tiene alguna idea para […]

¿Por qué se rompen los cierres dentro del ejecutivo?

En Python 2.6, >>> exec “print (lambda: a)()” in dict(a=2), {} 2 >>> exec “print (lambda: a)()” in globals(), {‘a’: 2} Traceback (most recent call last): File “”, line 1, in File “”, line 1, in File “”, line 1, in NameError: global name ‘a’ is not defined >>> exec “print (lambda: a).__closure__” in globals(), […]

Eval / Exec con asignación de variable – Python

El siguiente código está dirigido a convertir un factorial en sus productos. Por ejemplo, “4!” -> “(4*3*2*1)” . Este código no funciona debido a la línea exec(codeToRun) . Sin embargo, si en cambio pongo el valor de codeToRun en lugar de exec(codeToRun) entonces funciona perfectamente, ¿por qué no funciona exec ? No funciona ↓ def […]