[Python-es] Editar variables en aplicaciones de consola

kausdiv kausdiv en gmail.com
Dom Ago 17 19:45:43 CEST 2014


Hola.

Estoy haciendo varias aplicaciones/utilidades de consola que necesito.
La cuestión es que no conozco ninguna forma de "editar" una variable, 
con raw_input se introduce nueva.. en fin he recurrido a Tkinter.

Pero me parece una tremenda chapuza lo que he hecho:
------------------codigo chapuza------------------
from Tkinter import *

global T
global sArgumentos

root = Tk()
T = Text(root, height=4, width=60)
T.pack()
sArgumentos = ""

def click():
     """Debe lanzarse en el click de Aceptar"""
     global T
     global sArgumentos
     sArgumentos  = T.get('1.0', 'end').strip()
     root.destroy()

def editar(argumentos):
     """Edita los argumentos y el resultado
        lo guarda en la varibale global sArgumentos """
     global T
     T.insert(END, argumentos)
     b = Button(root, text="Aceptar", command=click)
     b.pack(fill=BOTH, expand=1)
     b = Button(root, text="Cancelar", command=root.destroy)
     b.pack(fill=BOTH, expand=1)
     mainloop()
--------------------------------------------------------------------

En la aplicación se invoca a "editar('valor a editar')" y en la variable 
global sArgumentos se almacena la edición. Que además es la variable que 
contiene el origen.

Me gustaría saber  si alguien ha resuelto este problema de editar el 
contenido de variables mejor que esto.

Gracias.




Más información sobre la lista de distribución Python-es