From megutierrez en estudiantes.uci.cu Mon Dec 1 04:02:30 2008 From: megutierrez en estudiantes.uci.cu (Manuel Enrique Gutierrez Perez) Date: Sun, 30 Nov 2008 22:02:30 -0500 Subject: PyQt4 para window$ References: <20081128173736.23BBB15F853C@devnull.aditel.org> Message-ID: Hola lista, espero que alguien aqui use pyqt pues tengo unas dudas. Mi sistema operativo es Debian GNU/Linux (Lenny) e hice una aplicacion con PyQt4 y quiero aprovechar el hecho de que sean multiplataforma ambos el interprete de python y el toolkit qt4 para hacerle una version para window$ ya que es el SO mas usado en mi universidad. (free software marketing) ;) Quiero hacerle un todo incluido. (interprete python y libs qt4) ¿Algun tutorial que sepan para migrar apps en pyqt para window$? Saludos, Manuel. ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pych3m4 en gmail.com Mon Dec 1 04:07:17 2008 From: pych3m4 en gmail.com (Chema Cortes) Date: Mon, 1 Dec 2008 04:07:17 +0100 Subject: No quiero recibir mas los mensajes de esta lista In-Reply-To: References: Message-ID: <2c9fb0dd0811301907r48d8b3e1jbf156c28717be9d1@mail.gmail.com> El día 28 de noviembre de 2008 15:05, Garito escribió: > De nuevo interpretas mis palabras a tu bola, cuando yo hablo de SO web no > estoy hablando de un sistema tonto como los terminales en los 80 estoy > hablando de un sistema totalmente local pero que en vez de tener que usar un > toolkit qt u otra libreria para GUI utilizarias tu editor HTML, CSS y/o > Javascript preferido, en vez de tener que compilar para cada entorno pones > tus ficheros en el directorio adecuado y listos Creo que eres tú el que no entiende. Un navegador con html+css y/o javascript no puede llamarse, por sí sólo, "Sistema Operativo", Con aplicaciones web resuelves el problema de la presentación, pero aún te quedarían otros problemas pendientes como el acceso a datos o la comunicación "síncrona" entre procesos (por poner sólo dos ejemplos). Toolkits como qt o wx facilitan --y mucho-- soluciones para estos temas sin perder compatibilidad entre plataformas; que no te hagan falta no significa que estos toolkits hayan entrado en "decadencia", tal como comentabas en tu anterior mensaje. De todos modos, mi respuesta iba más encaminada a hacer ver que esta lista es igual de buena que cualquier otro sitio para tratar estos temas. Sinceramente creo que ni te has molestado en revisar los archivos de la lista, porque de hacerlo te habrías encontrado temas como éstos: http://listas.aditel.org/archivos/python-es/2004-November/006106.html http://listas.aditel.org/archivos/python-es/2006-January/011210.html Si tenías una pregunta interesante, deberías haber probado a hacerla a ver qué pasaba. PD: estoy respondiendo desde gmail usando un navegador y sin problemas _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ematus en gmail.com Mon Dec 1 04:08:08 2008 From: ematus en gmail.com (Eduardo Matus) Date: Mon, 1 Dec 2008 00:08:08 -0300 Subject: PyQt4 para window$ In-Reply-To: References: <20081128173736.23BBB15F853C@devnull.aditel.org> Message-ID: <984ad6a0811301908h4cd010d7m950ccd687f34a55f@mail.gmail.com> http://diotavelli.net/PyQtWiki/Deploying_PyQt_Applications 2008/12/1 Manuel Enrique Gutierrez Perez > > Hola lista, espero que alguien aqui use pyqt pues tengo unas dudas. > > Mi sistema operativo es Debian GNU/Linux (Lenny) e hice una aplicacion con > PyQt4 y quiero aprovechar el hecho de que sean multiplataforma ambos el > interprete de python y el toolkit qt4 para hacerle una version para window$ > ya que es el SO mas usado en mi universidad. (free software marketing) ;) > > > Quiero hacerle un todo incluido. (interprete python y libs qt4) > > ¿Algun tutorial que sepan para migrar apps en pyqt para window$? > > > > Saludos, Manuel. > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- _______________________________________ Eduardo Andrés Matus Coquelet Ingeniero Civil Informatico y Telecomunicaciones - U. Diego Portales Santiago, Chile. _______________________________________ Celular: (07) 77113825 _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jpadillaa en gmail.com Mon Dec 1 17:06:26 2008 From: jpadillaa en gmail.com (Jesse) Date: Mon, 1 Dec 2008 11:06:26 -0500 Subject: Problema TelnetLib en python!!! Message-ID: Hola tengo una problema trabajando con la libreria telnetlib de python, estoy haciendo una aplicacion que requiere usarla, la idea del programa es q tiene una lista de dispositivos y les carga un archivo de configuracion via telnet dependiento de los deseos del usuario inicialmente lo hice con un router dlink y no hubo ningun problema ... la libreria telnetlib me trabajo al pelo pero cuando cambie de dispositivo se me presentan varios problemas por ejemplo deseo hacerle telnet a mi portatil para pruebar de forma local me sale este error File "", line 1, in File "/usr/lib/python2.5/telnetlib.py", line 208, in __init__ self.open(host, port) File "/usr/lib/python2.5/telnetlib.py", line 237, in open raise socket.error, msg socket.error: (111, 'Connection refused') bueno con otros dispositivos me sale otra cosa, digamos q cuando si se conecta me sale login: admin (Se da un enter y un espacio solo) y pues deberia quedar asi login:admin sino aveces me sale login: none Cosa que me hace creer q tambien pasa con el password entonces no se q pueda ser pq con el router dlink trabaja al pelo pero es con los otros no y pues se supone q el telnet es un estandar me estoy basando en este ejemplo import getpass import sys import telnetlib HOST = "localhost" user = raw_input("Enter your remote account: ") password = getpass.getpass() tn = telnetlib.Telnet(HOST) tn.read_until("login: ") tn.write(user + "\n") if password: tn.read_until("Password: ") tn.write(password + "\n") tn.write("ls\n") tn.write("exit\n") print tn.read_all() dependiendo del dispositivo ... cambio el host, el usuario y la contraseña, ademas de tn.read_until("login: "), "login: " por la peticion de entrada del dispositivo como tal e igualmente con el password. No se si alguien tenga alguna idea cual pueda ser el problema, de antemano agradezco cualquier colaboracion Saludos ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From willian.radicaled en gmail.com Mon Dec 1 17:16:14 2008 From: willian.radicaled en gmail.com (RadicalEd) Date: Mon, 1 Dec 2008 11:16:14 -0500 Subject: Problema TelnetLib en python!!! In-Reply-To: References: Message-ID: Puede ser que los routers tengan configurado alguna restricción, debes entrar al administrador de los dispositivos y desactivar la seguridad. 2008/12/1 Jesse > Hola > > tengo una problema trabajando con la libreria telnetlib de python, estoy > haciendo una aplicacion que requiere usarla, la idea del programa es q > tiene > una lista de dispositivos y les carga un archivo de configuracion via > telnet > dependiento de los deseos del usuario > inicialmente lo hice con un router dlink y no hubo ningun problema ... la > libreria telnetlib me trabajo al pelo > > pero cuando cambie de dispositivo se me presentan varios problemas por > ejemplo deseo hacerle telnet a mi portatil para pruebar de forma local > > me sale este error > File "", line 1, in > File "/usr/lib/python2.5/telnetlib.py", line 208, in __init__ > self.open(host, port) > File "/usr/lib/python2.5/telnetlib.py", line 237, in open > raise socket.error, msg > socket.error: (111, 'Connection refused') > > bueno con otros dispositivos me sale otra cosa, digamos q cuando si se > conecta me sale > login: > admin (Se da un enter y un espacio solo) > > y pues deberia quedar asi > login:admin > > sino aveces me sale > login: > none > > Cosa que me hace creer q tambien pasa con el password > > entonces no se q pueda ser pq con el router dlink trabaja al pelo pero es > con los otros no y pues se supone q el telnet es un estandar > > me estoy basando en este ejemplo > > import getpass > import sys > import telnetlib > > HOST = "localhost" > user = raw_input("Enter your remote account: ") > password = getpass.getpass() > > tn = telnetlib.Telnet(HOST) > > tn.read_until("login: ") > tn.write(user + "\n") > if password: > tn.read_until("Password: ") > tn.write(password + "\n") > > tn.write("ls\n") > tn.write("exit\n") > > print tn.read_all() > > dependiendo del dispositivo ... cambio el host, el usuario y la contraseña, > ademas de tn.read_until("login: "), "login: " por la peticion de entrada > del dispositivo como tal e igualmente con el password. > > No se si alguien tenga alguna idea cual pueda ser el problema, de antemano > agradezco cualquier colaboracion > > Saludos > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- The knowledge is the most dangerous weapon & SoloCodigo is the best programing webforum. http://foros.solocodigo.com http://radicalpython.blogspot.com _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From listas en soft-com.es Mon Dec 1 17:16:00 2008 From: listas en soft-com.es (=?ISO-8859-1?Q?Oswaldo_Hern=E1ndez?=) Date: Mon, 01 Dec 2008 17:16:00 +0100 Subject: Problema TelnetLib en python!!! In-Reply-To: References: Message-ID: <49340DC0.8040806@soft-com.es> Jesse escribió: > > me sale este error > File "", line 1, in > File "/usr/lib/python2.5/telnetlib.py", line 208, in __init__ > self.open(host, port) > File "/usr/lib/python2.5/telnetlib.py", line 237, in open > raise socket.error, msg > socket.error: (111, 'Connection refused') > Firewall ? -- ***************************************** Oswaldo Hernández oswaldo (@) soft-com (.) es ***************************************** PD: Antes de imprimir este mensaje, asegúrese de que es necesario. El medio ambiente está en nuestra mano. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jorquiro85 en hotmail.com Mon Dec 1 22:11:08 2008 From: jorquiro85 en hotmail.com (GEORGE) Date: Mon, 1 Dec 2008 16:11:08 -0500 Subject: ayuda urgente Message-ID: hola amigos quiero que me ayuden con algo. resulta que debo mostrarle un ejercicio a mi profesor, tiene q ser un ejercicio resuleto y que corra en python.... es algo sencillo,, otra cosa como hago para q corra para que compile, mejor dicho no se nada de este programa ayudenme es urgente _________________________________________________________________ Connect to the next generation of MSN Messenger  http://imagine-msn.com/messenger/launch80/default.aspx?locale=en-us&source=wlmailtagline_______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jcaballero.hep en gmail.com Mon Dec 1 22:16:24 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Mon, 1 Dec 2008 16:16:24 -0500 Subject: ayuda urgente In-Reply-To: References: Message-ID: ¿Qué es exactamente un "ejercicio resuleto"? En fin, es mi manera de expresar mi desconcierto por este tipo de mensajes. ¿Sabes lo que quieres hacer? ¿Sabes al menos lo que es python? ¿Has oído hablar de un concepto "algo novedoso" llamado documentación? 2008/12/1 GEORGE > > hola amigos quiero que me ayuden con algo. resulta que debo mostrarle un > ejercicio a mi profesor, tiene q ser un ejercicio resuleto y que corra en > python.... es algo sencillo,, otra cosa como hago para q corra para que > compile, mejor dicho no se nada de este programa ayudenme es urgente > _________________________________________________________________ > Connect to the next generation of MSN Messenger > > http://imagine-msn.com/messenger/launch80/default.aspx?locale=en-us&source=wlmailtagline_______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From abraham.zamudio en gmail.com Mon Dec 1 22:20:41 2008 From: abraham.zamudio en gmail.com (Abraham Zamudio) Date: Mon, 1 Dec 2008 16:20:41 -0500 Subject: ayuda urgente In-Reply-To: References: Message-ID: <594dda620812011320p95bc9e8gd11e7f5c291b9ed3@mail.gmail.com> jajaja buena XD , este tal vez le guste a tu profe *print "hola mundo"* On Mon, Dec 1, 2008 at 4:16 PM, Jose Caballero wrote: > ¿Qué es exactamente un "ejercicio resuleto"? > > En fin, es mi manera de expresar mi desconcierto por este tipo de mensajes. > ¿Sabes lo que quieres hacer? ¿Sabes al menos lo que es python? ¿Has oído > hablar de un concepto "algo novedoso" llamado documentación? > > > > > > > 2008/12/1 GEORGE > > > > > hola amigos quiero que me ayuden con algo. resulta que debo mostrarle un > > ejercicio a mi profesor, tiene q ser un ejercicio resuleto y que corra en > > python.... es algo sencillo,, otra cosa como hago para q corra para que > > compile, mejor dicho no se nada de este programa ayudenme es urgente > > _________________________________________________________________ > > Connect to the next generation of MSN Messenger > > > > > http://imagine-msn.com/messenger/launch80/default.aspx?locale=en-us&source=wlmailtagline_______________________________________________ > > Lista de correo Python-es > > http://listas.aditel.org/listinfo/python-es > > FAQ: http://listas.aditel.org/faqpyes > > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- Abraham Zamudio Ch. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From fvillarroel en yahoo.com Mon Dec 1 23:40:54 2008 From: fvillarroel en yahoo.com (FERNANDO VILLARROEL) Date: Mon, 1 Dec 2008 14:40:54 -0800 (PST) Subject: Aplicacion wxPython en Browser Message-ID: <341090.4056.qm@web34302.mail.mud.yahoo.com> Estimados, Un saludo cordial a todos, mi consulta es la siguiente. Existe algun desarrollo sobre wxPython, GTK u otro que permita correr ventanas desarrolladas con alguna de estas librerias (wx o GTK) al estilo de J2EE y que corran en un browser haciendo solicitudes a un servidor de datos remoto. Ya se que muchos me diran que la respuesta es desarrollar en Turbo Gears, Django, Pylons, etc.¨Pero quiero saber si existe algo que haga esto sobre wx idealmente. Tampoco estoy claro si la respuesta a mi consulta sea IronPython. Bueno atento a sus comentarios les saluda cordialmente, Fernando Villarroel Noriel. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From mlacunza en gmail.com Tue Dec 2 00:18:35 2008 From: mlacunza en gmail.com (Mario Lacunza) Date: Mon, 1 Dec 2008 18:18:35 -0500 Subject: Aplicacion wxPython en Browser In-Reply-To: <341090.4056.qm@web34302.mail.mud.yahoo.com> References: <341090.4056.qm@web34302.mail.mud.yahoo.com> Message-ID: <771741b20812011518t30cc3fbbk58b1d20f59b34ef6@mail.gmail.com> 2008/12/1 FERNANDO VILLARROEL > Estimados, > > Un saludo cordial a todos, mi consulta es la siguiente. > > Existe algun desarrollo sobre wxPython, GTK u otro que permita correr > ventanas desarrolladas con alguna de estas librerias (wx o GTK) al estilo de > J2EE y que corran en un browser haciendo solicitudes a un servidor de datos > remoto. > > Ya se que muchos me diran que la respuesta es desarrollar en Turbo Gears, > Django, Pylons, etc.¨Pero quiero saber si existe algo que haga esto sobre wx > idealmente. Tampoco estoy claro si la respuesta a mi consulta sea > IronPython. > > Bueno atento a sus comentarios les saluda cordialmente, > > Fernando Villarroel Noriel. > > No, IronPython es el porting para .Net.. -- Saludos / Best regards Mario Lacunza Software Architect - Webmaster Email: mlacunza [AT] gmail [DOT] com http://www.lacunza.info Lima - Peru _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pych3m4 en gmail.com Tue Dec 2 00:41:02 2008 From: pych3m4 en gmail.com (Chema Cortes) Date: Tue, 2 Dec 2008 00:41:02 +0100 Subject: Aplicacion wxPython en Browser In-Reply-To: <341090.4056.qm@web34302.mail.mud.yahoo.com> References: <341090.4056.qm@web34302.mail.mud.yahoo.com> Message-ID: <2c9fb0dd0812011541g200c75a7hc9c18e2789c997cb@mail.gmail.com> El 2008/12/1 FERNANDO VILLARROEL escribió: > Existe algun desarrollo sobre wxPython, GTK u otro que permita correr ventanas desarrolladas con alguna de estas librerias (wx o GTK) al estilo de J2EE y que corran en un browser haciendo solicitudes a un servidor de datos remoto. > > Ya se que muchos me diran que la respuesta es desarrollar en Turbo Gears, Django, Pylons, etc.¨Pero quiero saber si existe algo que haga esto sobre wx idealmente. Tampoco estoy claro si la respuesta a mi consulta sea IronPython. Más que desarrollo, es un tema de tecnologías. Lo más directo es usar VNC para controlar remotamente la aplicación que corre en otra máquina, desde un cliente vnc o directamente desde un navegador con el applet vnc. No sé si es lo que buscas, pero te puedo asegurar que es la forma más resultona de hacerlo. También podrías programar con jython+swing de modo similar a como se hace en java. Hace mucho había un proyecto llamado "anygui" que buscaba el poder desarrollar un interface común para varios toolkits gráficos y para web; pero me temo que el proyecto está muerto: http://anygui.sf.net Por contra, sí que es posible crear una aplicación web que pueda ser controlada desde un interface hecho en wx (si te interesa, mírate los "reactores" de twisted). _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From maengora en gmail.com Tue Dec 2 02:35:37 2008 From: maengora en gmail.com (=?ISO-8859-1?Q?Manuel_Enrique_Gonz=E1lez_Ram=EDrez?=) Date: Mon, 1 Dec 2008 20:35:37 -0500 Subject: ayuda urgente In-Reply-To: References: Message-ID: Y si el ejercicio que te enviaron no te sirve, pasate por mi blog http://maengora.blogspot.com estudia un poco las lecciones y descarga el código fuente de las mismas y listo, eso si, cuando te gradues nos mandas el pedacito de torta. 2008/12/1 GEORGE > > hola amigos quiero que me ayuden con algo. resulta que debo mostrarle un > ejercicio a mi profesor, tiene q ser un ejercicio resuleto y que corra en > python.... es algo sencillo,, otra cosa como hago para q corra para que > compile, mejor dicho no se nada de este programa ayudenme es urgente > _________________________________________________________________ > Connect to the next generation of MSN Messenger > > http://imagine-msn.com/messenger/launch80/default.aspx?locale=en-us&source=wlmailtagline_______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From fvillarroel en yahoo.com Tue Dec 2 17:05:57 2008 From: fvillarroel en yahoo.com (FERNANDO VILLARROEL) Date: Tue, 2 Dec 2008 08:05:57 -0800 (PST) Subject: Aplicacion wxPython en Browser In-Reply-To: <2c9fb0dd0812011541g200c75a7hc9c18e2789c997cb@mail.gmail.com> References: <2c9fb0dd0812011541g200c75a7hc9c18e2789c997cb@mail.gmail.com> Message-ID: <947214.82067.qm@web34307.mail.mud.yahoo.com> Hola. Gracias Chema ya estoy metiendole algo de mano a Jython + Swing La verdad es que en la U nuestro profesor siempre nos enseño el desarrollo de Clases desde Java y venian los inconvenientes conmigo por que yo uso Python, asi que por aprender Java no me esforce ademas que no me gustaba ser tan pesado y exigir tantos recursos de maquinas y ni hablar de la nomenclatura y el estandard rigido que mantienen para hablar de herencias, composicion, patrones de diseño, etc. Recuerdo que en alguna ocasion le mencione los antipatrones que bien me indicaste en algun post y eso me llevo varios dolores de cabezas, pero bueno. Ahora sobre los "reactores" de twisted me imagino que te refieres a lo siguiente: http://twistedmatrix.com/trac/ Finalmente respecto a Jython + swing es posible usar algun IDE al estilo Eclipse. Bueno agradecido por tus comentarios te saluda cordialmente, Fernando Villarroel N. --- On Mon, 12/1/08, Chema Cortes wrote: > From: Chema Cortes > Subject: Re: [Python-es] Aplicacion wxPython en Browser > To: "Lista de discusión sobre python en castellano" > Date: Monday, December 1, 2008, 7:41 PM > El 2008/12/1 FERNANDO VILLARROEL > escribió: > > > Existe algun desarrollo sobre wxPython, GTK u otro que > permita correr ventanas desarrolladas con alguna de estas > librerias (wx o GTK) al estilo de J2EE y que corran en un > browser haciendo solicitudes a un servidor de datos remoto. > > > > Ya se que muchos me diran que la respuesta es > desarrollar en Turbo Gears, Django, Pylons, etc.¨Pero > quiero saber si existe algo que haga esto sobre wx > idealmente. Tampoco estoy claro si la respuesta a mi > consulta sea IronPython. > > Más que desarrollo, es un tema de tecnologías. Lo más > directo es usar > VNC para controlar remotamente la aplicación que corre en > otra > máquina, desde un cliente vnc o directamente desde un > navegador con el > applet vnc. No sé si es lo que buscas, pero te puedo > asegurar que es > la forma más resultona de hacerlo. > > También podrías programar con jython+swing de modo > similar a como se > hace en java. > > > Hace mucho había un proyecto llamado "anygui" > que buscaba el poder > desarrollar un interface común para varios toolkits > gráficos y para > web; pero me temo que el proyecto está muerto: > > http://anygui.sf.net > > > Por contra, sí que es posible crear una aplicación web > que pueda ser > controlada desde un interface hecho en wx (si te interesa, > mírate los > "reactores" de twisted). > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From fvillarroel en yahoo.com Tue Dec 2 17:07:30 2008 From: fvillarroel en yahoo.com (FERNANDO VILLARROEL) Date: Tue, 2 Dec 2008 08:07:30 -0800 (PST) Subject: Aplicacion wxPython en Browser In-Reply-To: <2c9fb0dd0812011541g200c75a7hc9c18e2789c997cb@mail.gmail.com> References: <2c9fb0dd0812011541g200c75a7hc9c18e2789c997cb@mail.gmail.com> Message-ID: <687180.52798.qm@web34302.mail.mud.yahoo.com> Hola. Gracias Chema ya estoy metiendole algo de mano a Jython + Swing La verdad es que en la U nuestro profesor siempre nos enseño el desarrollo de Clases desde Java y venian los inconvenientes conmigo por que yo uso Python, asi que por aprender Java no me esforce ademas que no me gustaba ser tan pesado y exigir tantos recursos de maquinas y ni hablar de la nomenclatura y el estandard rigido que mantienen para hablar de herencias, composicion, patrones de diseño, etc. Recuerdo que en alguna ocasion le mencione los antipatrones que bien me indicaste en algun post y eso me llevo varios dolores de cabezas, pero bueno. Ahora sobre los "reactores" de twisted me imagino que te refieres a lo siguiente: http://twistedmatrix.com/trac/ Finalmente respecto a Jython + swing es posible usar algun IDE al estilo Eclipse. Bueno agradecido por tus comentarios te saluda cordialmente, Fernando Villarroel N. --- On Mon, 12/1/08, Chema Cortes wrote: > From: Chema Cortes > Subject: Re: [Python-es] Aplicacion wxPython en Browser > To: "Lista de discusión sobre python en castellano" > Date: Monday, December 1, 2008, 7:41 PM > El 2008/12/1 FERNANDO VILLARROEL > escribió: > > > Existe algun desarrollo sobre wxPython, GTK u otro que > permita correr ventanas desarrolladas con alguna de estas > librerias (wx o GTK) al estilo de J2EE y que corran en un > browser haciendo solicitudes a un servidor de datos remoto. > > > > Ya se que muchos me diran que la respuesta es > desarrollar en Turbo Gears, Django, Pylons, etc.¨Pero > quiero saber si existe algo que haga esto sobre wx > idealmente. Tampoco estoy claro si la respuesta a mi > consulta sea IronPython. > > Más que desarrollo, es un tema de tecnologías. Lo más > directo es usar > VNC para controlar remotamente la aplicación que corre en > otra > máquina, desde un cliente vnc o directamente desde un > navegador con el > applet vnc. No sé si es lo que buscas, pero te puedo > asegurar que es > la forma más resultona de hacerlo. > > También podrías programar con jython+swing de modo > similar a como se > hace en java. > > > Hace mucho había un proyecto llamado "anygui" > que buscaba el poder > desarrollar un interface común para varios toolkits > gráficos y para > web; pero me temo que el proyecto está muerto: > > http://anygui.sf.net > > > Por contra, sí que es posible crear una aplicación web > que pueda ser > controlada desde un interface hecho en wx (si te interesa, > mírate los > "reactores" de twisted). > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From lasizoillo en gmail.com Tue Dec 2 17:15:05 2008 From: lasizoillo en gmail.com (lasizoillo) Date: Tue, 2 Dec 2008 17:15:05 +0100 Subject: Aplicacion wxPython en Browser In-Reply-To: <947214.82067.qm@web34307.mail.mud.yahoo.com> References: <2c9fb0dd0812011541g200c75a7hc9c18e2789c997cb@mail.gmail.com> <947214.82067.qm@web34307.mail.mud.yahoo.com> Message-ID: <49414f570812020815t7ba86162if2831cc1378bee72@mail.gmail.com> El día 2 de diciembre de 2008 17:05, FERNANDO VILLARROEL escribió: > Hola. > > Gracias Chema ya estoy metiendole algo de mano a Jython + Swing > > La verdad es que en la U nuestro profesor siempre nos enseño el desarrollo de Clases desde Java y venian los inconvenientes conmigo por que yo uso Python, asi que por aprender Java no me esforce ademas que no me gustaba ser tan pesado y exigir tantos recursos de maquinas y ni hablar de la nomenclatura y el estandard rigido que mantienen para hablar de herencias, composicion, patrones de diseño, etc. Recuerdo que en alguna ocasion le mencione los antipatrones que bien me indicaste en algun post y eso me llevo varios dolores de cabezas, pero bueno. > > Ahora sobre los "reactores" de twisted me imagino que te refieres a lo siguiente: > > http://twistedmatrix.com/trac/ O más concretamente a: http://twistedmatrix.com/projects/core/documentation/howto/choosing-reactor.html > > Finalmente respecto a Jython + swing es posible usar algun IDE al estilo Eclipse. > > Bueno agradecido por tus comentarios te saluda cordialmente, > > Fernando Villarroel N. > > --- On Mon, 12/1/08, Chema Cortes wrote: > >> From: Chema Cortes >> Subject: Re: [Python-es] Aplicacion wxPython en Browser >> To: "Lista de discusión sobre python en castellano" >> Date: Monday, December 1, 2008, 7:41 PM >> El 2008/12/1 FERNANDO VILLARROEL >> escribió: >> >> > Existe algun desarrollo sobre wxPython, GTK u otro que >> permita correr ventanas desarrolladas con alguna de estas >> librerias (wx o GTK) al estilo de J2EE y que corran en un >> browser haciendo solicitudes a un servidor de datos remoto. >> > >> > Ya se que muchos me diran que la respuesta es >> desarrollar en Turbo Gears, Django, Pylons, etc.¨Pero >> quiero saber si existe algo que haga esto sobre wx >> idealmente. Tampoco estoy claro si la respuesta a mi >> consulta sea IronPython. >> >> Más que desarrollo, es un tema de tecnologías. Lo más >> directo es usar >> VNC para controlar remotamente la aplicación que corre en >> otra >> máquina, desde un cliente vnc o directamente desde un >> navegador con el >> applet vnc. No sé si es lo que buscas, pero te puedo >> asegurar que es >> la forma más resultona de hacerlo. >> >> También podrías programar con jython+swing de modo >> similar a como se >> hace en java. >> >> >> Hace mucho había un proyecto llamado "anygui" >> que buscaba el poder >> desarrollar un interface común para varios toolkits >> gráficos y para >> web; pero me temo que el proyecto está muerto: >> >> http://anygui.sf.net >> >> >> Por contra, sí que es posible crear una aplicación web >> que pueda ser >> controlada desde un interface hecho en wx (si te interesa, >> mírate los >> "reactores" de twisted). >> _______________________________________________ >> Lista de correo Python-es >> http://listas.aditel.org/listinfo/python-es >> FAQ: http://listas.aditel.org/faqpyes > > > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From carles en pina.cat Tue Dec 2 19:52:14 2008 From: carles en pina.cat (Carles Pina i Estany) Date: Tue, 2 Dec 2008 19:52:14 +0100 Subject: pygame y reproducir MP3 Message-ID: <20081202185214.GA9546@pina.cat> Hola, Quiero hacer unas pruebas con pygame y la primera prueba que quería hacer era reproducir un mp3: ---------- #!/usr/bin/python import pygame pygame.mixer.init() pygame.mixer.music.load("Qt4Dance.mp3") pygame.mixer.music.play(-1) ---------- En la primera línea (pygame.mixer.init) me imprime per consola: ---------- there is no soundcard ---------- Si la cambio por: pygame.init() Entonces lo mismo. Programas que usan pygame tienen música, y no veo que hagan nada diferente (pero seguro que me salto algo). Alguien ve algun fallo habitual? No debería ser muy difícil, he estado buscando un rato y no veo nada diferente en algunos ejemplos... Gracias y saludos, -- Carles Pina i Estany GPG id: 0x17756391 http://pinux.info _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From eduardo.ulfe en gmail.com Tue Dec 2 20:20:11 2008 From: eduardo.ulfe en gmail.com (Eduardo) Date: Tue, 2 Dec 2008 16:20:11 -0300 Subject: pygame y reproducir MP3 In-Reply-To: <20081202185214.GA9546@pina.cat> References: <20081202185214.GA9546@pina.cat> Message-ID: <29e33c430812021120o372d13b5w5493030385de0d13@mail.gmail.com> Hasta donde se, pygame soporta ogg y wav pero no mp3 2008/12/2 Carles Pina i Estany > > Hola, > > Quiero hacer unas pruebas con pygame y la primera prueba que quería > hacer era reproducir un mp3: > ---------- > #!/usr/bin/python > > import pygame > > pygame.mixer.init() > pygame.mixer.music.load("Qt4Dance.mp3") > pygame.mixer.music.play(-1) > ---------- > > En la primera línea (pygame.mixer.init) me imprime per consola: > ---------- > there is no soundcard > ---------- > > Si la cambio por: > pygame.init() > > Entonces lo mismo. > > Programas que usan pygame tienen música, y no veo que hagan nada > diferente (pero seguro que me salto algo). > > Alguien ve algun fallo habitual? No debería ser muy difícil, he estado > buscando un rato y no veo nada diferente en algunos ejemplos... > > Gracias y saludos, > > -- > Carles Pina i Estany GPG id: 0x17756391 > http://pinux.info > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- No hay un mundo feliz, pero igual lo iremos a buscar. Si mi copa está vacía, alguien la va a llenar. Cúanta Cerveza ! - A77aque _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From thernand en inf.utfsm.cl Wed Dec 3 01:40:58 2008 From: thernand en inf.utfsm.cl (Tomas Hernandez) Date: Tue, 02 Dec 2008 16:40:58 -0800 Subject: Comunicacion entre ventanas Message-ID: <4935D59A.4080507@inf.utfsm.cl> Hola lista, Hace un tiempo envié un correo sobre lo mismo y nadie puro darme una solución ='(. Esta vez, insisto, por si alguien se motiva a ayudarme =D y explicarme. Tengo 2 archivos .glade y 2 .py: wnEdit.glade (txtValues, btnChange) wnMain.glade (lblValues, btnChange) **************************************************************************************** change.py: **************************************************************************************** 1 #! /usr/bin/env python 2 3 import pygtk 4 pygtk.require("2.0") 5 import gtk 6 from gtk import glade 7 from GladeConnect import GladeConnect 8 9 class change(GladeConnect): 10 def __init__(self): 11 GladeConnect.__init__(self, "glade/wnChange.glade") 12 13 def on_btnChange_clicked(self, btn=None): 14 self.wnChange.hide() **************************************************************************************** main.py **************************************************************************************** 1 #!/usr/bin/env python 2 3 import pygtk 4 pygtk.require("2.0") 5 import gtk 6 from gtk import glade 7 from GladeConnect import GladeConnect 8 from change import * 9 10 class main(GladeConnect): 11 def __init__(self): 12 GladeConnect.__init__(self, "glade/wnMain.glade") 13 14 def on_btnChange_clicked(self, btn=None): 15 popup = change() 16 popup.wnChange.show() 17 18 def start(self): 19 gtk.main() 20 return 0 21 22 if __name__=="__main__": 23 app = main() 24 app.start() **************************************************************************************** Lo que quiero hacer es: - Abrir la primera ventana - Hacer click en el boton de esa ventana para abrir una nueva - En esa nueva escribir algo - Hacer click en el boton de esa nueva ventana y refrescar automaticamente el label de la primera. ¿cómo puedo hacerlo?. Hasta ahora la dinamica entre ventanas funciona...! _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ematus en gmail.com Tue Dec 2 20:54:13 2008 From: ematus en gmail.com (Eduardo Matus) Date: Tue, 2 Dec 2008 16:54:13 -0300 Subject: Comunicacion entre ventanas In-Reply-To: <4935D59A.4080507@inf.utfsm.cl> References: <4935D59A.4080507@inf.utfsm.cl> Message-ID: <984ad6a0812021154w15df6df8v4ea13c1a2c721537@mail.gmail.com> Hola, no estoy seguro, pero si tienes esto def on_btnChange_clicked(self, btn=None): popup = change() popup.wnChange.show() popup, es una instancia de change, por lo tanto puedes acceder a las variables de esa clase despues de cerrarla On Tue, Dec 2, 2008 at 9:40 PM, Tomas Hernandez wrote: > Hola lista, > > Hace un tiempo envié un correo sobre lo mismo y nadie puro darme una > solución ='(. > Esta vez, insisto, por si alguien se motiva a ayudarme =D y explicarme. > > Tengo 2 archivos .glade y 2 .py: > wnEdit.glade (txtValues, btnChange) > wnMain.glade (lblValues, btnChange) > > > **************************************************************************************** > change.py: > > **************************************************************************************** > 1 #! /usr/bin/env python > 2 > 3 import pygtk > 4 pygtk.require("2.0") > 5 import gtk > 6 from gtk import glade > 7 from GladeConnect import GladeConnect > 8 > 9 class change(GladeConnect): > 10 def __init__(self): > 11 GladeConnect.__init__(self, "glade/wnChange.glade") > 12 > 13 def on_btnChange_clicked(self, btn=None): > 14 self.wnChange.hide() > > > **************************************************************************************** > main.py > > **************************************************************************************** > 1 #!/usr/bin/env python > 2 > 3 import pygtk > 4 pygtk.require("2.0") > 5 import gtk > 6 from gtk import glade > 7 from GladeConnect import GladeConnect > 8 from change import * > 9 > 10 class main(GladeConnect): > 11 def __init__(self): > 12 GladeConnect.__init__(self, "glade/wnMain.glade") > 13 > 14 def on_btnChange_clicked(self, btn=None): > 15 popup = change() > 16 popup.wnChange.show() > 17 > 18 def start(self): > 19 gtk.main() > 20 return 0 > 21 > 22 if __name__=="__main__": > 23 app = main() > 24 app.start() > > **************************************************************************************** > > Lo que quiero hacer es: > - Abrir la primera ventana > - Hacer click en el boton de esa ventana para abrir una nueva > - En esa nueva escribir algo > - Hacer click en el boton de esa nueva ventana y refrescar automaticamente > el label > de la primera. > > > ¿cómo puedo hacerlo?. Hasta ahora la dinamica entre ventanas funciona...! > _______________________________________________ > Lista de correo Python-es http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- _______________________________________ Eduardo Andrés Matus Coquelet Ingeniero Civil Informatico y Telecomunicaciones - U. Diego Portales Santiago, Chile. _______________________________________ Celular: (07) 77113825 _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pyarnau en gmail.com Tue Dec 2 21:18:11 2008 From: pyarnau en gmail.com (Arnau Sanchez) Date: Tue, 02 Dec 2008 21:18:11 +0100 Subject: pygame y reproducir MP3 In-Reply-To: <29e33c430812021120o372d13b5w5493030385de0d13@mail.gmail.com> References: <20081202185214.GA9546@pina.cat> <29e33c430812021120o372d13b5w5493030385de0d13@mail.gmail.com> Message-ID: <49359803.3060803@gmail.com> Eduardo escribió: > Hasta donde se, pygame soporta ogg y wav pero no mp3 No, no, pygame sí soporta mp3, el problema que parece tener Carles es que no le detecta la tarjeta de sonido. Pygame en Linux usa dispositivos OSS, es decir, que debes comprobar que /dev/dsp existe. Como lo normal en kernels modernos es usar ALSA (ver tarjetas instaladas con cat /proc/asound/cards), puedes probar con una de estas dos opciones: - aoss (paquete alsa-oss): aoss programa. - modprobe snd-pcm-oss arnau > > 2008/12/2 Carles Pina i Estany > >> Hola, >> >> Quiero hacer unas pruebas con pygame y la primera prueba que quería >> hacer era reproducir un mp3: >> ---------- >> #!/usr/bin/python >> >> import pygame >> >> pygame.mixer.init() >> pygame.mixer.music.load("Qt4Dance.mp3") >> pygame.mixer.music.play(-1) >> ---------- >> >> En la primera línea (pygame.mixer.init) me imprime per consola: >> ---------- >> there is no soundcard >> ---------- >> >> Si la cambio por: >> pygame.init() >> >> Entonces lo mismo. >> >> Programas que usan pygame tienen música, y no veo que hagan nada >> diferente (pero seguro que me salto algo). >> >> Alguien ve algun fallo habitual? No debería ser muy difícil, he estado >> buscando un rato y no veo nada diferente en algunos ejemplos... >> >> Gracias y saludos, >> >> -- >> Carles Pina i Estany GPG id: 0x17756391 >> http://pinux.info >> _______________________________________________ >> Lista de correo Python-es >> http://listas.aditel.org/listinfo/python-es >> FAQ: http://listas.aditel.org/faqpyes >> > > > -- Web: http://www.arnau-sanchez.com _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From thernand en inf.utfsm.cl Wed Dec 3 03:00:55 2008 From: thernand en inf.utfsm.cl (Tomas Hernandez) Date: Tue, 02 Dec 2008 18:00:55 -0800 Subject: Comunicacion entre ventanas In-Reply-To: <984ad6a0812021154w15df6df8v4ea13c1a2c721537@mail.gmail.com> References: <4935D59A.4080507@inf.utfsm.cl> <984ad6a0812021154w15df6df8v4ea13c1a2c721537@mail.gmail.com> Message-ID: <4935E857.9010305@inf.utfsm.cl> Gracias por responder Eduardo, Claro, puedo acceder a las variables, el problema es que para ello se me ocurre hacer un boton "refresh" en la ventana principal para acceder a las variables y cambiar el contenido del label, pero lo que yo quiero, es que al apretar el boton de la segunda ventana cambie automaticamente en la primera. Por ahora logré pasar valores de la principal a la otra, pero en sentido contrario no puedo hacerlo automatico. Saludos. Eduardo Matus wrote: > Hola, no estoy seguro, pero si tienes esto > def on_btnChange_clicked(self, btn=None): > popup = change() > popup.wnChange.show() > > popup, es una instancia de change, por lo tanto puedes acceder a las > variables de esa clase despues de cerrarla > > > On Tue, Dec 2, 2008 at 9:40 PM, Tomas Hernandez wrote: > > >> Hola lista, >> >> Hace un tiempo envié un correo sobre lo mismo y nadie puro darme una >> solución ='(. >> Esta vez, insisto, por si alguien se motiva a ayudarme =D y explicarme. >> >> Tengo 2 archivos .glade y 2 .py: >> wnEdit.glade (txtValues, btnChange) >> wnMain.glade (lblValues, btnChange) >> >> >> **************************************************************************************** >> change.py: >> >> **************************************************************************************** >> 1 #! /usr/bin/env python >> 2 >> 3 import pygtk >> 4 pygtk.require("2.0") >> 5 import gtk >> 6 from gtk import glade >> 7 from GladeConnect import GladeConnect >> 8 >> 9 class change(GladeConnect): >> 10 def __init__(self): >> 11 GladeConnect.__init__(self, "glade/wnChange.glade") >> 12 >> 13 def on_btnChange_clicked(self, btn=None): >> 14 self.wnChange.hide() >> >> >> **************************************************************************************** >> main.py >> >> **************************************************************************************** >> 1 #!/usr/bin/env python >> 2 >> 3 import pygtk >> 4 pygtk.require("2.0") >> 5 import gtk >> 6 from gtk import glade >> 7 from GladeConnect import GladeConnect >> 8 from change import * >> 9 >> 10 class main(GladeConnect): >> 11 def __init__(self): >> 12 GladeConnect.__init__(self, "glade/wnMain.glade") >> 13 >> 14 def on_btnChange_clicked(self, btn=None): >> 15 popup = change() >> 16 popup.wnChange.show() >> 17 >> 18 def start(self): >> 19 gtk.main() >> 20 return 0 >> 21 >> 22 if __name__=="__main__": >> 23 app = main() >> 24 app.start() >> >> **************************************************************************************** >> >> Lo que quiero hacer es: >> - Abrir la primera ventana >> - Hacer click en el boton de esa ventana para abrir una nueva >> - En esa nueva escribir algo >> - Hacer click en el boton de esa nueva ventana y refrescar automaticamente >> el label >> de la primera. >> >> >> ¿cómo puedo hacerlo?. Hasta ahora la dinamica entre ventanas funciona...! >> _______________________________________________ >> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es >> FAQ: http://listas.aditel.org/faqpyes >> >> > > > > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ematus en gmail.com Tue Dec 2 22:02:04 2008 From: ematus en gmail.com (Eduardo Matus) Date: Tue, 2 Dec 2008 18:02:04 -0300 Subject: Comunicacion entre ventanas In-Reply-To: <4935E857.9010305@inf.utfsm.cl> References: <4935D59A.4080507@inf.utfsm.cl> <984ad6a0812021154w15df6df8v4ea13c1a2c721537@mail.gmail.com> <4935E857.9010305@inf.utfsm.cl> Message-ID: <984ad6a0812021302i3525c589r20cad7f7f0173852@mail.gmail.com> tendrias que pasar la instancia de la primer ventana popup = change(self) On Tue, Dec 2, 2008 at 11:00 PM, Tomas Hernandez wrote: > Gracias por responder Eduardo, > > Claro, puedo acceder a las variables, el problema es que para ello > se me ocurre hacer un boton "refresh" en la ventana principal > para acceder a las variables y cambiar el contenido del label, pero > lo que yo quiero, es que al apretar el boton de la segunda ventana > cambie automaticamente en la primera. > Por ahora logré pasar valores de la principal a la otra, pero en sentido > contrario no puedo hacerlo automatico. > > Saludos. > > > Eduardo Matus wrote: > >> Hola, no estoy seguro, pero si tienes esto >> def on_btnChange_clicked(self, btn=None): >> popup = change() >> popup.wnChange.show() >> >> popup, es una instancia de change, por lo tanto puedes acceder a las >> variables de esa clase despues de cerrarla >> >> >> On Tue, Dec 2, 2008 at 9:40 PM, Tomas Hernandez > >wrote: >> >> >> >>> Hola lista, >>> >>> Hace un tiempo envié un correo sobre lo mismo y nadie puro darme una >>> solución ='(. >>> Esta vez, insisto, por si alguien se motiva a ayudarme =D y explicarme. >>> >>> Tengo 2 archivos .glade y 2 .py: >>> wnEdit.glade (txtValues, btnChange) >>> wnMain.glade (lblValues, btnChange) >>> >>> >>> >>> **************************************************************************************** >>> change.py: >>> >>> >>> **************************************************************************************** >>> 1 #! /usr/bin/env python >>> 2 >>> 3 import pygtk >>> 4 pygtk.require("2.0") >>> 5 import gtk >>> 6 from gtk import glade >>> 7 from GladeConnect import GladeConnect >>> 8 >>> 9 class change(GladeConnect): >>> 10 def __init__(self): >>> 11 GladeConnect.__init__(self, "glade/wnChange.glade") >>> 12 >>> 13 def on_btnChange_clicked(self, btn=None): >>> 14 self.wnChange.hide() >>> >>> >>> >>> **************************************************************************************** >>> main.py >>> >>> >>> **************************************************************************************** >>> 1 #!/usr/bin/env python >>> 2 >>> 3 import pygtk >>> 4 pygtk.require("2.0") >>> 5 import gtk >>> 6 from gtk import glade >>> 7 from GladeConnect import GladeConnect >>> 8 from change import * >>> 9 >>> 10 class main(GladeConnect): >>> 11 def __init__(self): >>> 12 GladeConnect.__init__(self, "glade/wnMain.glade") >>> 13 >>> 14 def on_btnChange_clicked(self, btn=None): >>> 15 popup = change() >>> 16 popup.wnChange.show() >>> 17 >>> 18 def start(self): >>> 19 gtk.main() >>> 20 return 0 >>> 21 >>> 22 if __name__=="__main__": >>> 23 app = main() >>> 24 app.start() >>> >>> >>> **************************************************************************************** >>> >>> Lo que quiero hacer es: >>> - Abrir la primera ventana >>> - Hacer click en el boton de esa ventana para abrir una nueva >>> - En esa nueva escribir algo >>> - Hacer click en el boton de esa nueva ventana y refrescar >>> automaticamente >>> el label >>> de la primera. >>> >>> >>> ¿cómo puedo hacerlo?. Hasta ahora la dinamica entre ventanas funciona...! >>> _______________________________________________ >>> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es >>> FAQ: http://listas.aditel.org/faqpyes >>> >>> >>> >> >> >> >> >> > > _______________________________________________ > Lista de correo Python-es http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- _______________________________________ Eduardo Andrés Matus Coquelet Ingeniero Civil Informatico y Telecomunicaciones - U. Diego Portales Santiago, Chile. _______________________________________ Celular: (07) 77113825 _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From thernand en inf.utfsm.cl Wed Dec 3 03:26:21 2008 From: thernand en inf.utfsm.cl (Tomas Hernandez) Date: Tue, 02 Dec 2008 18:26:21 -0800 Subject: Comunicacion entre ventanas In-Reply-To: <984ad6a0812021302i3525c589r20cad7f7f0173852@mail.gmail.com> References: <4935D59A.4080507@inf.utfsm.cl> <984ad6a0812021154w15df6df8v4ea13c1a2c721537@mail.gmail.com> <4935E857.9010305@inf.utfsm.cl> <984ad6a0812021302i3525c589r20cad7f7f0173852@mail.gmail.com> Message-ID: <4935EE4D.20401@inf.utfsm.cl> Qué consigo con eso? :O (perdón pero soy novato), me imagino que podría ocupar los metodos de la primera ventana?. Me quedó así: class change(GladeConnect): def __init__(self, mainWn): y en la primera: def on_btnChange_clicked(self, btn=None): popup = change(self) Intenté usar los atributos en la segunda ventana asi: mainWn.lblValues.set_text(txtValues.get_text()) pero no funcionó. Me podrías explicarías por favor?. Eduardo Matus wrote: > tendrias que pasar la instancia de la primer ventana > popup = change(self) > > > > On Tue, Dec 2, 2008 at 11:00 PM, Tomas Hernandez wrote: > > >> Gracias por responder Eduardo, >> >> Claro, puedo acceder a las variables, el problema es que para ello >> se me ocurre hacer un boton "refresh" en la ventana principal >> para acceder a las variables y cambiar el contenido del label, pero >> lo que yo quiero, es que al apretar el boton de la segunda ventana >> cambie automaticamente en la primera. >> Por ahora logré pasar valores de la principal a la otra, pero en sentido >> contrario no puedo hacerlo automatico. >> >> Saludos. >> >> >> Eduardo Matus wrote: >> >> >>> Hola, no estoy seguro, pero si tienes esto >>> def on_btnChange_clicked(self, btn=None): >>> popup = change() >>> popup.wnChange.show() >>> >>> popup, es una instancia de change, por lo tanto puedes acceder a las >>> variables de esa clase despues de cerrarla >>> >>> >>> On Tue, Dec 2, 2008 at 9:40 PM, Tomas Hernandez >> >>>> wrote: >>>> >>> >>> >>>> Hola lista, >>>> >>>> Hace un tiempo envié un correo sobre lo mismo y nadie puro darme una >>>> solución ='(. >>>> Esta vez, insisto, por si alguien se motiva a ayudarme =D y explicarme. >>>> >>>> Tengo 2 archivos .glade y 2 .py: >>>> wnEdit.glade (txtValues, btnChange) >>>> wnMain.glade (lblValues, btnChange) >>>> >>>> >>>> >>>> **************************************************************************************** >>>> change.py: >>>> >>>> >>>> **************************************************************************************** >>>> 1 #! /usr/bin/env python >>>> 2 >>>> 3 import pygtk >>>> 4 pygtk.require("2.0") >>>> 5 import gtk >>>> 6 from gtk import glade >>>> 7 from GladeConnect import GladeConnect >>>> 8 >>>> 9 class change(GladeConnect): >>>> 10 def __init__(self): >>>> 11 GladeConnect.__init__(self, "glade/wnChange.glade") >>>> 12 >>>> 13 def on_btnChange_clicked(self, btn=None): >>>> 14 self.wnChange.hide() >>>> >>>> >>>> >>>> **************************************************************************************** >>>> main.py >>>> >>>> >>>> **************************************************************************************** >>>> 1 #!/usr/bin/env python >>>> 2 >>>> 3 import pygtk >>>> 4 pygtk.require("2.0") >>>> 5 import gtk >>>> 6 from gtk import glade >>>> 7 from GladeConnect import GladeConnect >>>> 8 from change import * >>>> 9 >>>> 10 class main(GladeConnect): >>>> 11 def __init__(self): >>>> 12 GladeConnect.__init__(self, "glade/wnMain.glade") >>>> 13 >>>> 14 def on_btnChange_clicked(self, btn=None): >>>> 15 popup = change() >>>> 16 popup.wnChange.show() >>>> 17 >>>> 18 def start(self): >>>> 19 gtk.main() >>>> 20 return 0 >>>> 21 >>>> 22 if __name__=="__main__": >>>> 23 app = main() >>>> 24 app.start() >>>> >>>> >>>> **************************************************************************************** >>>> >>>> Lo que quiero hacer es: >>>> - Abrir la primera ventana >>>> - Hacer click en el boton de esa ventana para abrir una nueva >>>> - En esa nueva escribir algo >>>> - Hacer click en el boton de esa nueva ventana y refrescar >>>> automaticamente >>>> el label >>>> de la primera. >>>> >>>> >>>> ¿cómo puedo hacerlo?. Hasta ahora la dinamica entre ventanas funciona...! >>>> _______________________________________________ >>>> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es >>>> FAQ: http://listas.aditel.org/faqpyes >>>> >>>> >>>> >>>> >>> >>> >>> >>> >> _______________________________________________ >> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es >> FAQ: http://listas.aditel.org/faqpyes >> >> > > > > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ematus en gmail.com Tue Dec 2 22:27:36 2008 From: ematus en gmail.com (Eduardo Matus) Date: Tue, 2 Dec 2008 18:27:36 -0300 Subject: Comunicacion entre ventanas In-Reply-To: <4935EE4D.20401@inf.utfsm.cl> References: <4935D59A.4080507@inf.utfsm.cl> <984ad6a0812021154w15df6df8v4ea13c1a2c721537@mail.gmail.com> <4935E857.9010305@inf.utfsm.cl> <984ad6a0812021302i3525c589r20cad7f7f0173852@mail.gmail.com> <4935EE4D.20401@inf.utfsm.cl> Message-ID: <984ad6a0812021327q2ca80ffege09be517b59c1a7d@mail.gmail.com> pero que te salio.. algun error?? mainWn la dejaste como variable de clase??? self.mainWn.lblValues.set_text(.... 2008/12/2 Tomas Hernandez > Qué consigo con eso? :O (perdón pero soy novato), me imagino que > podría ocupar los metodos de la primera ventana?. > > Me quedó así: > class change(GladeConnect): > def __init__(self, mainWn): > y en la primera: > def on_btnChange_clicked(self, btn=None): > popup = change(self) > > Intenté usar los atributos en la segunda ventana asi: > mainWn.lblValues.set_text(txtValues.get_text()) > > pero no funcionó. Me podrías explicarías por favor?. > > > > Eduardo Matus wrote: > >> tendrias que pasar la instancia de la primer ventana >> popup = change(self) >> >> >> >> On Tue, Dec 2, 2008 at 11:00 PM, Tomas Hernandez > >wrote: >> >> >> >>> Gracias por responder Eduardo, >>> >>> Claro, puedo acceder a las variables, el problema es que para ello >>> se me ocurre hacer un boton "refresh" en la ventana principal >>> para acceder a las variables y cambiar el contenido del label, pero >>> lo que yo quiero, es que al apretar el boton de la segunda ventana >>> cambie automaticamente en la primera. >>> Por ahora logré pasar valores de la principal a la otra, pero en sentido >>> contrario no puedo hacerlo automatico. >>> >>> Saludos. >>> >>> >>> Eduardo Matus wrote: >>> >>> >>> >>>> Hola, no estoy seguro, pero si tienes esto >>>> def on_btnChange_clicked(self, btn=None): >>>> popup = change() >>>> popup.wnChange.show() >>>> >>>> popup, es una instancia de change, por lo tanto puedes acceder a las >>>> variables de esa clase despues de cerrarla >>>> >>>> >>>> On Tue, Dec 2, 2008 at 9:40 PM, Tomas Hernandez >>> >>>> >>>>> wrote: >>>>> >>>>> >>>> >>>> >>>> >>>>> Hola lista, >>>>> >>>>> Hace un tiempo envié un correo sobre lo mismo y nadie puro darme una >>>>> solución ='(. >>>>> Esta vez, insisto, por si alguien se motiva a ayudarme =D y explicarme. >>>>> >>>>> Tengo 2 archivos .glade y 2 .py: >>>>> wnEdit.glade (txtValues, btnChange) >>>>> wnMain.glade (lblValues, btnChange) >>>>> >>>>> >>>>> >>>>> >>>>> **************************************************************************************** >>>>> change.py: >>>>> >>>>> >>>>> >>>>> **************************************************************************************** >>>>> 1 #! /usr/bin/env python >>>>> 2 >>>>> 3 import pygtk >>>>> 4 pygtk.require("2.0") >>>>> 5 import gtk >>>>> 6 from gtk import glade >>>>> 7 from GladeConnect import GladeConnect >>>>> 8 >>>>> 9 class change(GladeConnect): >>>>> 10 def __init__(self): >>>>> 11 GladeConnect.__init__(self, "glade/wnChange.glade") >>>>> 12 >>>>> 13 def on_btnChange_clicked(self, btn=None): >>>>> 14 self.wnChange.hide() >>>>> >>>>> >>>>> >>>>> >>>>> **************************************************************************************** >>>>> main.py >>>>> >>>>> >>>>> >>>>> **************************************************************************************** >>>>> 1 #!/usr/bin/env python >>>>> 2 >>>>> 3 import pygtk >>>>> 4 pygtk.require("2.0") >>>>> 5 import gtk >>>>> 6 from gtk import glade >>>>> 7 from GladeConnect import GladeConnect >>>>> 8 from change import * >>>>> 9 >>>>> 10 class main(GladeConnect): >>>>> 11 def __init__(self): >>>>> 12 GladeConnect.__init__(self, "glade/wnMain.glade") >>>>> 13 >>>>> 14 def on_btnChange_clicked(self, btn=None): >>>>> 15 popup = change() >>>>> 16 popup.wnChange.show() >>>>> 17 >>>>> 18 def start(self): >>>>> 19 gtk.main() >>>>> 20 return 0 >>>>> 21 >>>>> 22 if __name__=="__main__": >>>>> 23 app = main() >>>>> 24 app.start() >>>>> >>>>> >>>>> >>>>> **************************************************************************************** >>>>> >>>>> Lo que quiero hacer es: >>>>> - Abrir la primera ventana >>>>> - Hacer click en el boton de esa ventana para abrir una nueva >>>>> - En esa nueva escribir algo >>>>> - Hacer click en el boton de esa nueva ventana y refrescar >>>>> automaticamente >>>>> el label >>>>> de la primera. >>>>> >>>>> >>>>> ¿cómo puedo hacerlo?. Hasta ahora la dinamica entre ventanas >>>>> funciona...! >>>>> _______________________________________________ >>>>> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es >>>>> FAQ: http://listas.aditel.org/faqpyes >>>>> >>>>> >>>>> >>>>> >>>>> >>>> >>>> >>>> >>>> >>>> >>> _______________________________________________ >>> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es >>> FAQ: http://listas.aditel.org/faqpyes >>> >>> >>> >> >> >> >> >> > > _______________________________________________ > Lista de correo Python-es http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- _______________________________________ Eduardo Andrés Matus Coquelet Ingeniero Civil Informatico y Telecomunicaciones - U. Diego Portales Santiago, Chile. _______________________________________ Celular: (07) 77113825 _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From thernand en inf.utfsm.cl Wed Dec 3 03:44:23 2008 From: thernand en inf.utfsm.cl (Tomas Hernandez) Date: Tue, 02 Dec 2008 18:44:23 -0800 Subject: Comunicacion entre ventanas In-Reply-To: <984ad6a0812021327q2ca80ffege09be517b59c1a7d@mail.gmail.com> References: <4935D59A.4080507@inf.utfsm.cl> <984ad6a0812021154w15df6df8v4ea13c1a2c721537@mail.gmail.com> <4935E857.9010305@inf.utfsm.cl> <984ad6a0812021302i3525c589r20cad7f7f0173852@mail.gmail.com> <4935EE4D.20401@inf.utfsm.cl> <984ad6a0812021327q2ca80ffege09be517b59c1a7d@mail.gmail.com> Message-ID: <4935F287.2060508@inf.utfsm.cl> Me salió esto: *********************************************************************** File "/home/patton/workspace/signals/change.py", line 16, in on_btnChange_clicked self.mainWn.lblValue.set_text(self._texto) File "/home/patton/workspace/signals/GladeConnect.py", line 70, in __getattr__ raise AttributeError, name AttributeError: mainWn *********************************************************************** Los archivos están asi: **************************************************************************************** change.py: class change(GladeConnect): _texto = "" def __init__(self, mainWn): GladeConnect.__init__(self, "glade/wnChange.glade") def on_btnChange_clicked(self, btn=None): OJO ---> self.mainWn.lblValue.set_text(self._texto) self.wnChange.hide() def setText(self, texto): self._texto = texto self.txtChange.set_text(self._texto) def getText(self): print self.txtChange.get_text() return self._texto **************************************************************************************** main.py class main(GladeConnect): _value = "" def __init__(self): GladeConnect.__init__(self, "glade/wnMain.glade") def on_btnChange_clicked(self, btn=None): popup = change(self) popup.wnChange.show() popup.setText(self.lblValue.get_text()) def start(self): gtk.main() return 0 if __name__=="__main__": app = main() app.start() **************************************************************************************** Me pasó que importé desde la change.py a todo lo de main (from main import *) pero me crea una nueva ventana debido al if __name__=="__main__" con la cual hago siempre un gtk.main. Eduardo Matus wrote: > pero que te salio.. algun error?? > mainWn la dejaste como variable de clase??? > self.mainWn.lblValues.set_text(.... > > 2008/12/2 Tomas Hernandez > > >> Qué consigo con eso? :O (perdón pero soy novato), me imagino que >> podría ocupar los metodos de la primera ventana?. >> >> Me quedó así: >> class change(GladeConnect): >> def __init__(self, mainWn): >> y en la primera: >> def on_btnChange_clicked(self, btn=None): >> popup = change(self) >> >> Intenté usar los atributos en la segunda ventana asi: >> mainWn.lblValues.set_text(txtValues.get_text()) >> >> pero no funcionó. Me podrías explicarías por favor?. >> >> >> >> Eduardo Matus wrote: >> >> >>> tendrias que pasar la instancia de la primer ventana >>> popup = change(self) >>> >>> >>> >>> On Tue, Dec 2, 2008 at 11:00 PM, Tomas Hernandez >> >>>> wrote: >>>> >>> >>> >>>> Gracias por responder Eduardo, >>>> >>>> Claro, puedo acceder a las variables, el problema es que para ello >>>> se me ocurre hacer un boton "refresh" en la ventana principal >>>> para acceder a las variables y cambiar el contenido del label, pero >>>> lo que yo quiero, es que al apretar el boton de la segunda ventana >>>> cambie automaticamente en la primera. >>>> Por ahora logré pasar valores de la principal a la otra, pero en sentido >>>> contrario no puedo hacerlo automatico. >>>> >>>> Saludos. >>>> >>>> >>>> Eduardo Matus wrote: >>>> >>>> >>>> >>>> >>>>> Hola, no estoy seguro, pero si tienes esto >>>>> def on_btnChange_clicked(self, btn=None): >>>>> popup = change() >>>>> popup.wnChange.show() >>>>> >>>>> popup, es una instancia de change, por lo tanto puedes acceder a las >>>>> variables de esa clase despues de cerrarla >>>>> >>>>> >>>>> On Tue, Dec 2, 2008 at 9:40 PM, Tomas Hernandez >>>> >>>>> >>>>> >>>>>> wrote: >>>>>> >>>>>> >>>>>> >>>>> >>>>> >>>>>> Hola lista, >>>>>> >>>>>> Hace un tiempo envié un correo sobre lo mismo y nadie puro darme una >>>>>> solución ='(. >>>>>> Esta vez, insisto, por si alguien se motiva a ayudarme =D y explicarme. >>>>>> >>>>>> Tengo 2 archivos .glade y 2 .py: >>>>>> wnEdit.glade (txtValues, btnChange) >>>>>> wnMain.glade (lblValues, btnChange) >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> **************************************************************************************** >>>>>> change.py: >>>>>> >>>>>> >>>>>> >>>>>> **************************************************************************************** >>>>>> 1 #! /usr/bin/env python >>>>>> 2 >>>>>> 3 import pygtk >>>>>> 4 pygtk.require("2.0") >>>>>> 5 import gtk >>>>>> 6 from gtk import glade >>>>>> 7 from GladeConnect import GladeConnect >>>>>> 8 >>>>>> 9 class change(GladeConnect): >>>>>> 10 def __init__(self): >>>>>> 11 GladeConnect.__init__(self, "glade/wnChange.glade") >>>>>> 12 >>>>>> 13 def on_btnChange_clicked(self, btn=None): >>>>>> 14 self.wnChange.hide() >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> **************************************************************************************** >>>>>> main.py >>>>>> >>>>>> >>>>>> >>>>>> **************************************************************************************** >>>>>> 1 #!/usr/bin/env python >>>>>> 2 >>>>>> 3 import pygtk >>>>>> 4 pygtk.require("2.0") >>>>>> 5 import gtk >>>>>> 6 from gtk import glade >>>>>> 7 from GladeConnect import GladeConnect >>>>>> 8 from change import * >>>>>> 9 >>>>>> 10 class main(GladeConnect): >>>>>> 11 def __init__(self): >>>>>> 12 GladeConnect.__init__(self, "glade/wnMain.glade") >>>>>> 13 >>>>>> 14 def on_btnChange_clicked(self, btn=None): >>>>>> 15 popup = change() >>>>>> 16 popup.wnChange.show() >>>>>> 17 >>>>>> 18 def start(self): >>>>>> 19 gtk.main() >>>>>> 20 return 0 >>>>>> 21 >>>>>> 22 if __name__=="__main__": >>>>>> 23 app = main() >>>>>> 24 app.start() >>>>>> >>>>>> >>>>>> >>>>>> **************************************************************************************** >>>>>> >>>>>> Lo que quiero hacer es: >>>>>> - Abrir la primera ventana >>>>>> - Hacer click en el boton de esa ventana para abrir una nueva >>>>>> - En esa nueva escribir algo >>>>>> - Hacer click en el boton de esa nueva ventana y refrescar >>>>>> automaticamente >>>>>> el label >>>>>> de la primera. >>>>>> >>>>>> >>>>>> ¿cómo puedo hacerlo?. Hasta ahora la dinamica entre ventanas >>>>>> funciona...! >>>>>> _______________________________________________ >>>>>> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es >>>>>> FAQ: http://listas.aditel.org/faqpyes >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>> >>>>> >>>>> >>>>> >>>> _______________________________________________ >>>> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es >>>> FAQ: http://listas.aditel.org/faqpyes >>>> >>>> >>>> >>>> >>> >>> >>> >>> >> _______________________________________________ >> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es >> FAQ: http://listas.aditel.org/faqpyes >> >> > > > > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ematus en gmail.com Tue Dec 2 22:40:19 2008 From: ematus en gmail.com (Eduardo Matus) Date: Tue, 2 Dec 2008 18:40:19 -0300 Subject: Comunicacion entre ventanas In-Reply-To: <4935F287.2060508@inf.utfsm.cl> References: <4935D59A.4080507@inf.utfsm.cl> <984ad6a0812021154w15df6df8v4ea13c1a2c721537@mail.gmail.com> <4935E857.9010305@inf.utfsm.cl> <984ad6a0812021302i3525c589r20cad7f7f0173852@mail.gmail.com> <4935EE4D.20401@inf.utfsm.cl> <984ad6a0812021327q2ca80ffege09be517b59c1a7d@mail.gmail.com> <4935F287.2060508@inf.utfsm.cl> Message-ID: <984ad6a0812021340p64e37eeclac03cc0b620a0c14@mail.gmail.com> change.py: class change(GladeConnect): _texto = "" def __init__(self, mainWn): GladeConnect.__init__(self, "glade/wnChange.glade") self.mainWn = mainWn def on_btnChange_clicked(self, btn=None): OJO ---> self.mainWn.lblValue.set_text(self._texto) self.wnChange.hide() def setText(self, texto): self._texto = texto self.txtChange.set_text(self._texto) def getText(self): print self.txtChange.get_text() return self._texto 2008/12/2 Tomas Hernandez > Me salió esto: > *********************************************************************** > File "/home/patton/workspace/signals/change.py", line 16, in > on_btnChange_clicked > self.mainWn.lblValue.set_text(self._texto) > File "/home/patton/workspace/signals/GladeConnect.py", line 70, in > __getattr__ > raise AttributeError, name > AttributeError: mainWn > *********************************************************************** > > Los archivos están asi: > > > **************************************************************************************** > change.py: > class change(GladeConnect): > _texto = "" > def __init__(self, mainWn): > GladeConnect.__init__(self, "glade/wnChange.glade") > > def on_btnChange_clicked(self, btn=None): > OJO ---> self.mainWn.lblValue.set_text(self._texto) > self.wnChange.hide() > def setText(self, texto): > self._texto = texto > self.txtChange.set_text(self._texto) > > def getText(self): > print self.txtChange.get_text() > return self._texto > > > **************************************************************************************** > main.py > class main(GladeConnect): > _value = "" > def __init__(self): > GladeConnect.__init__(self, "glade/wnMain.glade") > > def on_btnChange_clicked(self, btn=None): > popup = change(self) > popup.wnChange.show() > popup.setText(self.lblValue.get_text()) > > def start(self): > gtk.main() > return 0 > > if __name__=="__main__": > app = main() > app.start() > > **************************************************************************************** > > Me pasó que importé desde la change.py a todo lo de main (from main import > *) > pero me crea una nueva ventana debido al if __name__=="__main__" con la > cual hago siempre un gtk.main. > > > > Eduardo Matus wrote: > >> pero que te salio.. algun error?? >> mainWn la dejaste como variable de clase??? >> self.mainWn.lblValues.set_text(.... >> >> 2008/12/2 Tomas Hernandez >> >> >> >>> Qué consigo con eso? :O (perdón pero soy novato), me imagino que >>> podría ocupar los metodos de la primera ventana?. >>> >>> Me quedó así: >>> class change(GladeConnect): >>> def __init__(self, mainWn): >>> y en la primera: >>> def on_btnChange_clicked(self, btn=None): >>> popup = change(self) >>> >>> Intenté usar los atributos en la segunda ventana asi: >>> mainWn.lblValues.set_text(txtValues.get_text()) >>> >>> pero no funcionó. Me podrías explicarías por favor?. >>> >>> >>> >>> Eduardo Matus wrote: >>> >>> >>> >>>> tendrias que pasar la instancia de la primer ventana >>>> popup = change(self) >>>> >>>> >>>> >>>> On Tue, Dec 2, 2008 at 11:00 PM, Tomas Hernandez >>> >>>> >>>>> wrote: >>>>> >>>>> >>>> >>>> >>>> >>>>> Gracias por responder Eduardo, >>>>> >>>>> Claro, puedo acceder a las variables, el problema es que para ello >>>>> se me ocurre hacer un boton "refresh" en la ventana principal >>>>> para acceder a las variables y cambiar el contenido del label, pero >>>>> lo que yo quiero, es que al apretar el boton de la segunda ventana >>>>> cambie automaticamente en la primera. >>>>> Por ahora logré pasar valores de la principal a la otra, pero en >>>>> sentido >>>>> contrario no puedo hacerlo automatico. >>>>> >>>>> Saludos. >>>>> >>>>> >>>>> Eduardo Matus wrote: >>>>> >>>>> >>>>> >>>>> >>>>> >>>>>> Hola, no estoy seguro, pero si tienes esto >>>>>> def on_btnChange_clicked(self, btn=None): >>>>>> popup = change() >>>>>> popup.wnChange.show() >>>>>> >>>>>> popup, es una instancia de change, por lo tanto puedes acceder a las >>>>>> variables de esa clase despues de cerrarla >>>>>> >>>>>> >>>>>> On Tue, Dec 2, 2008 at 9:40 PM, Tomas Hernandez < >>>>>> thernand en inf.utfsm.cl >>>>>> >>>>>> >>>>>> >>>>>> >>>>>>> wrote: >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>>> Hola lista, >>>>>>> >>>>>>> Hace un tiempo envié un correo sobre lo mismo y nadie puro darme una >>>>>>> solución ='(. >>>>>>> Esta vez, insisto, por si alguien se motiva a ayudarme =D y >>>>>>> explicarme. >>>>>>> >>>>>>> Tengo 2 archivos .glade y 2 .py: >>>>>>> wnEdit.glade (txtValues, btnChange) >>>>>>> wnMain.glade (lblValues, btnChange) >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> **************************************************************************************** >>>>>>> change.py: >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> **************************************************************************************** >>>>>>> 1 #! /usr/bin/env python >>>>>>> 2 >>>>>>> 3 import pygtk >>>>>>> 4 pygtk.require("2.0") >>>>>>> 5 import gtk >>>>>>> 6 from gtk import glade >>>>>>> 7 from GladeConnect import GladeConnect >>>>>>> 8 >>>>>>> 9 class change(GladeConnect): >>>>>>> 10 def __init__(self): >>>>>>> 11 GladeConnect.__init__(self, >>>>>>> "glade/wnChange.glade") >>>>>>> 12 >>>>>>> 13 def on_btnChange_clicked(self, btn=None): >>>>>>> 14 self.wnChange.hide() >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> **************************************************************************************** >>>>>>> main.py >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> **************************************************************************************** >>>>>>> 1 #!/usr/bin/env python >>>>>>> 2 >>>>>>> 3 import pygtk >>>>>>> 4 pygtk.require("2.0") >>>>>>> 5 import gtk >>>>>>> 6 from gtk import glade >>>>>>> 7 from GladeConnect import GladeConnect >>>>>>> 8 from change import * >>>>>>> 9 >>>>>>> 10 class main(GladeConnect): >>>>>>> 11 def __init__(self): >>>>>>> 12 GladeConnect.__init__(self, "glade/wnMain.glade") >>>>>>> 13 >>>>>>> 14 def on_btnChange_clicked(self, btn=None): >>>>>>> 15 popup = change() >>>>>>> 16 popup.wnChange.show() >>>>>>> 17 >>>>>>> 18 def start(self): >>>>>>> 19 gtk.main() >>>>>>> 20 return 0 >>>>>>> 21 >>>>>>> 22 if __name__=="__main__": >>>>>>> 23 app = main() >>>>>>> 24 app.start() >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> **************************************************************************************** >>>>>>> >>>>>>> Lo que quiero hacer es: >>>>>>> - Abrir la primera ventana >>>>>>> - Hacer click en el boton de esa ventana para abrir una nueva >>>>>>> - En esa nueva escribir algo >>>>>>> - Hacer click en el boton de esa nueva ventana y refrescar >>>>>>> automaticamente >>>>>>> el label >>>>>>> de la primera. >>>>>>> >>>>>>> >>>>>>> ¿cómo puedo hacerlo?. Hasta ahora la dinamica entre ventanas >>>>>>> funciona...! >>>>>>> _______________________________________________ >>>>>>> Lista de correo Python-es >>>>>>> http://listas.aditel.org/listinfo/python-es >>>>>>> FAQ: http://listas.aditel.org/faqpyes >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>> _______________________________________________ >>>>> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es >>>>> FAQ: http://listas.aditel.org/faqpyes >>>>> >>>>> >>>>> >>>>> >>>>> >>>> >>>> >>>> >>>> >>>> >>> _______________________________________________ >>> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es >>> FAQ: http://listas.aditel.org/faqpyes >>> >>> >>> >> >> >> >> >> > > _______________________________________________ > Lista de correo Python-es http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- _______________________________________ Eduardo Andrés Matus Coquelet Ingeniero Civil Informatico y Telecomunicaciones - U. Diego Portales Santiago, Chile. _______________________________________ Celular: (07) 77113825 _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From thernand en inf.utfsm.cl Wed Dec 3 03:59:02 2008 From: thernand en inf.utfsm.cl (Tomas Hernandez) Date: Tue, 02 Dec 2008 18:59:02 -0800 Subject: Comunicacion entre ventanas In-Reply-To: <984ad6a0812021340p64e37eeclac03cc0b620a0c14@mail.gmail.com> References: <4935D59A.4080507@inf.utfsm.cl> <984ad6a0812021154w15df6df8v4ea13c1a2c721537@mail.gmail.com> <4935E857.9010305@inf.utfsm.cl> <984ad6a0812021302i3525c589r20cad7f7f0173852@mail.gmail.com> <4935EE4D.20401@inf.utfsm.cl> <984ad6a0812021327q2ca80ffege09be517b59c1a7d@mail.gmail.com> <4935F287.2060508@inf.utfsm.cl> <984ad6a0812021340p64e37eeclac03cc0b620a0c14@mail.gmail.com> Message-ID: <4935F5F6.6050301@inf.utfsm.cl> YAAAAAAAAAAAAAAAAAAAJU!!!!!!!!!!!!!!!!! Resultó Eduardo, finalmente el archivó quedó asi: class change(GladeConnect): _texto = "" def __init__(self, mainWn): self.mainWn = mainWn GladeConnect.__init__(self, "glade/wnChange.glade") def on_btnChange_clicked(self, btn=None): self.mainWn.lblValue.set_text(self.txtChange.get_text()) self.wnChange.hide() def setText(self, texto): self._texto = texto self.txtChange.set_text(self._texto) ---- Me podrías explicar cual es la lógica de hacer un popup = change(self). MUCHAS GRACIAS =D. Eduardo Matus wrote: > change.py: > class change(GladeConnect): > _texto = "" > def __init__(self, mainWn): > GladeConnect.__init__(self, "glade/wnChange.glade") > self.mainWn = mainWn > > def on_btnChange_clicked(self, btn=None): > OJO ---> self.mainWn.lblValue.set_text(self._texto) > self.wnChange.hide() > def setText(self, texto): > self._texto = texto > self.txtChange.set_text(self._texto) > > def getText(self): > print self.txtChange.get_text() > return self._texto > > > 2008/12/2 Tomas Hernandez > > >> Me salió esto: >> *********************************************************************** >> File "/home/patton/workspace/signals/change.py", line 16, in >> on_btnChange_clicked >> self.mainWn.lblValue.set_text(self._texto) >> File "/home/patton/workspace/signals/GladeConnect.py", line 70, in >> __getattr__ >> raise AttributeError, name >> AttributeError: mainWn >> *********************************************************************** >> >> Los archivos están asi: >> >> >> **************************************************************************************** >> change.py: >> class change(GladeConnect): >> _texto = "" >> def __init__(self, mainWn): >> GladeConnect.__init__(self, "glade/wnChange.glade") >> >> def on_btnChange_clicked(self, btn=None): >> OJO ---> self.mainWn.lblValue.set_text(self._texto) >> self.wnChange.hide() >> def setText(self, texto): >> self._texto = texto >> self.txtChange.set_text(self._texto) >> >> def getText(self): >> print self.txtChange.get_text() >> return self._texto >> >> >> **************************************************************************************** >> main.py >> class main(GladeConnect): >> _value = "" >> def __init__(self): >> GladeConnect.__init__(self, "glade/wnMain.glade") >> >> def on_btnChange_clicked(self, btn=None): >> popup = change(self) >> popup.wnChange.show() >> popup.setText(self.lblValue.get_text()) >> >> def start(self): >> gtk.main() >> return 0 >> >> if __name__=="__main__": >> app = main() >> app.start() >> >> **************************************************************************************** >> >> Me pasó que importé desde la change.py a todo lo de main (from main import >> *) >> pero me crea una nueva ventana debido al if __name__=="__main__" con la >> cual hago siempre un gtk.main. >> >> >> >> Eduardo Matus wrote: >> >> >>> pero que te salio.. algun error?? >>> mainWn la dejaste como variable de clase??? >>> self.mainWn.lblValues.set_text(.... >>> >>> 2008/12/2 Tomas Hernandez >>> >>> >>> >>> >>>> Qué consigo con eso? :O (perdón pero soy novato), me imagino que >>>> podría ocupar los metodos de la primera ventana?. >>>> >>>> Me quedó así: >>>> class change(GladeConnect): >>>> def __init__(self, mainWn): >>>> y en la primera: >>>> def on_btnChange_clicked(self, btn=None): >>>> popup = change(self) >>>> >>>> Intenté usar los atributos en la segunda ventana asi: >>>> mainWn.lblValues.set_text(txtValues.get_text()) >>>> >>>> pero no funcionó. Me podrías explicarías por favor?. >>>> >>>> >>>> >>>> Eduardo Matus wrote: >>>> >>>> >>>> >>>> >>>>> tendrias que pasar la instancia de la primer ventana >>>>> popup = change(self) >>>>> >>>>> >>>>> >>>>> On Tue, Dec 2, 2008 at 11:00 PM, Tomas Hernandez >>>> >>>>> >>>>> >>>>>> wrote: >>>>>> >>>>>> >>>>>> >>>>> >>>>> >>>>>> Gracias por responder Eduardo, >>>>>> >>>>>> Claro, puedo acceder a las variables, el problema es que para ello >>>>>> se me ocurre hacer un boton "refresh" en la ventana principal >>>>>> para acceder a las variables y cambiar el contenido del label, pero >>>>>> lo que yo quiero, es que al apretar el boton de la segunda ventana >>>>>> cambie automaticamente en la primera. >>>>>> Por ahora logré pasar valores de la principal a la otra, pero en >>>>>> sentido >>>>>> contrario no puedo hacerlo automatico. >>>>>> >>>>>> Saludos. >>>>>> >>>>>> >>>>>> Eduardo Matus wrote: >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>>> Hola, no estoy seguro, pero si tienes esto >>>>>>> def on_btnChange_clicked(self, btn=None): >>>>>>> popup = change() >>>>>>> popup.wnChange.show() >>>>>>> >>>>>>> popup, es una instancia de change, por lo tanto puedes acceder a las >>>>>>> variables de esa clase despues de cerrarla >>>>>>> >>>>>>> >>>>>>> On Tue, Dec 2, 2008 at 9:40 PM, Tomas Hernandez < >>>>>>> thernand en inf.utfsm.cl >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>>> wrote: >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>>>> Hola lista, >>>>>>>> >>>>>>>> Hace un tiempo envié un correo sobre lo mismo y nadie puro darme una >>>>>>>> solución ='(. >>>>>>>> Esta vez, insisto, por si alguien se motiva a ayudarme =D y >>>>>>>> explicarme. >>>>>>>> >>>>>>>> Tengo 2 archivos .glade y 2 .py: >>>>>>>> wnEdit.glade (txtValues, btnChange) >>>>>>>> wnMain.glade (lblValues, btnChange) >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> **************************************************************************************** >>>>>>>> change.py: >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> **************************************************************************************** >>>>>>>> 1 #! /usr/bin/env python >>>>>>>> 2 >>>>>>>> 3 import pygtk >>>>>>>> 4 pygtk.require("2.0") >>>>>>>> 5 import gtk >>>>>>>> 6 from gtk import glade >>>>>>>> 7 from GladeConnect import GladeConnect >>>>>>>> 8 >>>>>>>> 9 class change(GladeConnect): >>>>>>>> 10 def __init__(self): >>>>>>>> 11 GladeConnect.__init__(self, >>>>>>>> "glade/wnChange.glade") >>>>>>>> 12 >>>>>>>> 13 def on_btnChange_clicked(self, btn=None): >>>>>>>> 14 self.wnChange.hide() >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> **************************************************************************************** >>>>>>>> main.py >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> **************************************************************************************** >>>>>>>> 1 #!/usr/bin/env python >>>>>>>> 2 >>>>>>>> 3 import pygtk >>>>>>>> 4 pygtk.require("2.0") >>>>>>>> 5 import gtk >>>>>>>> 6 from gtk import glade >>>>>>>> 7 from GladeConnect import GladeConnect >>>>>>>> 8 from change import * >>>>>>>> 9 >>>>>>>> 10 class main(GladeConnect): >>>>>>>> 11 def __init__(self): >>>>>>>> 12 GladeConnect.__init__(self, "glade/wnMain.glade") >>>>>>>> 13 >>>>>>>> 14 def on_btnChange_clicked(self, btn=None): >>>>>>>> 15 popup = change() >>>>>>>> 16 popup.wnChange.show() >>>>>>>> 17 >>>>>>>> 18 def start(self): >>>>>>>> 19 gtk.main() >>>>>>>> 20 return 0 >>>>>>>> 21 >>>>>>>> 22 if __name__=="__main__": >>>>>>>> 23 app = main() >>>>>>>> 24 app.start() >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> **************************************************************************************** >>>>>>>> >>>>>>>> Lo que quiero hacer es: >>>>>>>> - Abrir la primera ventana >>>>>>>> - Hacer click en el boton de esa ventana para abrir una nueva >>>>>>>> - En esa nueva escribir algo >>>>>>>> - Hacer click en el boton de esa nueva ventana y refrescar >>>>>>>> automaticamente >>>>>>>> el label >>>>>>>> de la primera. >>>>>>>> >>>>>>>> >>>>>>>> ¿cómo puedo hacerlo?. Hasta ahora la dinamica entre ventanas >>>>>>>> funciona...! >>>>>>>> _______________________________________________ >>>>>>>> Lista de correo Python-es >>>>>>>> http://listas.aditel.org/listinfo/python-es >>>>>>>> FAQ: http://listas.aditel.org/faqpyes >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>> _______________________________________________ >>>>>> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es >>>>>> FAQ: http://listas.aditel.org/faqpyes >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>> >>>>> >>>>> >>>>> >>>> _______________________________________________ >>>> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es >>>> FAQ: http://listas.aditel.org/faqpyes >>>> >>>> >>>> >>>> >>> >>> >>> >>> >> _______________________________________________ >> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es >> FAQ: http://listas.aditel.org/faqpyes >> >> > > > > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ematus en gmail.com Tue Dec 2 23:08:12 2008 From: ematus en gmail.com (Eduardo Matus) Date: Tue, 2 Dec 2008 23:08:12 +0100 Subject: Comunicacion entre ventanas In-Reply-To: <4935F5F6.6050301@inf.utfsm.cl> References: <4935D59A.4080507@inf.utfsm.cl> <984ad6a0812021154w15df6df8v4ea13c1a2c721537@mail.gmail.com> <4935E857.9010305@inf.utfsm.cl> <984ad6a0812021302i3525c589r20cad7f7f0173852@mail.gmail.com> <4935EE4D.20401@inf.utfsm.cl> <984ad6a0812021327q2ca80ffege09be517b59c1a7d@mail.gmail.com> <4935F287.2060508@inf.utfsm.cl> <984ad6a0812021340p64e37eeclac03cc0b620a0c14@mail.gmail.com> <4935F5F6.6050301@inf.utfsm.cl> Message-ID: <984ad6a0812021408v401bcb0au14bd1b5e5fcbd383@mail.gmail.com> ok, self, en una clase, es como "yo mismo" contiene todos los metodos y variables, entonces cuando haces popup = change(self) le estas pasando a la clase change todos los metodos y variables. es por eso que tienes acceso al label de la clase principal On Wed, Dec 3, 2008 at 3:59 AM, Tomas Hernandez wrote: > YAAAAAAAAAAAAAAAAAAAJU!!!!!!!!!!!!!!!!! > > Resultó Eduardo, finalmente el archivó quedó asi: > > class change(GladeConnect): > > _texto = "" > > def __init__(self, mainWn): > > self.mainWn = mainWn > > GladeConnect.__init__(self, "glade/wnChange.glade") > > def on_btnChange_clicked(self, btn=None): > > self.mainWn.lblValue.set_text(self.txtChange.get_text()) > > self.wnChange.hide() > > def setText(self, texto): > > self._texto = texto > > self.txtChange.set_text(self._texto) > > ---- > Me podrías explicar cual es la lógica de hacer un popup = change(self). > MUCHAS GRACIAS =D. > > > Eduardo Matus wrote: > >> change.py: >> class change(GladeConnect): >> _texto = "" >> def __init__(self, mainWn): >> GladeConnect.__init__(self, "glade/wnChange.glade") >> self.mainWn = mainWn >> >> def on_btnChange_clicked(self, btn=None): >> OJO ---> self.mainWn.lblValue.set_text(self._texto) >> self.wnChange.hide() >> def setText(self, texto): >> self._texto = texto >> self.txtChange.set_text(self._texto) >> >> def getText(self): >> print self.txtChange.get_text() >> return self._texto >> >> >> 2008/12/2 Tomas Hernandez >> >> >> >>> Me salió esto: >>> *********************************************************************** >>> File "/home/patton/workspace/signals/change.py", line 16, in >>> on_btnChange_clicked >>> self.mainWn.lblValue.set_text(self._texto) >>> File "/home/patton/workspace/signals/GladeConnect.py", line 70, in >>> __getattr__ >>> raise AttributeError, name >>> AttributeError: mainWn >>> *********************************************************************** >>> >>> Los archivos están asi: >>> >>> >>> >>> **************************************************************************************** >>> change.py: >>> class change(GladeConnect): >>> _texto = "" >>> def __init__(self, mainWn): >>> GladeConnect.__init__(self, "glade/wnChange.glade") >>> >>> def on_btnChange_clicked(self, btn=None): >>> OJO ---> self.mainWn.lblValue.set_text(self._texto) >>> self.wnChange.hide() >>> def setText(self, texto): >>> self._texto = texto >>> self.txtChange.set_text(self._texto) >>> >>> def getText(self): >>> print self.txtChange.get_text() >>> return self._texto >>> >>> >>> >>> **************************************************************************************** >>> main.py >>> class main(GladeConnect): >>> _value = "" >>> def __init__(self): >>> GladeConnect.__init__(self, "glade/wnMain.glade") >>> >>> def on_btnChange_clicked(self, btn=None): >>> popup = change(self) >>> popup.wnChange.show() >>> popup.setText(self.lblValue.get_text()) >>> >>> def start(self): >>> gtk.main() >>> return 0 >>> >>> if __name__=="__main__": >>> app = main() >>> app.start() >>> >>> >>> **************************************************************************************** >>> >>> Me pasó que importé desde la change.py a todo lo de main (from main >>> import >>> *) >>> pero me crea una nueva ventana debido al if __name__=="__main__" con la >>> cual hago siempre un gtk.main. >>> >>> >>> >>> Eduardo Matus wrote: >>> >>> >>> >>>> pero que te salio.. algun error?? >>>> mainWn la dejaste como variable de clase??? >>>> self.mainWn.lblValues.set_text(.... >>>> >>>> 2008/12/2 Tomas Hernandez >>>> >>>> >>>> >>>> >>>> >>>>> Qué consigo con eso? :O (perdón pero soy novato), me imagino que >>>>> podría ocupar los metodos de la primera ventana?. >>>>> >>>>> Me quedó así: >>>>> class change(GladeConnect): >>>>> def __init__(self, mainWn): >>>>> y en la primera: >>>>> def on_btnChange_clicked(self, btn=None): >>>>> popup = change(self) >>>>> >>>>> Intenté usar los atributos en la segunda ventana asi: >>>>> mainWn.lblValues.set_text(txtValues.get_text()) >>>>> >>>>> pero no funcionó. Me podrías explicarías por favor?. >>>>> >>>>> >>>>> >>>>> Eduardo Matus wrote: >>>>> >>>>> >>>>> >>>>> >>>>> >>>>>> tendrias que pasar la instancia de la primer ventana >>>>>> popup = change(self) >>>>>> >>>>>> >>>>>> >>>>>> On Tue, Dec 2, 2008 at 11:00 PM, Tomas Hernandez < >>>>>> thernand en inf.utfsm.cl >>>>>> >>>>>> >>>>>> >>>>>> >>>>>>> wrote: >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>>> Gracias por responder Eduardo, >>>>>>> >>>>>>> Claro, puedo acceder a las variables, el problema es que para ello >>>>>>> se me ocurre hacer un boton "refresh" en la ventana principal >>>>>>> para acceder a las variables y cambiar el contenido del label, pero >>>>>>> lo que yo quiero, es que al apretar el boton de la segunda ventana >>>>>>> cambie automaticamente en la primera. >>>>>>> Por ahora logré pasar valores de la principal a la otra, pero en >>>>>>> sentido >>>>>>> contrario no puedo hacerlo automatico. >>>>>>> >>>>>>> Saludos. >>>>>>> >>>>>>> >>>>>>> Eduardo Matus wrote: >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>>> Hola, no estoy seguro, pero si tienes esto >>>>>>>> def on_btnChange_clicked(self, btn=None): >>>>>>>> popup = change() >>>>>>>> popup.wnChange.show() >>>>>>>> >>>>>>>> popup, es una instancia de change, por lo tanto puedes acceder a las >>>>>>>> variables de esa clase despues de cerrarla >>>>>>>> >>>>>>>> >>>>>>>> On Tue, Dec 2, 2008 at 9:40 PM, Tomas Hernandez < >>>>>>>> thernand en inf.utfsm.cl >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> wrote: >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> Hola lista, >>>>>>>>> >>>>>>>>> Hace un tiempo envié un correo sobre lo mismo y nadie puro darme >>>>>>>>> una >>>>>>>>> solución ='(. >>>>>>>>> Esta vez, insisto, por si alguien se motiva a ayudarme =D y >>>>>>>>> explicarme. >>>>>>>>> >>>>>>>>> Tengo 2 archivos .glade y 2 .py: >>>>>>>>> wnEdit.glade (txtValues, btnChange) >>>>>>>>> wnMain.glade (lblValues, btnChange) >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> **************************************************************************************** >>>>>>>>> change.py: >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> **************************************************************************************** >>>>>>>>> 1 #! /usr/bin/env python >>>>>>>>> 2 >>>>>>>>> 3 import pygtk >>>>>>>>> 4 pygtk.require("2.0") >>>>>>>>> 5 import gtk >>>>>>>>> 6 from gtk import glade >>>>>>>>> 7 from GladeConnect import GladeConnect >>>>>>>>> 8 >>>>>>>>> 9 class change(GladeConnect): >>>>>>>>> 10 def __init__(self): >>>>>>>>> 11 GladeConnect.__init__(self, >>>>>>>>> "glade/wnChange.glade") >>>>>>>>> 12 >>>>>>>>> 13 def on_btnChange_clicked(self, btn=None): >>>>>>>>> 14 self.wnChange.hide() >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> **************************************************************************************** >>>>>>>>> main.py >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> **************************************************************************************** >>>>>>>>> 1 #!/usr/bin/env python >>>>>>>>> 2 >>>>>>>>> 3 import pygtk >>>>>>>>> 4 pygtk.require("2.0") >>>>>>>>> 5 import gtk >>>>>>>>> 6 from gtk import glade >>>>>>>>> 7 from GladeConnect import GladeConnect >>>>>>>>> 8 from change import * >>>>>>>>> 9 >>>>>>>>> 10 class main(GladeConnect): >>>>>>>>> 11 def __init__(self): >>>>>>>>> 12 GladeConnect.__init__(self, >>>>>>>>> "glade/wnMain.glade") >>>>>>>>> 13 >>>>>>>>> 14 def on_btnChange_clicked(self, btn=None): >>>>>>>>> 15 popup = change() >>>>>>>>> 16 popup.wnChange.show() >>>>>>>>> 17 >>>>>>>>> 18 def start(self): >>>>>>>>> 19 gtk.main() >>>>>>>>> 20 return 0 >>>>>>>>> 21 >>>>>>>>> 22 if __name__=="__main__": >>>>>>>>> 23 app = main() >>>>>>>>> 24 app.start() >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> **************************************************************************************** >>>>>>>>> >>>>>>>>> Lo que quiero hacer es: >>>>>>>>> - Abrir la primera ventana >>>>>>>>> - Hacer click en el boton de esa ventana para abrir una nueva >>>>>>>>> - En esa nueva escribir algo >>>>>>>>> - Hacer click en el boton de esa nueva ventana y refrescar >>>>>>>>> automaticamente >>>>>>>>> el label >>>>>>>>> de la primera. >>>>>>>>> >>>>>>>>> >>>>>>>>> ¿cómo puedo hacerlo?. Hasta ahora la dinamica entre ventanas >>>>>>>>> funciona...! >>>>>>>>> _______________________________________________ >>>>>>>>> Lista de correo Python-es >>>>>>>>> http://listas.aditel.org/listinfo/python-es >>>>>>>>> FAQ: http://listas.aditel.org/faqpyes >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> _______________________________________________ >>>>>>> Lista de correo Python-es >>>>>>> http://listas.aditel.org/listinfo/python-es >>>>>>> FAQ: http://listas.aditel.org/faqpyes >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>> _______________________________________________ >>>>> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es >>>>> FAQ: http://listas.aditel.org/faqpyes >>>>> >>>>> >>>>> >>>>> >>>>> >>>> >>>> >>>> >>>> >>>> >>> _______________________________________________ >>> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es >>> FAQ: http://listas.aditel.org/faqpyes >>> >>> >>> >> >> >> >> >> > > _______________________________________________ > Lista de correo Python-es http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- _______________________________________ Eduardo Andrés Matus Coquelet Ingeniero Civil Informatico y Telecomunicaciones - U. Diego Portales Santiago, Chile. _______________________________________ Celular: (07) 77113825 _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From carles en pina.cat Tue Dec 2 23:17:59 2008 From: carles en pina.cat (Carles Pina i Estany) Date: Tue, 2 Dec 2008 23:17:59 +0100 Subject: pygame y reproducir MP3 In-Reply-To: <49359803.3060803@gmail.com> References: <20081202185214.GA9546@pina.cat> <29e33c430812021120o372d13b5w5493030385de0d13@mail.gmail.com> <49359803.3060803@gmail.com> Message-ID: <20081202221759.GA10832@pina.cat> Hola, On Dec/02/2008, Arnau Sanchez wrote: > Eduardo escribió: > >> Hasta donde se, pygame soporta ogg y wav pero no mp3 > > No, no, pygame sí soporta mp3, el problema que parece tener Carles es que > no le detecta la tarjeta de sonido. Pygame en Linux usa dispositivos OSS, > es decir, que debes comprobar que /dev/dsp existe. > > Como lo normal en kernels modernos es usar ALSA (ver tarjetas instaladas > con cat /proc/asound/cards), puedes probar con una de estas dos opciones: correcto > - aoss (paquete alsa-oss): aoss programa. > - modprobe snd-pcm-oss antes de mandar el mail hice: strace ./test.py (dónde test.py es el programa de abajo) y veo que intenta trabajar con ficheros de alsa: ---------- stat64("/usr/share/alsa/alsa.conf", {st_mode=S_IFREG|0644, st_size=8617, ...}) = 0 open("/usr/share/alsa/alsa.conf", O_RDONLY) = 5 open("/usr/share/alsa/cards/aliases.conf", O_RDONLY) = 5 ---------- con lo cual rechacé la idea que sea un problema de alsa o oss. Por si acaso he probado tus dos ideas (aoss y snd-pcm-oss) sin resultado. De todas formas el pydance (p. ej.) usa pygame y veo que usa sus funciones para reproducir MP3 y funciona bien. Dirás: pues copia lo que hace. Y contesto... en esto estoy, pero no veo que haga ningún "init" y sí que hace plays y le funciona (a mí no). Sigo probando, cualquier idea es bienvenida. Cuando dé con la solución aviso también! Saludos, -- Carles Pina i Estany GPG id: 0x17756391 http://pinux.info _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From carles en pina.cat Tue Dec 2 23:40:04 2008 From: carles en pina.cat (Carles Pina i Estany) Date: Tue, 2 Dec 2008 23:40:04 +0100 Subject: pygame y reproducir MP3 In-Reply-To: <49359803.3060803@gmail.com> References: <20081202185214.GA9546@pina.cat> <29e33c430812021120o372d13b5w5493030385de0d13@mail.gmail.com> <49359803.3060803@gmail.com> Message-ID: <20081202224004.GA12168@pina.cat> Hola, On Dec/02/2008, Arnau Sanchez wrote: > Eduardo escribió: > >> Hasta donde se, pygame soporta ogg y wav pero no mp3 > > No, no, pygame sí soporta mp3, el problema que parece tener Carles es que > no le detecta la tarjeta de sonido. Pygame en Linux usa dispositivos OSS, > es decir, que debes comprobar que /dev/dsp existe. tengo datos muy curiosos, ahora: carles en pinux:~/pygame$ python Python 2.5.2 (r252:60911, Sep 29 2008, 21:15:13) [GCC 4.3.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import pygame >>> pygame.mixer.init() there is no soundcard >>> pygame.mixer.init(44100) >>> pygame.mixer.music.load("Qt4Dance.mp3") >>> pygame.mixer.music.play() >>> Esto funciona! (bien!) (el hecho: si no pongo 44100 en el mixer.init desde el script no encuentra la tarjeta de sonido (!!) ) Pero esto mismo en un fichero y ejecutado: carles en pinux:~/pygame$ ./test.py there is no soundcard carles en pinux:~/pygame$ :-o (hasta he probado en poner sleeps por si es tema de inicializaciones ¿?) Voy a ver para qué la gente usa pre_init... -- Carles Pina i Estany GPG id: 0x17756391 http://pinux.info _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pyarnau en gmail.com Wed Dec 3 00:09:35 2008 From: pyarnau en gmail.com (Arnau Sanchez) Date: Wed, 03 Dec 2008 00:09:35 +0100 Subject: pygame y reproducir MP3 In-Reply-To: <20081202224004.GA12168@pina.cat> References: <20081202185214.GA9546@pina.cat> <29e33c430812021120o372d13b5w5493030385de0d13@mail.gmail.com> <49359803.3060803@gmail.com> <20081202224004.GA12168@pina.cat> Message-ID: <4935C02F.7050208@gmail.com> Carles Pina i Estany escribió: > tengo datos muy curiosos, ahora: > carles en pinux:~/pygame$ python > Python 2.5.2 (r252:60911, Sep 29 2008, 21:15:13) > [GCC 4.3.2] on linux2 > Type "help", "copyright", "credits" or "license" for more information. >>>> import pygame >>>> pygame.mixer.init() > there is no soundcard >>>> pygame.mixer.init(44100) >>>> pygame.mixer.music.load("Qt4Dance.mp3") >>>> pygame.mixer.music.play() >>> > > Esto funciona! (bien!) > > (el hecho: si no pongo 44100 en el mixer.init desde el script no encuentra la > tarjeta de sonido (!!) ) > > Pero esto mismo en un fichero y ejecutado: > carles en pinux:~/pygame$ ./test.py > there is no soundcard > carles en pinux:~/pygame$ > > :-o > Primero, tienes razón en lo que dices en el otro correo, pygame ahora usa ALSA (si no estoy equivocado antes iba con OSS) He estado probado, y si no se indica la frecuencia de muestreo (y por tanto va a 22050, el valor por defecto), se oyen clicks muy molestos en el audio. Poniendo 44100 va bien. Mirando por internet hay mucha gente que efectivamente usa este último valor, aunque es una pena que el valor por defecto dé tantos problemas (a ti no te va, a mi me da clicks, etc). pre_init se usa para establecer los valores de configuración del mezclador, pero realmente no lo inicializa. Después, cuando hagas un pygame.init, el mezclador se inicializará con los parámetros indicados en el pre_init. -- Web: http://www.arnau-sanchez.com _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From py en ch3m4.org Wed Dec 3 02:29:18 2008 From: py en ch3m4.org (Chema Cortes) Date: Wed, 3 Dec 2008 02:29:18 +0100 Subject: Aplicacion wxPython en Browser In-Reply-To: <947214.82067.qm@web34307.mail.mud.yahoo.com> References: <947214.82067.qm@web34307.mail.mud.yahoo.com> Message-ID: <200812030229.34118.py@ch3m4.org> El Tuesday 02 December 2008 17:05:57 FERNANDO VILLARROEL escribió: > Gracias Chema ya estoy metiendole algo de mano a Jython + Swing > > La verdad es que en la U nuestro profesor siempre nos enseño el desarrollo > de Clases desde Java y venian los inconvenientes conmigo por que yo uso > Python, asi que por aprender Java no me esforce ademas que no me gustaba > ser tan pesado y exigir tantos recursos de maquinas y ni hablar de la > nomenclatura y el estandard rigido que mantienen para hablar de herencias, > composicion, patrones de diseño, etc. Recuerdo que en alguna ocasion le > mencione los antipatrones que bien me indicaste en algun post y eso me > llevo varios dolores de cabezas, pero bueno. Siento oir éso; pero ten seguro que forjar una postura crítica es también parte de la formación científica y que te permitirá seguir aprendiendo una vez acabes la universidad. > Ahora sobre los "reactores" de twisted me imagino que te refieres a lo > siguiente: > > http://twistedmatrix.com/trac/ Ya te ha respondido lasizoillo. Son interfaces gráficos para una aplicación web hecha en twisted. > Finalmente respecto a Jython + swing es posible usar algun IDE al estilo > Eclipse. Yo uso eclipse para grandes proyectos, algunos de ellos en jython. Sólo se necesita añadir el plugin pydev para programar tanto en python como en jython. Mi recomendación es que, antes de instalar cada cosa por separado, te descargues algunas de las distribuciones de eclipse: - easyeclipse for python: http://www.easyeclipse.org/site/distributions/python.html - yoxos: http://www.yoxos.com - pulse: http://www.poweredbypulse.com La más sencilla para empezar sería la easyeclipse, muy completa. Las otras dos llevan sus propios instaladores y actualizadores de plugins que te hacen la vida más cómoda. Yoxos es bastante profesional, aunque algo enfarragosa si no sabes muy bien lo que necesitas. Pulse es especialmente indicada si necesitas conmutar entre distintas configuraciones de eclipse, algo común si intervienes en distintos grupos de desarrollo (es la que ahora recomiendo más). En cuanto a swing/awt y jython, he hecho alguna programación simple sin ayuda de ninguna herramienta. Si necesitas un diseñador, el propio eclipse lleva uno para swing/awt que produce código java. Este código java, como cualquier otro, se podría invocar directamente desde jython; pero nunca lo he probado como para decirte qué tal resulta. ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: This is a digitally signed message part. URL: ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From thernand en inf.utfsm.cl Wed Dec 3 08:06:03 2008 From: thernand en inf.utfsm.cl (Tomas Hernandez) Date: Tue, 02 Dec 2008 23:06:03 -0800 Subject: Comunicacion entre ventanas In-Reply-To: <984ad6a0812021408v401bcb0au14bd1b5e5fcbd383@mail.gmail.com> References: <4935D59A.4080507@inf.utfsm.cl> <984ad6a0812021154w15df6df8v4ea13c1a2c721537@mail.gmail.com> <4935E857.9010305@inf.utfsm.cl> <984ad6a0812021302i3525c589r20cad7f7f0173852@mail.gmail.com> <4935EE4D.20401@inf.utfsm.cl> <984ad6a0812021327q2ca80ffege09be517b59c1a7d@mail.gmail.com> <4935F287.2060508@inf.utfsm.cl> <984ad6a0812021340p64e37eeclac03cc0b620a0c14@mail.gmail.com> <4935F5F6.6050301@inf.utfsm.cl> <984ad6a0812021408v401bcb0au14bd1b5e5fcbd383@mail.gmail.com> Message-ID: <49362FDB.6030401@inf.utfsm.cl> Gracias nuevamente Eduardo, ahora entiendo bastante más sobre POO =D. Saludos. Eduardo Matus wrote: > ok, self, en una clase, es como "yo mismo" contiene todos los metodos y > variables, entonces cuando haces > popup = change(self) le estas pasando a la clase change todos los metodos y > variables. es por eso que tienes acceso al label de la clase principal > > On Wed, Dec 3, 2008 at 3:59 AM, Tomas Hernandez wrote: > > >> YAAAAAAAAAAAAAAAAAAAJU!!!!!!!!!!!!!!!!! >> >> Resultó Eduardo, finalmente el archivó quedó asi: >> >> class change(GladeConnect): >> >> _texto = "" >> >> def __init__(self, mainWn): >> >> self.mainWn = mainWn >> >> GladeConnect.__init__(self, "glade/wnChange.glade") >> >> def on_btnChange_clicked(self, btn=None): >> >> self.mainWn.lblValue.set_text(self.txtChange.get_text()) >> >> self.wnChange.hide() >> >> def setText(self, texto): >> >> self._texto = texto >> >> self.txtChange.set_text(self._texto) >> >> ---- >> Me podrías explicar cual es la lógica de hacer un popup = change(self). >> MUCHAS GRACIAS =D. >> >> >> Eduardo Matus wrote: >> >> >>> change.py: >>> class change(GladeConnect): >>> _texto = "" >>> def __init__(self, mainWn): >>> GladeConnect.__init__(self, "glade/wnChange.glade") >>> self.mainWn = mainWn >>> >>> def on_btnChange_clicked(self, btn=None): >>> OJO ---> self.mainWn.lblValue.set_text(self._texto) >>> self.wnChange.hide() >>> def setText(self, texto): >>> self._texto = texto >>> self.txtChange.set_text(self._texto) >>> >>> def getText(self): >>> print self.txtChange.get_text() >>> return self._texto >>> >>> >>> 2008/12/2 Tomas Hernandez >>> >>> >>> >>> >>>> Me salió esto: >>>> *********************************************************************** >>>> File "/home/patton/workspace/signals/change.py", line 16, in >>>> on_btnChange_clicked >>>> self.mainWn.lblValue.set_text(self._texto) >>>> File "/home/patton/workspace/signals/GladeConnect.py", line 70, in >>>> __getattr__ >>>> raise AttributeError, name >>>> AttributeError: mainWn >>>> *********************************************************************** >>>> >>>> Los archivos están asi: >>>> >>>> >>>> >>>> **************************************************************************************** >>>> change.py: >>>> class change(GladeConnect): >>>> _texto = "" >>>> def __init__(self, mainWn): >>>> GladeConnect.__init__(self, "glade/wnChange.glade") >>>> >>>> def on_btnChange_clicked(self, btn=None): >>>> OJO ---> self.mainWn.lblValue.set_text(self._texto) >>>> self.wnChange.hide() >>>> def setText(self, texto): >>>> self._texto = texto >>>> self.txtChange.set_text(self._texto) >>>> >>>> def getText(self): >>>> print self.txtChange.get_text() >>>> return self._texto >>>> >>>> >>>> >>>> **************************************************************************************** >>>> main.py >>>> class main(GladeConnect): >>>> _value = "" >>>> def __init__(self): >>>> GladeConnect.__init__(self, "glade/wnMain.glade") >>>> >>>> def on_btnChange_clicked(self, btn=None): >>>> popup = change(self) >>>> popup.wnChange.show() >>>> popup.setText(self.lblValue.get_text()) >>>> >>>> def start(self): >>>> gtk.main() >>>> return 0 >>>> >>>> if __name__=="__main__": >>>> app = main() >>>> app.start() >>>> >>>> >>>> **************************************************************************************** >>>> >>>> Me pasó que importé desde la change.py a todo lo de main (from main >>>> import >>>> *) >>>> pero me crea una nueva ventana debido al if __name__=="__main__" con la >>>> cual hago siempre un gtk.main. >>>> >>>> >>>> >>>> Eduardo Matus wrote: >>>> >>>> >>>> >>>> >>>>> pero que te salio.. algun error?? >>>>> mainWn la dejaste como variable de clase??? >>>>> self.mainWn.lblValues.set_text(.... >>>>> >>>>> 2008/12/2 Tomas Hernandez >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>>> Qué consigo con eso? :O (perdón pero soy novato), me imagino que >>>>>> podría ocupar los metodos de la primera ventana?. >>>>>> >>>>>> Me quedó así: >>>>>> class change(GladeConnect): >>>>>> def __init__(self, mainWn): >>>>>> y en la primera: >>>>>> def on_btnChange_clicked(self, btn=None): >>>>>> popup = change(self) >>>>>> >>>>>> Intenté usar los atributos en la segunda ventana asi: >>>>>> mainWn.lblValues.set_text(txtValues.get_text()) >>>>>> >>>>>> pero no funcionó. Me podrías explicarías por favor?. >>>>>> >>>>>> >>>>>> >>>>>> Eduardo Matus wrote: >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>>> tendrias que pasar la instancia de la primer ventana >>>>>>> popup = change(self) >>>>>>> >>>>>>> >>>>>>> >>>>>>> On Tue, Dec 2, 2008 at 11:00 PM, Tomas Hernandez < >>>>>>> thernand en inf.utfsm.cl >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>>> wrote: >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>>>> Gracias por responder Eduardo, >>>>>>>> >>>>>>>> Claro, puedo acceder a las variables, el problema es que para ello >>>>>>>> se me ocurre hacer un boton "refresh" en la ventana principal >>>>>>>> para acceder a las variables y cambiar el contenido del label, pero >>>>>>>> lo que yo quiero, es que al apretar el boton de la segunda ventana >>>>>>>> cambie automaticamente en la primera. >>>>>>>> Por ahora logré pasar valores de la principal a la otra, pero en >>>>>>>> sentido >>>>>>>> contrario no puedo hacerlo automatico. >>>>>>>> >>>>>>>> Saludos. >>>>>>>> >>>>>>>> >>>>>>>> Eduardo Matus wrote: >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> Hola, no estoy seguro, pero si tienes esto >>>>>>>>> def on_btnChange_clicked(self, btn=None): >>>>>>>>> popup = change() >>>>>>>>> popup.wnChange.show() >>>>>>>>> >>>>>>>>> popup, es una instancia de change, por lo tanto puedes acceder a las >>>>>>>>> variables de esa clase despues de cerrarla >>>>>>>>> >>>>>>>>> >>>>>>>>> On Tue, Dec 2, 2008 at 9:40 PM, Tomas Hernandez < >>>>>>>>> thernand en inf.utfsm.cl >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>>> wrote: >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>>> Hola lista, >>>>>>>>>> >>>>>>>>>> Hace un tiempo envié un correo sobre lo mismo y nadie puro darme >>>>>>>>>> una >>>>>>>>>> solución ='(. >>>>>>>>>> Esta vez, insisto, por si alguien se motiva a ayudarme =D y >>>>>>>>>> explicarme. >>>>>>>>>> >>>>>>>>>> Tengo 2 archivos .glade y 2 .py: >>>>>>>>>> wnEdit.glade (txtValues, btnChange) >>>>>>>>>> wnMain.glade (lblValues, btnChange) >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> **************************************************************************************** >>>>>>>>>> change.py: >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> **************************************************************************************** >>>>>>>>>> 1 #! /usr/bin/env python >>>>>>>>>> 2 >>>>>>>>>> 3 import pygtk >>>>>>>>>> 4 pygtk.require("2.0") >>>>>>>>>> 5 import gtk >>>>>>>>>> 6 from gtk import glade >>>>>>>>>> 7 from GladeConnect import GladeConnect >>>>>>>>>> 8 >>>>>>>>>> 9 class change(GladeConnect): >>>>>>>>>> 10 def __init__(self): >>>>>>>>>> 11 GladeConnect.__init__(self, >>>>>>>>>> "glade/wnChange.glade") >>>>>>>>>> 12 >>>>>>>>>> 13 def on_btnChange_clicked(self, btn=None): >>>>>>>>>> 14 self.wnChange.hide() >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> **************************************************************************************** >>>>>>>>>> main.py >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> **************************************************************************************** >>>>>>>>>> 1 #!/usr/bin/env python >>>>>>>>>> 2 >>>>>>>>>> 3 import pygtk >>>>>>>>>> 4 pygtk.require("2.0") >>>>>>>>>> 5 import gtk >>>>>>>>>> 6 from gtk import glade >>>>>>>>>> 7 from GladeConnect import GladeConnect >>>>>>>>>> 8 from change import * >>>>>>>>>> 9 >>>>>>>>>> 10 class main(GladeConnect): >>>>>>>>>> 11 def __init__(self): >>>>>>>>>> 12 GladeConnect.__init__(self, >>>>>>>>>> "glade/wnMain.glade") >>>>>>>>>> 13 >>>>>>>>>> 14 def on_btnChange_clicked(self, btn=None): >>>>>>>>>> 15 popup = change() >>>>>>>>>> 16 popup.wnChange.show() >>>>>>>>>> 17 >>>>>>>>>> 18 def start(self): >>>>>>>>>> 19 gtk.main() >>>>>>>>>> 20 return 0 >>>>>>>>>> 21 >>>>>>>>>> 22 if __name__=="__main__": >>>>>>>>>> 23 app = main() >>>>>>>>>> 24 app.start() >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> **************************************************************************************** >>>>>>>>>> >>>>>>>>>> Lo que quiero hacer es: >>>>>>>>>> - Abrir la primera ventana >>>>>>>>>> - Hacer click en el boton de esa ventana para abrir una nueva >>>>>>>>>> - En esa nueva escribir algo >>>>>>>>>> - Hacer click en el boton de esa nueva ventana y refrescar >>>>>>>>>> automaticamente >>>>>>>>>> el label >>>>>>>>>> de la primera. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> ¿cómo puedo hacerlo?. Hasta ahora la dinamica entre ventanas >>>>>>>>>> funciona...! >>>>>>>>>> _______________________________________________ >>>>>>>>>> Lista de correo Python-es >>>>>>>>>> http://listas.aditel.org/listinfo/python-es >>>>>>>>>> FAQ: http://listas.aditel.org/faqpyes >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> Lista de correo Python-es >>>>>>>> http://listas.aditel.org/listinfo/python-es >>>>>>>> FAQ: http://listas.aditel.org/faqpyes >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>> _______________________________________________ >>>>>> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es >>>>>> FAQ: http://listas.aditel.org/faqpyes >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>> >>>>> >>>>> >>>>> >>>> _______________________________________________ >>>> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es >>>> FAQ: http://listas.aditel.org/faqpyes >>>> >>>> >>>> >>>> >>> >>> >>> >>> >> _______________________________________________ >> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es >> FAQ: http://listas.aditel.org/faqpyes >> >> > > > > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pauladospublicidad en yahoo.com Wed Dec 3 10:05:40 2008 From: pauladospublicidad en yahoo.com (Paulados) Date: Wed, 3 Dec 2008 01:05:40 -0800 (PST) Subject: Python junto con C/C++ Message-ID: <637503.67367.qm@web33001.mail.mud.yahoo.com> Hola a todos los de la lista. Es mi primer correo, y quería preguntar un par de cosas. Primero, no se si hay alguna forma de buscar en los correos de la lista si lo que voy a preguntar se ha preguntado ya antes. No he encontrado una opción para eso. Si la hay, decidmelo, please!!!! :D Por otro lado, yo he empezado a aprender Python hace poco (2 semanas casi 3). He estado jugueteando con cosas básicas, luego con Tkinter y pmw para hacer GUIS (sin instalar cosas extras como wxpython, pygtk o similares). Tambien he echado un vistazo a pygame para reproducir mp3. Todo lo que he estado mirando es por lo siguiente. Siempre he programado en C/C++, pero hacer GUIs en C/C++ es un poco coñazo a veces. Quería poder hacer un GUI para mis aplicaciones sin tener que recompilar, y di con python (tambien esta java, y he programado con java pero python es más comodo por lo poco que llevo). Lo que quiero es saber si hay alguna forma de poder enlazar mi código C/C++ con python fácilmente (o viceversa). A ser posible sin tener que instalar gran cosa, o que se instale fácilmente (en linux no suele ser un gran problema, el mayor problema es en windows a la hora de utilizar algún compilador de C/C++ e instalar librerías y más librerías). Algún consejo/guia para hacerlo fácilmente en linux/windows? Muchas gracias a todos por adelantado y enhorabuena por la lista, ¡Todo sobre Amor y Sexo! La guía completa para tu vida en Mujer de Hoy. http://mx.mujer.yahoo.com/ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From cesar_husillos en yahoo.es Wed Dec 3 10:17:39 2008 From: cesar_husillos en yahoo.es (cesar husillos) Date: Wed, 3 Dec 2008 09:17:39 +0000 (GMT) Subject: Python junto con C/C++ References: <637503.67367.qm@web33001.mail.mud.yahoo.com> Message-ID: <678393.62639.qm@web27907.mail.ukl.yahoo.com> Hola: Echa un ojo a SWIG (http://www.swig.org/). Genera módulos en Python a partir de códigos en otros lenguajes, entre ellos C y C++. Un saludo. ________________________________ De: Paulados Para: python-es en aditel.org Enviado: miércoles, 3 de diciembre, 2008 10:05:40 Asunto: [Python-es] Python junto con C/C++ Hola a todos los de la lista. Es mi primer correo, y quería preguntar un par de cosas. Primero, no se si hay alguna forma de buscar en los correos de la lista si lo que voy a preguntar se ha preguntado ya antes. No he encontrado una opción para eso. Si la hay, decidmelo, please!!!! :D Por otro lado, yo he empezado a aprender Python hace poco (2 semanas casi 3). He estado jugueteando con cosas básicas, luego con Tkinter y pmw para hacer GUIS (sin instalar cosas extras como wxpython, pygtk o similares). Tambien he echado un vistazo a pygame para reproducir mp3. Todo lo que he estado mirando es por lo siguiente. Siempre he programado en C/C++, pero hacer GUIs en C/C++ es un poco coñazo a veces. Quería poder hacer un GUI para mis aplicaciones sin tener que recompilar, y di con python (tambien esta java, y he programado con java pero python es más comodo por lo poco que llevo). Lo que quiero es saber si hay alguna forma de poder enlazar mi código C/C++ con python fácilmente (o viceversa). A ser posible sin tener que instalar gran cosa, o que se instale fácilmente (en linux no suele ser un gran problema, el mayor problema es en windows a la hora de utilizar algún compilador de C/C++ e instalar librerías y más librerías). Algún consejo/guia para hacerlo fácilmente en linux/windows? Muchas gracias a todos por adelantado y enhorabuena por la lista, ¡Todo sobre Amor y Sexo! La guía completa para tu vida en Mujer de Hoy. http://mx.mujer.yahoo.com/ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From inigo_aldazabal en ehu.es Wed Dec 3 10:36:58 2008 From: inigo_aldazabal en ehu.es (Inigo Aldazabal Mensa) Date: Wed, 3 Dec 2008 10:36:58 +0100 Subject: Python junto con C/C++ In-Reply-To: <637503.67367.qm@web33001.mail.mud.yahoo.com> References: <637503.67367.qm@web33001.mail.mud.yahoo.com> Message-ID: <200812031036.59442.inigo_aldazabal@ehu.es> El Miércoles, 3 de Diciembre de 2008 10:05, Paulados escribió: > Lo que quiero es saber si hay alguna forma de poder enlazar mi código > C/C++ con python fácilmente (o viceversa). A ser posible sin tener que > instalar gran cosa, o que se instale fácilmente (en linux no suele ser > un gran problema, el mayor problema es en windows a la hora de utilizar > algún compilador de C/C++ e instalar librerías y más librerías). Algún > consejo/guia para hacerlo fácilmente en linux/windows? > Si es simple, puedes hacerlo a mano. En la propia docmentación de python tienes ejemplos sencillos [1]. Si es algo mas complejo puedes facilitar el proceso con por ejemplo swig[2]. [1]http://docs.python.org/extending/index.html [2] http://www.swig.org/tutorial.html > Muchas gracias a todos por adelantado y enhorabuena por la lista, > > > > > ¡Todo sobre Amor y Sexo! > La guía completa para tu vida en Mujer de Hoy. > http://mx.mujer.yahoo.com/ > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jordi.f en ati.es Wed Dec 3 14:19:59 2008 From: jordi.f en ati.es (Jordi Funollet) Date: Wed, 3 Dec 2008 14:19:59 +0100 Subject: Python junto con C/C++ In-Reply-To: <637503.67367.qm@web33001.mail.mud.yahoo.com> References: <637503.67367.qm@web33001.mail.mud.yahoo.com> Message-ID: <200812031419.59571.jordi.f@ati.es> Paulados dixit: > Primero, no se si hay alguna forma de buscar en los correos de la lista si > lo que voy a preguntar se ha preguntado ya antes. No he encontrado una > opción para eso. Al final de este correo (de todos) se añade un link a las FAQs. Dale un vistazo. ;-) -- ############################## ### Jordi Funollet ### http://www.terraquis.net _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From yassergs en ispejv.rimed.cu Wed Dec 3 15:41:53 2008 From: yassergs en ispejv.rimed.cu (yasser gonzalez) Date: Wed, 3 Dec 2008 09:41:53 -0500 Subject: pygame y reproducir MP3 References: <20081202185214.GA9546@pina.cat> <29e33c430812021120o372d13b5w5493030385de0d13@mail.gmail.com> <49359803.3060803@gmail.com><20081202224004.GA12168@pina.cat> <4935C02F.7050208@gmail.com> Message-ID: <01aa01c95555$4a540050$1c03010a@javier> Hola. Yo lo estoy trabajando desde Windows XP y me sale a las mil maravillas. Copié y Pegué el code y me salió de rechupete -- Este mensaje ha sido analizado por MailScanner en busca de virus y otros contenidos peligrosos, y se considera que está limpio. For all your IT requirements visit: http://www.transtec.co.uk _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From carles en pina.cat Wed Dec 3 19:21:29 2008 From: carles en pina.cat (Carles Pina i Estany) Date: Wed, 3 Dec 2008 19:21:29 +0100 Subject: pygame y reproducir MP3 In-Reply-To: <4935C02F.7050208@gmail.com> References: <20081202185214.GA9546@pina.cat> <29e33c430812021120o372d13b5w5493030385de0d13@mail.gmail.com> <49359803.3060803@gmail.com> <20081202224004.GA12168@pina.cat> <4935C02F.7050208@gmail.com> Message-ID: <20081203182129.GA5995@pina.cat> Hola, On Dec/03/2008, Arnau Sanchez wrote: > Carles Pina i Estany escribió: > >> tengo datos muy curiosos, ahora: >> carles en pinux:~/pygame$ python >> Python 2.5.2 (r252:60911, Sep 29 2008, 21:15:13) [GCC 4.3.2] on linux2 >> Type "help", "copyright", "credits" or "license" for more information. >>>>> import pygame >>>>> pygame.mixer.init() >> there is no soundcard >>>>> pygame.mixer.init(44100) >>>>> pygame.mixer.music.load("Qt4Dance.mp3") >>>>> pygame.mixer.music.play() > >>>> >> >> Esto funciona! (bien!) >> >> (el hecho: si no pongo 44100 en el mixer.init desde el script no encuentra la >> tarjeta de sonido (!!) ) >> >> Pero esto mismo en un fichero y ejecutado: >> carles en pinux:~/pygame$ ./test.py there is no soundcard >> carles en pinux:~/pygame$ >> >> :-o >> > > Primero, tienes razón en lo que dices en el otro correo, pygame ahora usa > ALSA (si no estoy equivocado antes iba con OSS) bueno, antes todo iba con OSS :-D (depende del antes) > He estado probado, y si no se indica la frecuencia de muestreo (y por > tanto va a 22050, el valor por defecto), se oyen clicks muy molestos en > el audio. Poniendo 44100 va bien. Mirando por internet hay mucha gente > que efectivamente usa este último valor, aunque es una pena que el valor > por defecto dé tantos problemas (a ti no te va, a mi me da clicks, etc). Ojo ojo! Quizás te saltaste una parte interesante de mi correo. Desde el script NO funcionaba y desde la consola de Python sí. Raro, no? Hoy lo he encontrado. Tengo que llamar dos veces a pygame.mixer.init!: #!/usr/bin/python import pygame import time pygame.mixer.init(44100) pygame.mixer.init(44100) pygame.mixer.music.load("Qt4Dance.mp3") pygame.mixer.music.play() time.sleep(100) print "adeu" Esto funciona, pero si llamo una sola vez no funciona. Y si lo llamo sin 44100 funciona a 22050 y oigo los chasquidos. > pre_init se usa para establecer los valores de configuración del > mezclador, pero realmente no lo inicializa. Después, cuando hagas un > pygame.init, el mezclador se inicializará con los parámetros indicados en > el pre_init. sí, lo ví después de enviar el mail. Por tanto, en mi versión de Pygame y mis drivers necesito inicializarlo dos veces... y a 22050 funciona con chasquidos. Haré las pruebas que quería hacer ayer y quizás pruebo la versión -devel de pygame y reporto el error si sigue allí. 1000 gracias, -- Carles Pina i Estany GPG id: 0x17756391 http://pinux.info _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From vginer en gmail.com Fri Dec 5 13:25:29 2008 From: vginer en gmail.com (Vicent) Date: Fri, 5 Dec 2008 13:25:29 +0100 Subject: Uso de GTK y Glade en Windows Message-ID: <50ed08f40812050425v2035a98bkc00661fa5792d242@mail.gmail.com> Un saludo a tod en s. Una pregunta rápida y sencilla. Tengo instalado Python 2.5.2 en Windows. Me he bajado GTK y Glade para Windows. Ahora, ¿cómo lo hago funcionar todo? Es decir, me he bajado unos archivos .ZIP que contienen la instalación de GTK y de Glade. Al descomprimirlos, se generan una serie de carpetas como "bin", "contrib", "etc", "include", "lib", "share" y otras. ¿He de copiar esas carpetas al directorio donde tengo instalado Python? ¿Alguna referencia en Internet sobre cómo instalar y manejar estas aplicaciones o extensiones? Gracias de antemano. -- Vicent _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From lasizoillo en gmail.com Fri Dec 5 15:08:51 2008 From: lasizoillo en gmail.com (lasizoillo) Date: Fri, 5 Dec 2008 15:08:51 +0100 Subject: Hackademy Message-ID: <49414f570812050608x305778ddt93067954e446dcac@mail.gmail.com> Buenas: Los chicos del hamlab (hacklab de madrid) vuelven a la carga com más cursos de informática. http://patiomaravillas.net/hamlab/hackademy2.0/bloque_desarrollo Yo daré este domingo el de python. Será de iniciación, por lo que a la gente de esta lista seguro que le viene corto, pero de todas formas estais invitados. Tambien quedais invitados a conocer el espacio o a preparar vuestra propia charla de python si lo quereis, que se espera que haya hackademy para rato. El curso será este domingo en el CSO Patio Maravillas, calle acuerdo 8, Madrid. Por otro lado, es mi primera charla y me gustaría pediros algun consejo, material lectivo, ... De todas formas publicaremos el material usado para el que le interese, que no tenga que preparar la charla desde cero. Un saludo: Javi _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ikarush en gmail.com Fri Dec 5 19:42:10 2008 From: ikarush en gmail.com (=?UTF-8?Q?Daniel_Gonz=C3=A1lez?=) Date: Fri, 5 Dec 2008 19:42:10 +0100 Subject: Hackademy In-Reply-To: <49414f570812050608x305778ddt93067954e446dcac@mail.gmail.com> References: <49414f570812050608x305778ddt93067954e446dcac@mail.gmail.com> Message-ID: 2008/12/5 lasizoillo : > Buenas: > > Los chicos del hamlab (hacklab de madrid) vuelven a la carga com más > cursos de informática. > > http://patiomaravillas.net/hamlab/hackademy2.0/bloque_desarrollo > > Yo daré este domingo el de python. Será de iniciación, por lo que a la > gente de esta lista seguro que le viene corto, pero de todas formas > estais invitados. Tambien quedais invitados a conocer el espacio o a > preparar vuestra propia charla de python si lo quereis, que se espera > que haya hackademy para rato. > > El curso será este domingo en el CSO Patio Maravillas, calle acuerdo 8, Madrid. > > Por otro lado, es mi primera charla y me gustaría pediros algun > consejo, material lectivo, ... De todas formas publicaremos el > material usado para el que le interese, que no tenga que preparar la > charla desde cero. > > Un saludo: > Hay que inscribirse en algún lado para asistir a los cursos? > Javi > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From parodi.fer en gmail.com Sat Dec 6 03:20:05 2008 From: parodi.fer en gmail.com (fernando parodi) Date: Fri, 5 Dec 2008 23:20:05 -0300 Subject: Graficos Message-ID: <6d2760090812051820k6ff4d99ag22b6cab466351d0d@mail.gmail.com> Hola gente este es mi primer mensaje, estoy aprendiendo python y me parece fantastico, potente y lo mejor sin mil vueltas para hacer nada. Yo soy estudiante de ing civil, y programador aficionado y mi unicaexperiencia anterior programando es con un HP49 jajaja (algo es algo). y como la mejor forma de aprender programcion es programando, estoy en escribiendo un prg para un cuestión de flujo en canales abiertos y necesito gráficos los ing hablamos con graficos, cosa que se me esta complicando(tal vez la solucion sea una papa). La interface grafica la hice con wxGlade que es milagroso, pero no puedo graficar nada en él, trate de entender el ejemplo que esta en http://wiki.wxpython.org/VerySimpleDrawing y dibujar en un panel pero nada, probe con pythong salen cosas lindas pero esta en otra ventana y me gustaria que este todo en un solo from, y asi estoy con lindas planillas de resultado pero un bendito grafico. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From maengora en gmail.com Sat Dec 6 04:22:48 2008 From: maengora en gmail.com (=?ISO-8859-1?Q?Manuel_Enrique_Gonz=E1lez_Ram=EDrez?=) Date: Fri, 5 Dec 2008 22:22:48 -0500 Subject: =?iso-8859-1?q?Lecci=F3n_No=2E_8?= Message-ID: Hola lista. A todos los que siguen el blog http://maengora.blogspot.com quiero informarles que ya he subido la lección No. 8 que aborda el tema (de una forma básica) sobre la creación de informes en formato web y en pdf. Igualmente se subieron los fuentes de dicha lección. Nuevamente, bienvenidos los comentarios y la ayuda que puedan brindar, sobre todo en este tema de los reportes. Manuel. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From kalith.9 en gmail.com Sat Dec 6 11:20:12 2008 From: kalith.9 en gmail.com (kalith kalith) Date: Sat, 6 Dec 2008 02:20:12 -0800 Subject: Graficos In-Reply-To: <6d2760090812051820k6ff4d99ag22b6cab466351d0d@mail.gmail.com> References: <6d2760090812051820k6ff4d99ag22b6cab466351d0d@mail.gmail.com> Message-ID: <3da702830812060220t4cbdea4je1dc8088b7bfabc7@mail.gmail.com> no se si es exactamente lo que andas buscando pero puedes checar estas librerias a ver si en alguna hay los graficos del tipo que buscas http://scipy.org/SciPy http://matplotlib.sourceforge.net/ -- Seamos realistas y hagamos lo imposible _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From lasizoillo en gmail.com Sat Dec 6 15:27:19 2008 From: lasizoillo en gmail.com (lasizoillo) Date: Sat, 6 Dec 2008 15:27:19 +0100 Subject: Hackademy In-Reply-To: References: <49414f570812050608x305778ddt93067954e446dcac@mail.gmail.com> Message-ID: <49414f570812060627t141eb11ck7a615e47b6b0f876@mail.gmail.com> 2008/12/5 Daniel González : > 2008/12/5 lasizoillo : >> Buenas: >> >> Los chicos del hamlab (hacklab de madrid) vuelven a la carga com más >> cursos de informática. >> >> http://patiomaravillas.net/hamlab/hackademy2.0/bloque_desarrollo >> >> Yo daré este domingo el de python. Será de iniciación, por lo que a la >> gente de esta lista seguro que le viene corto, pero de todas formas >> estais invitados. Tambien quedais invitados a conocer el espacio o a >> preparar vuestra propia charla de python si lo quereis, que se espera >> que haya hackademy para rato. >> >> El curso será este domingo en el CSO Patio Maravillas, calle acuerdo 8, Madrid. >> >> Por otro lado, es mi primera charla y me gustaría pediros algun >> consejo, material lectivo, ... De todas formas publicaremos el >> material usado para el que le interese, que no tenga que preparar la >> charla desde cero. >> >> Un saludo: >> > Hay que inscribirse en algún lado para asistir a los cursos? No, basta con que te presentes. Pero por problemas técnicos, el centro social okupado donde se iba a impartir se ha quedado sin luz y habrá que repararla a lo largo del fin de semana. Siento decir que el curso se pospone hasta otro día :-( Quiza lo de inscribirse no sea tan mala idea para poder avisar a la gente que pensaba ir de estos imprevistos. Un saludo y disculpas: Javi >> Javi >> _______________________________________________ >> Lista de correo Python-es >> http://listas.aditel.org/listinfo/python-es >> FAQ: http://listas.aditel.org/faqpyes >> > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From cristhianboujon en gmail.com Sun Dec 7 05:19:22 2008 From: cristhianboujon en gmail.com (Cristhian Boujon) Date: Sun, 7 Dec 2008 02:19:22 -0200 Subject: [OT 70%] problemas con el "_" en IDLE de Ubuntu Message-ID: En Ubuntu 8.10 en el IDLE de Python no me aparecen los "_" Python sabe que están ahí pero yo solo veo un espacio en blanco, alguien saba por que? es realemente molesto y presta a confusion. -- Cristhian A. Boujon --------------------------------- http//esintuitivo.blogspot.com _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From mlacunza en gmail.com Sun Dec 7 06:23:39 2008 From: mlacunza en gmail.com (Mario Lacunza) Date: Sun, 7 Dec 2008 00:23:39 -0500 Subject: [OT 70%] problemas con el "_" en IDLE de Ubuntu In-Reply-To: References: Message-ID: <771741b20812062123g3355bf50qc84ef6df406157b2@mail.gmail.com> 2008/12/6 Cristhian Boujon > En Ubuntu 8.10 en el IDLE de Python no me aparecen los "_" Python sabe que > están ahí pero yo solo veo un espacio en blanco, alguien saba por que? es > realemente molesto y presta a confusion. > > -- > Cristhian A. Boujon > --------------------------------- > http//esintuitivo.blogspot.com > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > Has probado cambiandole la fuente? -- Saludos / Best regards Mario Lacunza Software Architect - Webmaster Email: mlacunza [AT] gmail [DOT] com http://www.lacunza.info Lima - Peru _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From teritriano en gmail.com Mon Dec 8 14:31:47 2008 From: teritriano en gmail.com (Oscar (.teri) Triano) Date: Mon, 8 Dec 2008 14:31:47 +0100 Subject: xrc no reconoce wxPaintDC? Message-ID: <8c50b5f00812080531l590bd9d4m6f7dfc4f3ee6974f@mail.gmail.com> Haciendo una aplicación en wxGlade 4.1 meto un "custom widget" como wxPaintDC para dibujar. Genero el código el xrc. Sin embargo al cargar la interfaz, sale un error: No handler found for XML node 'object', class 'wxPaintDC'! Me he asegurado de que esté escrito bien, incluso lo he mirado dentro del archivo xrc. Pero nada de nada. ¿Estoy haciendo algo mal? Gracias por responder. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From luis.ortega.araneda en gmail.com Mon Dec 8 22:38:18 2008 From: luis.ortega.araneda en gmail.com (Luis Ortega Araneda) Date: Mon, 8 Dec 2008 18:38:18 -0300 Subject: Producir sonidos con Python Message-ID: <9e18be500812081338n415b60a7gb3bf60700586ed82@mail.gmail.com> Estimados, No sé muy bien si lo que quiero se puede hacer... pero me gustaría generar sonidos de la nada a través de un programa en python ... por ejemplo ... hacer correr el programa y producir un SOL, o un RE ... o un LA ..... me entienden ??? alguien sabe si ésto se puede llevar a cabo ?? de ante-mano muchísimas gracias. -- Luis Ortega Araneda +56 9 81240504 http://alumnos.elo.utfsm.cl/~lortega _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ogunsett en gmail.com Mon Dec 8 23:21:07 2008 From: ogunsett en gmail.com (Oscar Gunsett) Date: Mon, 8 Dec 2008 20:21:07 -0200 Subject: Producir sonidos con Python In-Reply-To: <9e18be500812081338n415b60a7gb3bf60700586ed82@mail.gmail.com> References: <9e18be500812081338n415b60a7gb3bf60700586ed82@mail.gmail.com> Message-ID: 2008/12/8 Luis Ortega Araneda > Estimados, > > No sé muy bien si lo que quiero se puede hacer... pero me gustaría > generar sonidos de la nada a través de un programa en python ... > > por ejemplo ... > > hacer correr el programa y producir un SOL, o un RE ... o un LA ..... > me entienden ??? alguien sabe si ésto se puede llevar a cabo ?? > de ante-mano muchísimas gracias. > > Me hace acordar al comando play del viejo Basic para ejecutar notas. Lo que hay de sonido para python esta aca http://wiki.python.org/moin/PythonInMusic?action=fullsearch&context=180&value=linkto%3A%22PythonInMusic%22 Lo que he visto muy rápido es que se utiliza muestras de sonido y luego se los reproduce con algun motor de sonido tipo csound. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ogunsett en gmail.com Tue Dec 9 00:00:06 2008 From: ogunsett en gmail.com (Oscar Gunsett) Date: Mon, 8 Dec 2008 21:00:06 -0200 Subject: Producir sonidos con Python In-Reply-To: References: <9e18be500812081338n415b60a7gb3bf60700586ed82@mail.gmail.com> Message-ID: Revise el tema de csound y no es esencialmente un motor de sonido ( http://es.wikipedia.org/wiki/Csound). Aca un enlace para manejarlo desde python http://homepage.mac.com/andykopra/pdm/tutorials/csound/sound_synthesis_with_csound.html _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From luis.ortega.araneda en gmail.com Tue Dec 9 00:45:37 2008 From: luis.ortega.araneda en gmail.com (Luis Ortega Araneda) Date: Mon, 8 Dec 2008 20:45:37 -0300 Subject: Producir sonidos con Python In-Reply-To: References: <9e18be500812081338n415b60a7gb3bf60700586ed82@mail.gmail.com> Message-ID: <9e18be500812081545s27d1e99du2a0980356503cf38@mail.gmail.com> gracias por la informaci\'on 2008/12/8 Oscar Gunsett : > Revise el tema de csound y no es esencialmente un motor de sonido ( > http://es.wikipedia.org/wiki/Csound). > > Aca un enlace para manejarlo desde python > http://homepage.mac.com/andykopra/pdm/tutorials/csound/sound_synthesis_with_csound.html > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- Luis Ortega Araneda +56 9 81240504 http://alumnos.elo.utfsm.cl/~lortega _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pauladospublicidad en yahoo.com Tue Dec 9 09:18:04 2008 From: pauladospublicidad en yahoo.com (Paulados) Date: Tue, 9 Dec 2008 00:18:04 -0800 (PST) Subject: Python junto con C/C++ Message-ID: <994334.51188.qm@web33002.mail.mud.yahoo.com> Uooo, despues del puente me veo que hay muchas respuestas. Muchas gracias y me parece que echaré un vistazo a swig. Ciaoo!!!! Paulados dixit: > Primero, no se si hay alguna forma de buscar en los correos de la lista si > lo que voy a preguntar se ha preguntado ya antes. No he encontrado una > opción para eso. Al final de este correo (de todos) se añade un link a las FAQs. Dale un vistazo. ;-) -- ############################## ### Jordi Funollet ### http://www.terraquis.net ¡Todo sobre Amor y Sexo! La guía completa para tu vida en Mujer de Hoy. http://mx.mujer.yahoo.com/ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pych3m4 en gmail.com Tue Dec 9 11:49:45 2008 From: pych3m4 en gmail.com (Chema Cortes) Date: Tue, 9 Dec 2008 11:49:45 +0100 Subject: Python junto con C/C++ In-Reply-To: <994334.51188.qm@web33002.mail.mud.yahoo.com> References: <994334.51188.qm@web33002.mail.mud.yahoo.com> Message-ID: <2c9fb0dd0812090249r5bf19761tddc13076c47a85d6@mail.gmail.com> El 2008/12/9 Paulados escribió: > Uooo, despues del puente me veo que hay muchas respuestas. Muchas gracias y me parece que echaré un vistazo a swig. Swig es popular porque permite crear bindings para varios lenguajes; pero hay varias alternativas más. Muy similar sería SIP[0], más automático en el uso que swig. Es de uso obligado si quieres usar Qt ó KDE. Otra alternativa que me gusta bastante es Pyrex[1], una forma elegante de enlazar C/C++ y python [2] que permite manejar los tipos de datos C desde python puro. Aún así, vas a tener siempre el problema de compilar bastantes cosas. Configurar un entorno de compilación en windows para python con herramientas libres no es trivial, aunque no imposible. Por ello te recomiendo que le eches un vistazo al módulo 'ctypes' con el que se puede acceder directamente a las librerías dinámicas (DLL) sin tener que compilar nada. [0] http://www.riverbankcomputing.co.uk/software/sip/intro [1] http://www.cosc.canterbury.ac.nz/greg.ewing/python/Pyrex/ [2] http://wiki.cython.org/WrappingCPlusPlus _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From listas en soft-com.es Tue Dec 9 15:39:18 2008 From: listas en soft-com.es (=?ISO-8859-1?Q?Oswaldo_Hern=E1ndez?=) Date: Tue, 09 Dec 2008 15:39:18 +0100 Subject: xrc no reconoce wxPaintDC? In-Reply-To: <8c50b5f00812080531l590bd9d4m6f7dfc4f3ee6974f@mail.gmail.com> References: <8c50b5f00812080531l590bd9d4m6f7dfc4f3ee6974f@mail.gmail.com> Message-ID: <493E8316.9080608@soft-com.es> Oscar (.teri) Triano escribió: > Haciendo una aplicación en wxGlade 4.1 meto un "custom widget" como > wxPaintDC para dibujar. Genero el código el xrc. > Sin embargo al cargar la interfaz, sale un error: > > No handler found for XML node 'object', class 'wxPaintDC'! > > Me he asegurado de que esté escrito bien, incluso lo he mirado dentro del > archivo xrc. Pero nada de nada. > ¿Estoy haciendo algo mal? Creo que te estas liando, wx.PaintDC no es un widget que puedas poner como si fuera un textbox, es una clase para dibujar cuando se produce un evento OnPaint. -- ***************************************** Oswaldo Hernández oswaldo (@) soft-com (.) es ***************************************** PD: Antes de imprimir este mensaje, asegúrese de que es necesario. El medio ambiente está en nuestra mano. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From med.swl en gmail.com Tue Dec 9 15:42:02 2008 From: med.swl en gmail.com (Medardo Rodriguez (Merchise Group)) Date: Tue, 9 Dec 2008 09:42:02 -0500 Subject: Python junto con C/C++ In-Reply-To: <637503.67367.qm@web33001.mail.mud.yahoo.com> References: <637503.67367.qm@web33001.mail.mud.yahoo.com> Message-ID: <4891add70812090642g4b753919oe4cd84c120681ec4@mail.gmail.com> 2008/12/3 Paulados : > Lo que quiero es saber si hay alguna forma de poder enlazar mi código C/C++ con python fácilmente (o viceversa). Te recomiendo también Boost Python: http://www.boost.org/doc/libs/1_37_0/libs/python/doc/index.html Saludos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From antonio.beamud en gmail.com Tue Dec 9 16:06:40 2008 From: antonio.beamud en gmail.com (Antonio Beamud Montero) Date: Tue, 09 Dec 2008 16:06:40 +0100 Subject: Python junto con C/C++ In-Reply-To: <4891add70812090642g4b753919oe4cd84c120681ec4@mail.gmail.com> References: <637503.67367.qm@web33001.mail.mud.yahoo.com> <4891add70812090642g4b753919oe4cd84c120681ec4@mail.gmail.com> Message-ID: <1228835200.30191.27.camel@soberbia> El mar, 09-12-2008 a las 09:42 -0500, Medardo Rodriguez (Merchise Group) escribió: > 2008/12/3 Paulados : > > Lo que quiero es saber si hay alguna forma de poder enlazar mi código C/C++ con python fácilmente (o viceversa). > Cython (http://cython.org/) basando en Pyrex. Un saludo ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pepe en diselpro.com Tue Dec 9 18:02:40 2008 From: pepe en diselpro.com (Pepe Aracil) Date: Tue, 09 Dec 2008 18:02:40 +0100 Subject: Comunicacion entre ventanas In-Reply-To: <4935D59A.4080507@inf.utfsm.cl> References: <4935D59A.4080507@inf.utfsm.cl> Message-ID: <493EA4B0.1040703@diselpro.com> Hola. Echale un vistazo al patrón observer: http://es.wikipedia.org/wiki/Observer_(patr%C3%B3n_de_dise%C3%B1o) Tomas Hernandez escribió: > Hola lista, > > Hace un tiempo envié un correo sobre lo mismo y nadie puro darme una > solución ='(. > Esta vez, insisto, por si alguien se motiva a ayudarme =D y explicarme. > > Tengo 2 archivos .glade y 2 .py: > wnEdit.glade (txtValues, btnChange) > wnMain.glade (lblValues, btnChange) > > **************************************************************************************** > > change.py: > **************************************************************************************** > > 1 #! /usr/bin/env python > 2 > 3 import pygtk > 4 pygtk.require("2.0") > 5 import gtk > 6 from gtk import glade > 7 from GladeConnect import GladeConnect > 8 > 9 class change(GladeConnect): > 10 def __init__(self): > 11 GladeConnect.__init__(self, "glade/wnChange.glade") > 12 > 13 def on_btnChange_clicked(self, btn=None): > 14 self.wnChange.hide() > > **************************************************************************************** > > main.py > **************************************************************************************** > > 1 #!/usr/bin/env python > 2 > 3 import pygtk > 4 pygtk.require("2.0") > 5 import gtk > 6 from gtk import glade > 7 from GladeConnect import GladeConnect > 8 from change import * > 9 > 10 class main(GladeConnect): > 11 def __init__(self): > 12 GladeConnect.__init__(self, "glade/wnMain.glade") > 13 > 14 def on_btnChange_clicked(self, btn=None): > 15 popup = change() > 16 popup.wnChange.show() > 17 > 18 def start(self): > 19 gtk.main() > 20 return 0 > 21 > 22 if __name__=="__main__": > 23 app = main() > 24 app.start() > **************************************************************************************** > > > Lo que quiero hacer es: > - Abrir la primera ventana > - Hacer click en el boton de esa ventana para abrir una nueva > - En esa nueva escribir algo > - Hacer click en el boton de esa nueva ventana y refrescar > automaticamente el label > de la primera. > > > ¿cómo puedo hacerlo?. Hasta ahora la dinamica entre ventanas funciona...! > _______________________________________________ > Lista de correo Python-es http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From teritriano en gmail.com Tue Dec 9 23:35:55 2008 From: teritriano en gmail.com (Oscar (.teri) Triano) Date: Tue, 9 Dec 2008 23:35:55 +0100 Subject: xrc no reconoce wxPaintDC? In-Reply-To: <493E8316.9080608@soft-com.es> References: <8c50b5f00812080531l590bd9d4m6f7dfc4f3ee6974f@mail.gmail.com> <493E8316.9080608@soft-com.es> Message-ID: <8c50b5f00812091435o6856cd03wab4e9011ee203561@mail.gmail.com> El 9 de diciembre de 2008 15:39, Oswaldo Hernández escribió: > Oscar (.teri) Triano escribió: > > Haciendo una aplicación en wxGlade 4.1 meto un "custom widget" como >> wxPaintDC para dibujar. Genero el código el xrc. >> Sin embargo al cargar la interfaz, sale un error: >> >> No handler found for XML node 'object', class 'wxPaintDC'! >> >> Me he asegurado de que esté escrito bien, incluso lo he mirado dentro del >> archivo xrc. Pero nada de nada. >> ¿Estoy haciendo algo mal? >> > > Creo que te estas liando, wx.PaintDC no es un widget que puedas poner como > si fuera un textbox, es una clase para dibujar cuando se produce un evento > OnPaint. > Gracias por contestar. He leído más a fondo la clase y ya he entendido cómo funciona. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From magmaxlistas en gmail.com Wed Dec 10 07:39:43 2008 From: magmaxlistas en gmail.com (Miguel =?ISO-8859-1?B?wW5nZWwgR2FyY+1h?=) Date: Wed, 10 Dec 2008 07:39:43 +0100 Subject: Uso de GTK y Glade en Windows In-Reply-To: <50ed08f40812050425v2035a98bkc00661fa5792d242@mail.gmail.com> References: <50ed08f40812050425v2035a98bkc00661fa5792d242@mail.gmail.com> Message-ID: <20081210073943.49db7bc3@tormenta> Hola! Yo lo tengo todo funcionando en Windows más o menos bien. Aunque quizá tengas unas librerías un pelín antiguas, yo te recomiendo que te pases por aquí[1]. Al final de la página, te encontrarás con este link[2]. Es un poco rollo, ya que cada paquete va por separado, pero en general creo que es de gran ayuda. Después puedes tratar de ir actualizando cada librería, pero ya con pygtk funcionando. Aún así, es probable que te falte alguna librería, que tendrás que ir buscando a mano, quizá de la web de gtk[3]. No es el único "all in one". Si sigo buscando, me encuentro éste que parece más actualizado[4]. El truco es buscar en google "pygtk all in one" y ya está :-D Suerte!! [1] http://aruiz.typepad.com/siliconisland/2006/12/allinone_win32_.html [2] http://osl.ulpgc.es/~arc/gnome/pygtk-setup.exe [3] http://www.gtk.org/download-windows.html [4] http://mail.gnome.org/archives/gtk-win32-list/2008-April/msg00000.html El Fri, 5 Dec 2008 13:25:29 +0100 Vicent escribió: > Un saludo a tod en s. > > Una pregunta rápida y sencilla. > > Tengo instalado Python 2.5.2 en Windows. Me he bajado GTK y Glade para > Windows. > > Ahora, ¿cómo lo hago funcionar todo? Es decir, me he bajado unos > archivos .ZIP que contienen la instalación de GTK y de Glade. > > Al descomprimirlos, se generan una serie de carpetas como "bin", > "contrib", "etc", "include", "lib", "share" y otras. > > ¿He de copiar esas carpetas al directorio donde tengo instalado > Python? > > ¿Alguna referencia en Internet sobre cómo instalar y manejar estas > aplicaciones o extensiones? > > Gracias de antemano. > > -- In a world without walls and fences, who needs Windows and Gates? _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From inigo_aldazabal en ehu.es Wed Dec 10 10:04:58 2008 From: inigo_aldazabal en ehu.es (Inigo Aldazabal Mensa) Date: Wed, 10 Dec 2008 10:04:58 +0100 Subject: Uso de GTK y Glade en Windows In-Reply-To: <50ed08f40812050425v2035a98bkc00661fa5792d242@mail.gmail.com> References: <50ed08f40812050425v2035a98bkc00661fa5792d242@mail.gmail.com> Message-ID: <200812101004.59799.inigo_aldazabal@ehu.es> El Viernes, 5 de Diciembre de 2008 13:25, Vicent escribió: > Un saludo a tod en s. > > Una pregunta rápida y sencilla. > > Tengo instalado Python 2.5.2 en Windows. Me he bajado GTK y Glade para > Windows. > > Ahora, ¿cómo lo hago funcionar todo? Es decir, me he bajado unos > archivos .ZIP que contienen la instalación de GTK y de Glade. > > Al descomprimirlos, se generan una serie de carpetas como "bin", > "contrib", "etc", "include", "lib", "share" y otras. > Puedes encontrar un instalador para GTK y Glade para windows aquí -> http://gladewin32.sourceforge.net/ > ¿He de copiar esas carpetas al directorio donde tengo instalado Python? > > ¿Alguna referencia en Internet sobre cómo instalar y manejar estas > aplicaciones o extensiones? > > Gracias de antemano. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jgonzalez en grupopitaco.com Wed Dec 10 13:03:48 2008 From: jgonzalez en grupopitaco.com (=?iso-8859-1?Q?Javier_Gonz=E1lez?=) Date: Wed, 10 Dec 2008 13:03:48 +0100 Subject: MySQL y refrescar una conexion activa Message-ID: <000601c95abf$5d350920$0a01a8c0@pcjavi> Hola a todos, tengo en siguiente problema, tengo una pequeña aplicacion que usa como base de datos mysql, este programita lo usan varias personas a la vez, y me he encontrado con el problema de que cuando uno añade, modifica, o elimina un registro de una tabla ninguno de los otros usuarios se enteran de ello hasta que cierran la aplicacion y la vuelven a abrir. Se que esta relacionaddo con mantener la conexion abierta durante toda la vida del programa. Entiendo que si cada vez que hago cualquier acceso a la base de datos abriera y cerrara la conexion esto no me pasaria, pero la cuestion es que me gustaria saber si hay alguna manera, digamos, como de volcar y refrescar la conexion sin necesidad de volverla a abrir. Gracias por vuestra ayuda, Javi _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jcea en jcea.es Wed Dec 10 14:06:41 2008 From: jcea en jcea.es (Jesus Cea) Date: Wed, 10 Dec 2008 14:06:41 +0100 Subject: No quiero recibir mas los mensajes de esta lista In-Reply-To: <2c9fb0dd0811280138m6db3eb7bxd13dc737ee7afaeb@mail.gmail.com> References: <2c9fb0dd0811280138m6db3eb7bxd13dc737ee7afaeb@mail.gmail.com> Message-ID: <493FBEE1.7060005@jcea.es> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Chema Cortes wrote: > En cuanto a tu etapa "minimalista", tengo que darte en parte la razón. > Pero hay que ser consciente que las metáforas de escritorio no son el > origen de todos los males. Renegar de los toolkits gráficos para pasar > a páginas html+css implica que parte de la potencia que necesitas la > estás obteniendo de las redes de comunicaciones y de los servidores > web. Por no querer seguir el juego de los vendedores de hardware > gráfico estás pasando a depender de las empresas de comunicaciones y > de los propietarios de las grandes redes sociales. Es un tema para > reflexionar. Yo uso micro-servidores web integrados en mis programas para poder gestionarlos a través del navegador web, conectando al 127.0.0.1. Osea, en la propia máquina. De esta forma me evito tener que aprender a programar un toolkit gráfico, utilizo tecnología que ya conozco (web) y, de rebote, puedo acceder a los programas de forma remota si es necesario. - -- Jesus Cea Avion _/_/ _/_/_/ _/_/_/ jcea en jcea.es - http://www.jcea.es/ _/_/ _/_/ _/_/ _/_/ _/_/ jabber / xmpp:jcea en jabber.org _/_/ _/_/ _/_/_/_/_/ . _/_/ _/_/ _/_/ _/_/ _/_/ "Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ "My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/ "El amor es poner tu felicidad en la felicidad de otro" - Leibniz -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.8 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iQCVAwUBST++3Jlgi5GaxT1NAQJ36wP/eue/PUbbEhVj++7yyWmVOmFbeJJdTHa3 ++sA0t/kvZejpgcdDJzFeh29Ew6SRDBoKnOxqY0vtpZw89JwNsxmZvdS+uXgKkcl Ck1G1qUgDng7Ss0BxQNiIlI7094e2LAGl7F0U9Sp9fQmLFU/U4i+6MkVGGAz4AJu MaHRrRx5zqw= =Scvc -----END PGP SIGNATURE----- ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From cristhianboujon en gmail.com Wed Dec 10 16:35:17 2008 From: cristhianboujon en gmail.com (Cristhian Boujon) Date: Wed, 10 Dec 2008 12:35:17 -0300 Subject: [OT 70%] problemas con el "_" en IDLE de Ubuntu In-Reply-To: <771741b20812062123g3355bf50qc84ef6df406157b2@mail.gmail.com> References: <771741b20812062123g3355bf50qc84ef6df406157b2@mail.gmail.com> Message-ID: absolutamente, era por la fuente. Gracias. 2008/12/7 Mario Lacunza > 2008/12/6 Cristhian Boujon > > > En Ubuntu 8.10 en el IDLE de Python no me aparecen los "_" Python sabe > que > > están ahí pero yo solo veo un espacio en blanco, alguien saba por que? es > > realemente molesto y presta a confusion. > > > > -- > > Cristhian A. Boujon > > --------------------------------- > > http//esintuitivo.blogspot.com > > _______________________________________________ > > Lista de correo Python-es > > http://listas.aditel.org/listinfo/python-es > > FAQ: http://listas.aditel.org/faqpyes > > > > > Has probado cambiandole la fuente? > -- > Saludos / Best regards > > Mario Lacunza > Software Architect - Webmaster > > Email: mlacunza [AT] gmail [DOT] com > http://www.lacunza.info > Lima - Peru > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- Cristhian A. Boujon --------------------------------- http//esintuitivo.blogspot.com _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From parodi.fer en gmail.com Wed Dec 10 21:03:29 2008 From: parodi.fer en gmail.com (fernando parodi) Date: Wed, 10 Dec 2008 17:03:29 -0300 Subject: Graficos Message-ID: <6d2760090812101203n674eacbbxd045f7d338895184@mail.gmail.com> Hey gracias por responder. ya mire algo de eso y creo que con todo el poder del mathplotlib de puede hasta curvar el espacio-tiempo jaja. pero lo que yo quiero es dibujar lineas y rectangulos en un form nada de ciencia de cohetes, muchas gracias por la ayuda _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From mlacunza en gmail.com Wed Dec 10 21:15:52 2008 From: mlacunza en gmail.com (Mario Lacunza) Date: Wed, 10 Dec 2008 15:15:52 -0500 Subject: MySQL y refrescar una conexion activa In-Reply-To: <000601c95abf$5d350920$0a01a8c0@pcjavi> References: <000601c95abf$5d350920$0a01a8c0@pcjavi> Message-ID: <771741b20812101215h42440ec3oce88adb247b3749e@mail.gmail.com> 2008/12/10 Javier González > Hola a todos, tengo en siguiente problema, tengo una pequeña aplicacion > que usa como base de datos mysql, este programita lo usan varias personas > a la vez, y me he encontrado con el problema de que cuando uno añade, > modifica, o elimina un registro de una tabla ninguno de los otros usuarios > se enteran de ello hasta que cierran la aplicacion y la vuelven a abrir. Se > que esta relacionaddo con mantener la conexion abierta durante toda la vida > del programa. Entiendo que si cada vez que hago cualquier acceso a la base > de datos abriera y cerrara la conexion esto no me pasaria, pero la cuestion > es que me gustaria saber si hay alguna manera, digamos, como de volcar y > refrescar la conexion sin necesidad de volverla a abrir. > > Gracias por vuestra ayuda, Javi > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > Hola, lee un poco mas sobre la DBAPI de Python y sobre manejo de conexiones. La verdad q no tiene q ver con eso q dices, solo tienes q refrescar los datos, es decir volver a correr el select, xq por arte de magia tu cursor (q es un objeto) no tiene la forma de enterarse que se agregaron mas registros en la BD. El resto de cosas es ya cuestion de modelado de datos y diseño. -- Saludos / Best regards Mario Lacunza Software Architect - Webmaster Email: mlacunza [AT] gmail [DOT] com http://www.lacunza.info Lima - Peru ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From mlacunza en gmail.com Wed Dec 10 21:16:22 2008 From: mlacunza en gmail.com (Mario Lacunza) Date: Wed, 10 Dec 2008 15:16:22 -0500 Subject: MySQL y refrescar una conexion activa In-Reply-To: <000601c95abf$5d350920$0a01a8c0@pcjavi> References: <000601c95abf$5d350920$0a01a8c0@pcjavi> Message-ID: <771741b20812101216n6197be80ga895185ca58369de@mail.gmail.com> 2008/12/10 Javier González > Hola a todos, tengo en siguiente problema, tengo una pequeña aplicacion > que usa como base de datos mysql, este programita lo usan varias personas > a la vez, y me he encontrado con el problema de que cuando uno añade, > modifica, o elimina un registro de una tabla ninguno de los otros usuarios > se enteran de ello hasta que cierran la aplicacion y la vuelven a abrir. Se > que esta relacionaddo con mantener la conexion abierta durante toda la vida > del programa. Entiendo que si cada vez que hago cualquier acceso a la base > de datos abriera y cerrara la conexion esto no me pasaria, pero la cuestion > es que me gustaria saber si hay alguna manera, digamos, como de volcar y > refrescar la conexion sin necesidad de volverla a abrir. > > Gracias por vuestra ayuda, Javi > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > Hola, lee un poco mas sobre la DBAPI de Python y sobre manejo de conexiones. La verdad q no tiene q ver con eso q dices, solo tienes q refrescar los datos, es decir volver a correr el select, xq por arte de magia tu cursor (q es un objeto) no tiene la forma de enterarse que se agregaron mas registros en la BD. El resto de cosas es ya cuestion de modelado de datos y diseño. -- Saludos / Best regards Mario Lacunza Software Architect - Webmaster Email: mlacunza [AT] gmail [DOT] com http://www.lacunza.info Lima - Peru ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From hidura en gmail.com Wed Dec 10 21:26:28 2008 From: hidura en gmail.com (Hidura) Date: Wed, 10 Dec 2008 16:26:28 -0400 Subject: Graficos In-Reply-To: <6d2760090812101203n674eacbbxd045f7d338895184@mail.gmail.com> References: <6d2760090812101203n674eacbbxd045f7d338895184@mail.gmail.com> Message-ID: <4bbf7fb20812101226k3edc96e7rafdb5dac0e92b7c4@mail.gmail.com> Buenas, realmente yo tambien estoy enredado en lo mismo y casi me doy un tiro con el pygtk DrawingArea, pero por suerte existe Cairo una libreria que hace dibujos vectoriales la documentacion esta mayormente en C pero aqui te dejo el link de la documentacion en python http://www.cairographics.org/documentation/ En la parte de abajo se encuentran los tutoriales de pyhon Suerte 2008/12/10 fernando parodi > Hey gracias por responder. > ya mire algo de eso y creo que con todo el poder del mathplotlib de puede > hasta curvar el espacio-tiempo jaja. > pero lo que yo quiero es dibujar lineas y rectangulos en un form nada de > ciencia de cohetes, > muchas gracias por la ayuda > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- Hidura _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From luesmo_2 en ono.com Wed Dec 10 22:17:20 2008 From: luesmo_2 en ono.com (luesmo_2 en ono.com) Date: Wed, 10 Dec 2008 22:17:20 +0100 (CET) Subject: Graficos Message-ID: <17680918.28341228943840592.JavaMail.root@resprs03> Yo estoy utilizando Tkinter y es bastante sencillo para cosas sencillas. No se puede imprimir directamente los gráficos, pero se puede crear un mapa de bit y luego imprimirlos. He utilizado fichero *. ps y funciona. Creo que de todo, es lo más sencillo. Luis ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From eliben en gmail.com Thu Dec 11 09:01:20 2008 From: eliben en gmail.com (Eli Bendersky) Date: Thu, 11 Dec 2008 10:01:20 +0200 Subject: Graficos In-Reply-To: <6d2760090812051820k6ff4d99ag22b6cab466351d0d@mail.gmail.com> References: <6d2760090812051820k6ff4d99ag22b6cab466351d0d@mail.gmail.com> Message-ID: <95cf475a0812110001t2b6aeef8ic925ce71aeb0d7ba@mail.gmail.com> PyGame es la libreria para escribir videojuegos, pero es usado para las visualizaciones graficos tambien. Es muy sencillo escribir codigo que crea graficos bonitos i dynamicos en PyGame. En su sitio web ( http://www.pygame.org/) tienen ejemplos del aplicaciones graficos, y no solo juegos. Eli On 06/12/2008, fernando parodi wrote: > > Hola gente este es mi primer mensaje, estoy aprendiendo python y me parece > fantastico, potente y lo mejor sin mil vueltas para hacer nada. > > Yo soy estudiante de ing civil, y programador aficionado y mi > unicaexperiencia anterior programando es con un HP49 > jajaja (algo es algo). y como la mejor forma de aprender programcion es > programando, estoy en escribiendo un prg para un cuestión de flujo en > canales abiertos y necesito gráficos los ing hablamos con graficos, cosa > que > se me esta complicando(tal vez la solucion sea una papa). La interface > grafica la hice con wxGlade que es milagroso, pero no puedo graficar nada > en > él, trate de entender el ejemplo que esta en > http://wiki.wxpython.org/VerySimpleDrawing y dibujar en un panel pero > nada, > probe con pythong salen cosas lindas pero esta en otra ventana y me > gustaria > que este todo en un solo from, y asi estoy con lindas planillas de > resultado > pero un bendito grafico. > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From inigo_aldazabal en ehu.es Thu Dec 11 10:39:59 2008 From: inigo_aldazabal en ehu.es (Inigo Aldazabal Mensa) Date: Thu, 11 Dec 2008 10:39:59 +0100 Subject: Graficos In-Reply-To: <4bbf7fb20812101226k3edc96e7rafdb5dac0e92b7c4@mail.gmail.com> References: <6d2760090812101203n674eacbbxd045f7d338895184@mail.gmail.com> <4bbf7fb20812101226k3edc96e7rafdb5dac0e92b7c4@mail.gmail.com> Message-ID: <200812111040.00438.inigo_aldazabal@ehu.es> El Miércoles, 10 de Diciembre de 2008 21:26, Hidura escribió: > Buenas, realmente yo tambien estoy enredado en lo mismo y casi me doy un > tiro con el pygtk DrawingArea, pero por suerte existe Cairo una libreria > que hace dibujos vectoriales la documentacion esta mayormente en C pero > aqui te dejo el link de la documentacion en python > > http://www.cairographics.org/documentatio >n/ En la parte de abajo se encuentran los tutoriales de pyhon > Suerte Yo también voto por cairo. > > 2008/12/10 fernando parodi > > > Hey gracias por responder. > > ya mire algo de eso y creo que con todo el poder del mathplotlib de > > puede hasta curvar el espacio-tiempo jaja. > > pero lo que yo quiero es dibujar lineas y rectangulos en un form nada > > de ciencia de cohetes, > > muchas gracias por la ayuda > > _______________________________________________ > > Lista de correo Python-es > > http://listas.aditel.org/listinfo/python-es > > FAQ: http://listas.aditel.org/faqpyes _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jjachuf en gmail.com Thu Dec 11 13:29:17 2008 From: jjachuf en gmail.com (Jose Jachuf) Date: Thu, 11 Dec 2008 09:29:17 -0300 Subject: Graficos In-Reply-To: <6d2760090812051820k6ff4d99ag22b6cab466351d0d@mail.gmail.com> References: <6d2760090812051820k6ff4d99ag22b6cab466351d0d@mail.gmail.com> Message-ID: <4941079D.2030905@gmail.com> fernando parodi escribió: > Hola gente este es mi primer mensaje, estoy aprendiendo python y me parece > fantastico, potente y lo mejor sin mil vueltas para hacer nada. > > Yo soy estudiante de ing civil, y programador aficionado y mi > unicaexperiencia anterior programando es con un HP49 > jajaja (algo es algo). y como la mejor forma de aprender programcion es > programando, estoy en escribiendo un prg para un cuestión de flujo en > canales abiertos y necesito gráficos los ing hablamos con graficos, cosa que > se me esta complicando(tal vez la solucion sea una papa). La interface > grafica la hice con wxGlade que es milagroso, pero no puedo graficar nada en > él, trate de entender el ejemplo que esta en > http://wiki.wxpython.org/VerySimpleDrawing y dibujar en un panel pero nada, > probe con pythong salen cosas lindas pero esta en otra ventana y me gustaria > que este todo en un solo from, y asi estoy con lindas planillas de resultado > pero un bendito grafico. Hola Fernando Mirá esto [1], creo que es lo que estas buscando: [1] http://zetcode.com/wxpython/gdi/ Saludos José _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From rene.parrado en gmail.com Thu Dec 11 14:21:26 2008 From: rene.parrado en gmail.com (Rene Parrado) Date: Thu, 11 Dec 2008 09:21:26 -0400 Subject: =?iso-8859-1?q?Gr=E1ficas_estatisticas?= Message-ID: Hola, ahora que últimamente se ha tocado el tema de gráficos, será que existe alguna librería o algo asi orientada para realizar gráficas estadísticas (tortas, lineas, barras, 3D, etc) y que se puedan personalizar en fondos y colores, etc. Les agradeceré si me pasan el dato gracias Rene _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From dani en danigm.net Thu Dec 11 14:36:23 2008 From: dani en danigm.net (Daniel Garcia Moreno) Date: Thu, 11 Dec 2008 14:36:23 +0100 Subject: =?UTF-8?Q?Re:__Gr=C3=A1ficas_estatisticas?= In-Reply-To: References: Message-ID: <31bcc7d50812110536o4393ffb6k3541bcfbf1e2a439@mail.gmail.com> 2008/12/11 Rene Parrado > Hola, ahora que últimamente se ha tocado el tema de gráficos, será que > existe alguna librería o algo asi orientada para realizar gráficas > estadísticas (tortas, lineas, barras, 3D, etc) y que se puedan > personalizar en fondos y colores, etc. > > Les agradeceré si me pasan el dato pycha dibuja gráficas con cairo http://www.lorenzogil.com/projects/pycha/ ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From lodeale en gmail.com Thu Dec 11 15:22:53 2008 From: lodeale en gmail.com (ALEJANDRO ZAPIOLA) Date: Thu, 11 Dec 2008 11:22:53 -0300 Subject: =?iso-8859-1?q?=BFos=2Eforck_en_win=3F?= Message-ID: <222758470812110622w2c3a76aft7ecac52e584cb50d@mail.gmail.com> Que tal nesesito que me saquen una duda. Para hacer un demonio con un proceso en linux usan un script asi: if DAEMON == 1: pid = os.fork() if pid: os._exit(0) Resulta que en win en la libreria "os" no se encuentra "fork()". ¿este fork() en win lo suplanto por otro?¿mi libreria es vieja?¿otra cosa que pueda ser? desde ya muchas gracias... _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From listas en soft-com.es Thu Dec 11 16:04:18 2008 From: listas en soft-com.es (=?ISO-8859-1?Q?Oswaldo_Hern=E1ndez?=) Date: Thu, 11 Dec 2008 16:04:18 +0100 Subject: =?ISO-8859-1?Q?=BFos=2Eforck_en_win=3F?= In-Reply-To: <222758470812110622w2c3a76aft7ecac52e584cb50d@mail.gmail.com> References: <222758470812110622w2c3a76aft7ecac52e584cb50d@mail.gmail.com> Message-ID: <49412BF2.7080607@soft-com.es> ALEJANDRO ZAPIOLA escribió: > Que tal nesesito que me saquen una duda. Para hacer un demonio con un > proceso en linux usan un script asi: > > if DAEMON == 1: > pid = os.fork() > if pid: > os._exit(0) > > Resulta que en win en la libreria "os" no se encuentra "fork()". > ¿este fork() en win lo suplanto por otro?¿mi libreria es vieja?¿otra cosa > que pueda ser? > fork no funciona en windows. Si lo que quieres es hacer un servicio para windows con las extensiones win32 se puede hacer. Saludos, -- ***************************************** Oswaldo Hernández oswaldo (@) soft-com (.) es ***************************************** PD: Antes de imprimir este mensaje, asegúrese de que es necesario. El medio ambiente está en nuestra mano. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jgomezdans en gmail.com Thu Dec 11 16:19:16 2008 From: jgomezdans en gmail.com (Jose =?iso-8859-1?q?G=F3mez-Dans?=) Date: Thu, 11 Dec 2008 15:19:16 +0000 Subject: =?iso-8859-1?q?Gr=E1ficas?= estatisticas In-Reply-To: References: Message-ID: <200812111519.17108.jgomezdans@gmail.com> On Thursday 11 December 2008 13:21:26 Rene Parrado wrote: > Hola, ahora que últimamente se ha tocado el tema de gráficos, será que > existe alguna librería o algo asi orientada para realizar gráficas > estadísticas (tortas, lineas, barras, 3D, etc) y que se puedan > personalizar en fondos y colores, etc. matplotlib? -- Department of Geography, University College London Gower Street, London WC1E 6BT, UK _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From vladimir.sanjinez en gmail.com Thu Dec 11 18:42:29 2008 From: vladimir.sanjinez en gmail.com (Vladimir Sanjinez) Date: Thu, 11 Dec 2008 13:42:29 -0400 Subject: distribuir aplicacion Message-ID: <8ba571dd0812110942k70d248cdo5d4cbc04068b2cef@mail.gmail.com> Estoy tratando por primera vez de empaquetar una pequeña aplicacion (.egg) para poder distribuirla, mi conculta es si existe alguna posibilidad de poner el ejecutable en el menu de aplicaciones o en el escritorio. saludos Vladi _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From fancisco.torrez en gmail.com Thu Dec 11 18:45:32 2008 From: fancisco.torrez en gmail.com (Fancisco Torrez) Date: Thu, 11 Dec 2008 13:45:32 -0400 Subject: Alternativas para reportes Message-ID: <3899f8090812110945q1224d70eh9cb85683510af75d@mail.gmail.com> Hola, deseo consultar cuales son las mejores alternativas para obtener reportes (.pdf) dentro una aplicacion? gracias Fancis _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From mlacunza en gmail.com Thu Dec 11 20:10:21 2008 From: mlacunza en gmail.com (Mario Lacunza) Date: Thu, 11 Dec 2008 14:10:21 -0500 Subject: Alternativas para reportes In-Reply-To: <3899f8090812110945q1224d70eh9cb85683510af75d@mail.gmail.com> References: <3899f8090812110945q1224d70eh9cb85683510af75d@mail.gmail.com> Message-ID: <771741b20812111110t52779b2dn82f21f6ed6caa09d@mail.gmail.com> El 11 de diciembre de 2008 12:45, Fancisco Torrez escribió: > Hola, deseo consultar cuales son las mejores alternativas para obtener > reportes (.pdf) dentro una aplicacion? > > gracias > > Fancis > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > Reportlab, creo q es lo mejor. ReportLab - Open Source Software -- Saludos / Best regards Mario Lacunza Software Architect - Webmaster Email: mlacunza [AT] gmail [DOT] com http://www.lacunza.info Lima - Peru ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From maengora en gmail.com Thu Dec 11 20:17:15 2008 From: maengora en gmail.com (=?ISO-8859-1?Q?Manuel_Enrique_Gonz=E1lez_Ram=EDrez?=) Date: Thu, 11 Dec 2008 14:17:15 -0500 Subject: Alternativas para reportes In-Reply-To: <771741b20812111110t52779b2dn82f21f6ed6caa09d@mail.gmail.com> References: <3899f8090812110945q1224d70eh9cb85683510af75d@mail.gmail.com> <771741b20812111110t52779b2dn82f21f6ed6caa09d@mail.gmail.com> Message-ID: Mira el este blog http://maengora.blogspot.com 2008/12/11 Mario Lacunza > El 11 de diciembre de 2008 12:45, Fancisco Torrez < > fancisco.torrez en gmail.com > > escribió: > > > Hola, deseo consultar cuales son las mejores alternativas para obtener > > reportes (.pdf) dentro una aplicacion? > > > > gracias > > > > Fancis > > _______________________________________________ > > Lista de correo Python-es > > http://listas.aditel.org/listinfo/python-es > > FAQ: http://listas.aditel.org/faqpyes > > > > Reportlab, creo q es lo mejor. > > ReportLab - Open Source Software > > -- > Saludos / Best regards > > Mario Lacunza > Software Architect - Webmaster > > Email: mlacunza [AT] gmail [DOT] com > http://www.lacunza.info > Lima - Peru > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From greathector7 en gmail.com Fri Dec 12 05:56:35 2008 From: greathector7 en gmail.com (Hector Gonzalez) Date: Thu, 11 Dec 2008 22:56:35 -0600 Subject: Alternativas para reportes In-Reply-To: <3899f8090812110945q1224d70eh9cb85683510af75d@mail.gmail.com> References: <3899f8090812110945q1224d70eh9cb85683510af75d@mail.gmail.com> Message-ID: <889b354a0812112056l6d2801et6f5ed2c60cca7998@mail.gmail.com> tambien tienes agata q es de un grupo brasilero y desde mi punto de vista convence aunq te tocara probar y decidir por ti mismo. http://www.agata.org.br/ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From parodi.fer en gmail.com Fri Dec 12 13:35:02 2008 From: parodi.fer en gmail.com (fernando parodi) Date: Fri, 12 Dec 2008 09:35:02 -0300 Subject: Graficos Message-ID: <6d2760090812120435v67812ca8o270557e8b23ac40d@mail.gmail.com> Jose Jachuf: while true: print "Gracias!" Le di una mirada a la pagina que me dijiste y es exactamente lo que estaba buscando!! Aun que mi ingles es tan bueno como mi mandarin :) creo lo voy a entender sin mas problemas. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From parodi.fer en gmail.com Fri Dec 12 22:50:49 2008 From: parodi.fer en gmail.com (fernando parodi) Date: Fri, 12 Dec 2008 22:50:49 +0100 Subject: Python.org Message-ID: <6d2760090812121350i6691b480g8e8f394aa57d4195@mail.gmail.com> La pagina oficial www.python.org tiene algun problema? por que hace dias que estoy tratando de entrar y no hay caso. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From isantander en gmail.com Fri Dec 12 22:54:55 2008 From: isantander en gmail.com (=?ISO-8859-1?Q?Iv=E1n_Santander?=) Date: Fri, 12 Dec 2008 19:54:55 -0200 Subject: Python.org In-Reply-To: <6d2760090812121350i6691b480g8e8f394aa57d4195@mail.gmail.com> References: <6d2760090812121350i6691b480g8e8f394aa57d4195@mail.gmail.com> Message-ID: <140a67980812121354y2126e391q841fbcf78feb7b22@mail.gmail.com> 2008/12/12 fernando parodi : > La pagina oficial www.python.org tiene algun problema? > por que hace dias que estoy tratando de entrar y no hay caso. Yo ingrese sin problemas. Saludos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From francisco.palm en gmail.com Fri Dec 12 23:51:26 2008 From: francisco.palm en gmail.com (Francisco Palm) Date: Sat, 13 Dec 2008 18:21:26 +1930 Subject: Graficos In-Reply-To: <6d2760090812120435v67812ca8o270557e8b23ac40d@mail.gmail.com> References: <6d2760090812120435v67812ca8o270557e8b23ac40d@mail.gmail.com> Message-ID: 2008/12/13 fernando parodi > Jose Jachuf: > > while true: > print "Gracias!" > > Le di una mirada a la pagina que me dijiste y es exactamente lo que estaba > buscando!! > Aun que mi ingles es tan bueno como mi mandarin :) creo lo voy a entender > sin mas problemas. Es decir que puedes entender mandarín sin más problemas!!! enhorabuena!!! ja ja ja Saludos F. Palm -- -------------------------------------- fpalm en ula.ve francisco.palm en gmail.com cel: 0414 5109177 tel: 0274 6352001 ---- Yo creo que todavía no es demasiado tarde para construir una utopía que nos permita compartir la tierra. Gabriel García Márquez. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jjachuf en gmail.com Sat Dec 13 13:55:27 2008 From: jjachuf en gmail.com (Jose Jachuf) Date: Sat, 13 Dec 2008 09:55:27 -0300 Subject: Graficos In-Reply-To: <6d2760090812120435v67812ca8o270557e8b23ac40d@mail.gmail.com> References: <6d2760090812120435v67812ca8o270557e8b23ac40d@mail.gmail.com> Message-ID: <4943B0BF.6020109@gmail.com> fernando parodi escribió: > Jose Jachuf: > > while true: > print "Gracias!" > De nada. Saludos Jose _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From alfonsodg en gmail.com Sun Dec 14 14:34:53 2008 From: alfonsodg en gmail.com (Alfonso de la Guarda) Date: Sun, 14 Dec 2008 08:34:53 -0500 Subject: Coordenadas geograficas y rasters Message-ID: Hola, Estoy trabajando en un proyecto, donde lo único que resta es implementar una clase donde pueda leer una imagen georeferenciada (geotif) y poder representar en ella la posición de un elemento (del cual me dan -también- su latitud y longitud). He revisado casi todos los proyectos existentes sobre gis y mapas y ninguno define claramente algún método que permita convertir coordenadas geográficas a posición en pixeles dentro de mapas georeferenciados. Alguien tiene algún acercamiento concreto sobre esto? O puede indicarme una web que resuleva este problema? usualmente me tomaría más tiempo para investigar pero estoy contra el reloj. Saludos, -------------------------------- Alfonso de la Guarda COS www.cosperu.com alfonsodg.blogspot.com alfonsodg.wordpress.com Telef. 997550914 1024D/B23B24A4 5469 ED92 75A3 BBDB FD6B 58A5 54A1 851D B23B 24A4 _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From luesmo_2 en ono.com Sun Dec 14 17:19:07 2008 From: luesmo_2 en ono.com (luesmo_2 en ono.com) Date: Sun, 14 Dec 2008 17:19:07 +0100 (CET) Subject: Coordenadas geograficas y rasters Message-ID: <2558828.128971229271547347.JavaMail.root@resprs01> Tú tienes unas coordenadas geógraficas Lat.y Lón. que estarán en un Datúm (supongamos en son coordenadas GPS dadas en el datúm WGS-84). Tienes que transformalas en coordenadas métricas, una posibilidad es transformarlas en UTM y otra que yo usé alguna vez en, ya hace mucho tiempo, fué coordenadas de trazado. Eliges una escala, paralelo medio y datum y dibujas el punto como si fuera en una carta. Como vas a usar geotif, la información anterior ya la sabrás y entoces tendrás que calcular la posición por el segundo método. Las fórmulas del cálculo de puntos, dependen del sistema que uso, yo donde vivo Es datum:Postdam (ED-50), proyección Mercator o datum WGS-84 y proyección UTM (Universal Transversa Mercator) y por lo tanto aplicaba las fórmulas adecuadas. En definitiva se trata de calcular unas coordenadas de trazado, dadas una escala, un paralelo medio y un datum. Sólo tienes que encontrar las fórmulas. Las longitudes son una simple regla de proporciones, pero las latidudes como son "latitudes crecientes" es decir un minuto de latitud no tiene el mismo tamaño en toda la carta, varia con la latitud, el cálculo es más complicado, aunque no creas que son 20 páginas, según creo recordar entre todo, ocupa una página, aunque habia un algoritmo recursivo para la precisión exigida. No sé si me habre explicado bien. Suerte. Luis... _______________________________________________ Lista de correo Python- es http://listas.aditel.org/listinfo/python-es FAQ: http://listas. aditel.org/faqpyes ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jgomezdans en gmail.com Sun Dec 14 22:04:15 2008 From: jgomezdans en gmail.com (Jose Gomez-Dans) Date: Sun, 14 Dec 2008 21:04:15 +0000 Subject: Coordenadas geograficas y rasters In-Reply-To: References: Message-ID: <91d218430812141304l13afbf40p4431222a93e15ef4@mail.gmail.com> Hola, 2008/12/14 Alfonso de la Guarda > Estoy trabajando en un proyecto, donde lo único que resta es > implementar una clase donde pueda leer una imagen georeferenciada > (geotif) y poder representar en ella la posición de un elemento (del > cual me dan -también- su latitud y longitud). > He revisado casi todos los proyectos existentes sobre gis y mapas y > ninguno define claramente algún método que permita convertir > coordenadas geográficas a posición en pixeles dentro de mapas > georeferenciados. Mucho, mucho... no debes de haber mirado. Sin ir más lejos, GDAL define una "geotransform" con las coordenadas de la esquina superior izquierda, el tamaño del píxel y un ángulo de rotación. Pasar de número de píxel a coordenadas con estas transformación es trivial. Una vez tengas tus coordenadas, reproyectarlas es también sencillo con GDAL (no sé si tu imagen está proyectada, en LatLong o en qué). Saludos, J -- Centre for Terrestrial Carbon Dynamics Department of Geography, University College London Gower Street, London WC1E 6BT, UK _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From alfonsodg en gmail.com Sun Dec 14 22:31:11 2008 From: alfonsodg en gmail.com (Alfonso de la Guarda) Date: Sun, 14 Dec 2008 16:31:11 -0500 Subject: Coordenadas geograficas y rasters In-Reply-To: <91d218430812141304l13afbf40p4431222a93e15ef4@mail.gmail.com> References: <91d218430812141304l13afbf40p4431222a93e15ef4@mail.gmail.com> Message-ID: José, Estuve trabajando con gdal, aunque esperaba que hubiese algún otro proyecto que simplemente ofreciera algún método que pudiera implementar en la aplicación, por otro lado no soy experto -precisamente- en temas geográficos y deseaba algo que me simplifique el proceso de inmersión en el tema (al cual estoy acostumbrado, pero en este caso el tiempo es un asesino). Voy a profundizar en gdal, aún cuando ya lo vengo empleando para otros menesteres. Gracias. Saludos, -------------------------------- Alfonso de la Guarda COS www.cosperu.com alfonsodg.blogspot.com alfonsodg.wordpress.com Telef. 997550914 1024D/B23B24A4 5469 ED92 75A3 BBDB FD6B 58A5 54A1 851D B23B 24A4 > Mucho, mucho... no debes de haber mirado. Sin ir más lejos, GDAL define una > "geotransform" con las coordenadas de la esquina superior izquierda, el > tamaño del píxel y un ángulo de rotación. Pasar de número de píxel a > coordenadas con estas transformación es trivial. Una vez tengas tus > coordenadas, reproyectarlas es también sencillo con GDAL (no sé si tu imagen > está proyectada, en LatLong o en qué). > > Saludos, > J > > > -- > Centre for Terrestrial Carbon Dynamics > Department of Geography, University College London > Gower Street, London WC1E 6BT, UK > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jgomezdans en gmail.com Mon Dec 15 12:50:44 2008 From: jgomezdans en gmail.com (Jose Gomez-Dans) Date: Mon, 15 Dec 2008 11:50:44 +0000 Subject: Coordenadas geograficas y rasters In-Reply-To: References: <91d218430812141304l13afbf40p4431222a93e15ef4@mail.gmail.com> Message-ID: <91d218430812150350p2cf97948l8a2e4489aed510a8@mail.gmail.com> Hola, 2008/12/14 Alfonso de la Guarda > Voy a profundizar en gdal, aún cuando ya lo vengo empleando para otros > menesteres. > Tu imagen es test.tif. Asimismo, asumo que quieres saber las coordenadas (x,y) de un pixel relacionadas con el centro del pixel (no con los lados). #!/usr/bin/python import osgeo.gdal as gdal import osgeo.osr as osr row = FILA col = COLUMNA g = gdal.Open ( "test.tif") proj = g.GetProjectionRef() # Cogemos la referencia espacial del GeoTIFF. Si no la tiene, la hay que especificar latlong = osr.SpatialReference() latlong.ImportFromProj4('+proj=latlong +datum=WGS84') # Esta es la referencia espacial para long/lat WGS84 transform = osr.CoordinateTransformation( proj, latlong ) #Definimos la conversión geoT = g.GetGeoTransform() #geoT es una lista con 6 elementos. El pixel (i,j) se corresponde a la posición (x,y) en el sistema de coordenadas de la imagen. x = geoT[0] + (row+0.5)*geoT[1] #Coordenada x en el sistema de proyección empleado por test.tif y = geoT[3] + (col+0.5)*geoT[5] #Idem para la coordenada y. Asumimos que no hay rotación (lon, lat, z) = transform.TransformPoint(x, y) # Convertimos (x,y) a longitud latitud Hay algunos apuntes más en jgomezdans.googlepages.com, un tanto anticuados, pero bueno, pueden servir :) J -- Centre for Terrestrial Carbon Dynamics Department of Geography, University College London Gower Street, London WC1E 6BT, UK _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From alfonsodg en gmail.com Mon Dec 15 18:57:12 2008 From: alfonsodg en gmail.com (Alfonso de la Guarda) Date: Mon, 15 Dec 2008 12:57:12 -0500 Subject: Coordenadas geograficas y rasters In-Reply-To: <91d218430812150350p2cf97948l8a2e4489aed510a8@mail.gmail.com> References: <91d218430812141304l13afbf40p4431222a93e15ef4@mail.gmail.com> <91d218430812150350p2cf97948l8a2e4489aed510a8@mail.gmail.com> Message-ID: Programa obtenido: Hola, este es el código resultante, al cual le he agregado 2 funciones que encontré en un proyecto y corregí algunos métodos. Muchas gracias por la referencia específica de geotransform.... me abrió completamente el panorama. #!/usr/bin/python #-*- encoding:utf-8 -*- import gdal import osr #import osgeo.gdal as gdal #import osgeo.osr as osr def PixelCoordToGeocoord(x,y,geotransform): px = geotransform[0] py = geotransform[3] px += geotransform[1] * x + geotransform[2] * y py += geotransform[4] * x + geotransform[5] * y print px,py return (px, py) def GeocoordToPixelCoord(px,py,geotransform): s = px - geotransform[0] t = py - geotransform[3] det = geotransform[1] * geotransform[5] - geotransform[2] * geotransform[4] x = (s * geotransform[5] - geotransform[2] * t) / det y = (t * geotransform[1] - geotransform[4] * s) / det print x,y return (x, y) g = gdal.Open ( "Scenery/fotos/lima_georef.tif") proj = osr.SpatialReference() proj.ImportFromWkt(g.GetProjection()) latlong = proj.CloneGeogCS() transform = osr.CoordinateTransformation( proj, latlong ) #Definimos la conversión geoT = g.GetGeoTransform()#geoT es una lista con 6 elementos. El pixel (i,j) se corresponde a laposición (x,y) en el sistema de coordenadas de la imagen. PixelCoordToGeocoord(40,50,geoT) GeocoordToPixelCoord(-77.1747454637,-12.0821216102,geoT) Saludos, -------------------------------- Alfonso de la Guarda COS www.cosperu.com alfonsodg.blogspot.com alfonsodg.wordpress.com Telef. 997550914 1024D/B23B24A4 5469 ED92 75A3 BBDB FD6B 58A5 54A1 851D B23B 24A4 2008/12/15 Jose Gomez-Dans : > Hola, > > 2008/12/14 Alfonso de la Guarda > >> Voy a profundizar en gdal, aún cuando ya lo vengo empleando para otros >> menesteres. >> > > Tu imagen es test.tif. Asimismo, asumo que quieres saber las coordenadas > (x,y) de un pixel relacionadas con el centro del pixel (no con los lados). > > #!/usr/bin/python > import osgeo.gdal as gdal > import osgeo.osr as osr > > row = FILA > col = COLUMNA > g = gdal.Open ( "test.tif") > proj = g.GetProjectionRef() # Cogemos la referencia espacial del GeoTIFF. Si > no la tiene, la hay que especificar > latlong = osr.SpatialReference() > latlong.ImportFromProj4('+proj=latlong +datum=WGS84') # Esta es la > referencia espacial para long/lat WGS84 > transform = osr.CoordinateTransformation( proj, latlong ) #Definimos la > conversión > > geoT = g.GetGeoTransform() > #geoT es una lista con 6 elementos. El pixel (i,j) se corresponde a la > posición (x,y) en el sistema de coordenadas de la imagen. > x = geoT[0] + (row+0.5)*geoT[1] #Coordenada x en el sistema de proyección > empleado por test.tif > y = geoT[3] + (col+0.5)*geoT[5] #Idem para la coordenada y. Asumimos que no > hay rotación > (lon, lat, z) = transform.TransformPoint(x, y) # Convertimos (x,y) a > longitud latitud > > > Hay algunos apuntes más en jgomezdans.googlepages.com, un tanto anticuados, > pero bueno, pueden servir :) > J > -- > Centre for Terrestrial Carbon Dynamics > Department of Geography, University College London > Gower Street, London WC1E 6BT, UK > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ikarush en gmail.com Tue Dec 16 14:09:13 2008 From: ikarush en gmail.com (=?UTF-8?Q?Daniel_Gonz=C3=A1lez?=) Date: Tue, 16 Dec 2008 14:09:13 +0100 Subject: Contar digitos en un string Message-ID: Hola a todos... ¿Como podría hacer para contar el número de digitos ( números ) en una cadena de texto? Saludos Daniel González Cerviño tel 653965048 ikarush en gmail.com ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From lasizoillo en gmail.com Tue Dec 16 14:32:14 2008 From: lasizoillo en gmail.com (lasizoillo) Date: Tue, 16 Dec 2008 14:32:14 +0100 Subject: Contar digitos en un string In-Reply-To: References: Message-ID: <49414f570812160532r239da014ha8a0fe39b97ec0d4@mail.gmail.com> 2008/12/16 Daniel González : > Hola a todos... > > ¿Como podría hacer para contar el número de digitos ( números ) en una > cadena de texto? In [1]: a = "asdfsadf234dfs234sdf45345" In [2]: len([x for x in a if x.isdigit()]) Out[2]: 11 > > Saludos > > > Daniel González Cerviño > tel 653965048 > ikarush en gmail.com > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From agrelot en gmail.com Tue Dec 16 21:40:43 2008 From: agrelot en gmail.com (Agrelot) Date: Tue, 16 Dec 2008 18:40:43 -0200 Subject: Zope Message-ID: <98685fc90812161240r7154940cn9c86c6fafcb903dc@mail.gmail.com> Hola amigos ¿Alguien laburando con Zope2 o Zope 3 para hacerle algunas preguntas básicas?. (Para empezar bibliografía en castellano "libre"). Gracias _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From yourpadre en gmail.com Tue Dec 16 21:57:54 2008 From: yourpadre en gmail.com (Miguel Beltran R.) Date: Tue, 16 Dec 2008 14:57:54 -0600 Subject: Zope In-Reply-To: <98685fc90812161240r7154940cn9c86c6fafcb903dc@mail.gmail.com> References: <98685fc90812161240r7154940cn9c86c6fafcb903dc@mail.gmail.com> Message-ID: Yo se un poco de zope2, pero seria mejor que cambiaramos a la lista de zope-es http://listas.aditel.org/listinfo/zope-es 2008/12/16 Agrelot > Hola amigos ¿Alguien laburando con Zope2 o Zope 3 para hacerle algunas > preguntas básicas?. (Para empezar bibliografía en castellano "libre"). > Gracias > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- ________________________________________ Lo bueno de vivir un dia mas es saber que nos queda un dia menos de vida _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From agrelot en gmail.com Tue Dec 16 22:06:41 2008 From: agrelot en gmail.com (Agrelot) Date: Tue, 16 Dec 2008 19:06:41 -0200 Subject: Zope In-Reply-To: References: <98685fc90812161240r7154940cn9c86c6fafcb903dc@mail.gmail.com> Message-ID: <98685fc90812161306n158d020bu78877c53eaa44195@mail.gmail.com> Gracias por el dato Miguel, no lo tenía. Ya me suscribo. 2008/12/16 Miguel Beltran R. > Yo se un poco de zope2, pero seria mejor que cambiaramos a la lista de > zope-es > http://listas.aditel.org/listinfo/zope-es > > 2008/12/16 Agrelot > > > Hola amigos ¿Alguien laburando con Zope2 o Zope 3 para hacerle algunas > > preguntas básicas?. (Para empezar bibliografía en castellano "libre"). > > Gracias > > _______________________________________________ > > Lista de correo Python-es > > http://listas.aditel.org/listinfo/python-es > > FAQ: http://listas.aditel.org/faqpyes > > > > > > -- > ________________________________________ > Lo bueno de vivir un dia mas > es saber que nos queda un dia menos de vida > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pyarnau en gmail.com Tue Dec 16 23:33:28 2008 From: pyarnau en gmail.com (Arnau Sanchez) Date: Tue, 16 Dec 2008 23:33:28 +0100 Subject: Contar digitos en un string In-Reply-To: <49414f570812160532r239da014ha8a0fe39b97ec0d4@mail.gmail.com> References: <49414f570812160532r239da014ha8a0fe39b97ec0d4@mail.gmail.com> Message-ID: <49482CB8.30902@gmail.com> lasizoillo escribió: >> ¿Como podría hacer para contar el número de digitos ( números ) en una >> cadena de texto? > > In [1]: a = "asdfsadf234dfs234sdf45345" > > In [2]: len([x for x in a if x.isdigit()]) > Out[2]: 11 Correcto, pero se crea una lista intermedia que usa memoria sin necesidad. Una alternativa es usar generadores: >>> sum(1 for c in a if c.isdigit()) 11 -- Web: http://www.arnau-sanchez.com _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From py en ch3m4.org Wed Dec 17 02:51:21 2008 From: py en ch3m4.org (Chema Cortes) Date: Wed, 17 Dec 2008 02:51:21 +0100 Subject: Contar digitos en un string In-Reply-To: <49482CB8.30902@gmail.com> References: <49414f570812160532r239da014ha8a0fe39b97ec0d4@mail.gmail.com> <49482CB8.30902@gmail.com> Message-ID: <200812170251.30561.py@ch3m4.org> El Tuesday 16 December 2008 23:33:28 Arnau Sanchez escribió: > lasizoillo escribió: > >> ¿Como podría hacer para contar el número de digitos ( números ) en una > >> cadena de texto? > > > > In [1]: a = "asdfsadf234dfs234sdf45345" > > > > In [2]: len([x for x in a if x.isdigit()]) > > Out[2]: 11 > > Correcto, pero se crea una lista intermedia que usa memoria sin necesidad. > > Una alternativa es usar generadores: > >>> sum(1 for c in a if c.isdigit()) > > 11 Había pensado en esta alternativa, pero sus ventajas no compensa el liar más el código. Por lo general, este tipo de comprobaciones se hacen en la introducción de datos en formularios, por lo que las cadenas no suelen ser demasiado largas. Pero si es por optimizar, ésta sería una mejor solución: sum(a.count(c) for c in "0123456789") Son sólo 9 sumas, independientemente de la longitud de la cadena. ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: This is a digitally signed message part. URL: ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ydavid04044 en grm.jovenclub.cu Wed Dec 17 04:55:00 2008 From: ydavid04044 en grm.jovenclub.cu (Yaicel M Rodriguez David) Date: Tue, 16 Dec 2008 21:55:00 -0600 Subject: =?iso-8859-1?q?=BFComo_trabajar_con_TextCtrl_en_Boa?= =?iso-8859-1?q?=3F?= References: <20081216205810.DE33715EF9EE@devnull.aditel.org> Message-ID: <000601c95ffb$4541f3f0$3b00a8c0@maq9> Hermanos de la Lista. Tengo instalado Boa-Construtor para Python 2.25 en mi PC. Luego de haber estudiar python para consola e intentado trabajrlo de modo grafico; pero e fallado, ya que no se como asignarle a una variable un valor x que se introdusca en el TextCtrl y luego que el resulado de un determinado calculo me lo muestre en otro TextCtrl. Saludos, yaicel _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From cdocarmo en adinet.com.uy Wed Dec 17 05:36:35 2008 From: cdocarmo en adinet.com.uy (Carlos D. Do Carmo) Date: Wed, 17 Dec 2008 01:36:35 -0300 Subject: =?ISO-8859-1?Q?=BFComo_trabajar_con_TextCt?= =?ISO-8859-1?Q?rl_en_Boa=3F?= In-Reply-To: <000601c95ffb$4541f3f0$3b00a8c0@maq9> References: <20081216205810.DE33715EF9EE@devnull.aditel.org> <000601c95ffb$4541f3f0$3b00a8c0@maq9> Message-ID: <494881D3.5050608@adinet.com.uy> Yaicel. El calculo tenes que hacer en lagun evento ya sea del TextCtrl o de un boton para tomar el datos debes hacer de esta manera x = self.TextCtrl.GetValue() Para ingresar un valor self.TextCtrl.SetValue(x) espero haberte ayudado Saludos Yaicel M Rodriguez David escribió: > Hermanos de la Lista. > Tengo instalado Boa-Construtor para Python 2.25 en mi PC. > Luego de haber estudiar python para consola e intentado trabajrlo de > modo grafico; pero e fallado, ya que no se como asignarle a una > variable un valor x que se introdusca en el TextCtrl y luego que el > resulado de un determinado calculo me lo muestre en otro TextCtrl. > Saludos, yaicel > > _______________________________________________ > Lista de correo Python-es http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From lorenzo.gil.sanchez en gmail.com Wed Dec 17 09:07:41 2008 From: lorenzo.gil.sanchez en gmail.com (Lorenzo Gil Sanchez) Date: Wed, 17 Dec 2008 09:07:41 +0100 Subject: Zope In-Reply-To: <98685fc90812161240r7154940cn9c86c6fafcb903dc@mail.gmail.com> References: <98685fc90812161240r7154940cn9c86c6fafcb903dc@mail.gmail.com> Message-ID: http://www.muthukadan.net/docs/zca-es.html 2008/12/16 Agrelot : > Hola amigos ¿Alguien laburando con Zope2 o Zope 3 para hacerle algunas > preguntas básicas?. (Para empezar bibliografía en castellano "libre"). > Gracias > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From a.porrua en gmail.com Wed Dec 17 11:01:22 2008 From: a.porrua en gmail.com (antonio) Date: Wed, 17 Dec 2008 11:01:22 +0100 Subject: Contar digitos en un string In-Reply-To: <200812170251.30561.py@ch3m4.org> References: <49414f570812160532r239da014ha8a0fe39b97ec0d4@mail.gmail.com> <49482CB8.30902@gmail.com> <200812170251.30561.py@ch3m4.org> Message-ID: <1229508082.6870.61.camel@turingmachine> El mié, 17-12-2008 a las 02:51 +0100, Chema Cortes escribió: > El Tuesday 16 December 2008 23:33:28 Arnau Sanchez escribió: > > lasizoillo escribió: > > >> ¿Como podría hacer para contar el número de digitos ( números ) en una > > >> cadena de texto? > > > > > > In [1]: a = "asdfsadf234dfs234sdf45345" > > > > > > In [2]: len([x for x in a if x.isdigit()]) > > > Out[2]: 11 > > > > Correcto, pero se crea una lista intermedia que usa memoria sin necesidad. > > > > Una alternativa es usar generadores: > > >>> sum(1 for c in a if c.isdigit()) > > > > 11 > > Había pensado en esta alternativa, pero sus ventajas no compensa el liar más > el código. Por lo general, este tipo de comprobaciones se hacen en la > introducción de datos en formularios, por lo que las cadenas no suelen ser > demasiado largas. > > Pero si es por optimizar, ésta sería una mejor solución: > > sum(a.count(c) for c in "0123456789") > > Son sólo 9 sumas, independientemente de la longitud de la cadena. hablando de optimización. ¿No será más rápido, y ocupará menos memoria hacer la suma "a mano"? x=0 for i in a: if i>="0" and i<="9": x+=1 ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From dani en danigm.net Wed Dec 17 11:26:39 2008 From: dani en danigm.net (Daniel Garcia Moreno) Date: Wed, 17 Dec 2008 11:26:39 +0100 Subject: Contar digitos en un string In-Reply-To: <1229508082.6870.61.camel@turingmachine> References: <49414f570812160532r239da014ha8a0fe39b97ec0d4@mail.gmail.com> <49482CB8.30902@gmail.com> <200812170251.30561.py@ch3m4.org> <1229508082.6870.61.camel@turingmachine> Message-ID: <1229509599.8635.0.camel@mustrum> El mié, 17-12-2008 a las 11:01 +0100, antonio escribió: > El mié, 17-12-2008 a las 02:51 +0100, Chema Cortes escribió: > > El Tuesday 16 December 2008 23:33:28 Arnau Sanchez escribió: > > > lasizoillo escribió: > > > >> ¿Como podría hacer para contar el número de digitos ( números ) en una > > > >> cadena de texto? > > > > > > > > In [1]: a = "asdfsadf234dfs234sdf45345" > > > > > > > > In [2]: len([x for x in a if x.isdigit()]) > > > > Out[2]: 11 > > > > > > Correcto, pero se crea una lista intermedia que usa memoria sin necesidad. > > > > > > Una alternativa es usar generadores: > > > >>> sum(1 for c in a if c.isdigit()) > > > > > > 11 > > > > Había pensado en esta alternativa, pero sus ventajas no compensa el liar más > > el código. Por lo general, este tipo de comprobaciones se hacen en la > > introducción de datos en formularios, por lo que las cadenas no suelen ser > > demasiado largas. > > > > Pero si es por optimizar, ésta sería una mejor solución: > > > > sum(a.count(c) for c in "0123456789") > > > > Son sólo 9 sumas, independientemente de la longitud de la cadena. > > hablando de optimización. > > ¿No será más rápido, y ocupará menos memoria hacer la suma "a mano"? > x=0 > for i in a: > if i>="0" and i<="9": > x+=1 Esto hace algo parecido a lo que dijo Arnau, pero en más líneas. ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pyarnau en gmail.com Wed Dec 17 11:48:08 2008 From: pyarnau en gmail.com (Arnau Sanchez) Date: Wed, 17 Dec 2008 11:48:08 +0100 Subject: Contar digitos en un string In-Reply-To: <200812170251.30561.py@ch3m4.org> References: <49414f570812160532r239da014ha8a0fe39b97ec0d4@mail.gmail.com> <49482CB8.30902@gmail.com> <200812170251.30561.py@ch3m4.org> Message-ID: <4948D8E8.2010809@gmail.com> Chema Cortes escribió: > El Tuesday 16 December 2008 23:33:28 Arnau Sanchez escribió: >> lasizoillo escribió: >>>> ¿Como podría hacer para contar el número de digitos ( números ) en una >>>> cadena de texto? >>> In [1]: a = "asdfsadf234dfs234sdf45345" >>> >>> In [2]: len([x for x in a if x.isdigit()]) >>> Out[2]: 11 >> Correcto, pero se crea una lista intermedia que usa memoria sin necesidad. >> >> Una alternativa es usar generadores: >> >>> sum(1 for c in a if c.isdigit()) >> >> 11 > > Había pensado en esta alternativa, pero sus ventajas no compensa el liar más > el código. Por lo general, este tipo de comprobaciones se hacen en la > introducción de datos en formularios, por lo que las cadenas no suelen ser > demasiado largas. Sí, sí, claro, más que nada quería resaltar el detalle de la lista intermedia. Personalmente me gusta mucho la programación funcional y suelo tener ya creadas funciones como "iterlen" (que devuelve la longitud de un generador); por ese camino se podría escribir: iterlen(ifilter(str.isdigit, a)) donde: def iterlen(it): return sum(1 for _ in it) Aunque el consenso es que se entienden mejor las comprensiones de listas/generadores. Pero en fin, por claridad me quedaría con la versión de lasizoilo y listo. > Pero si es por optimizar, ésta sería una mejor solución: > > sum(a.count(c) for c in "0123456789") > > Son sólo 9 sumas, independientemente de la longitud de la cadena. Sí, ¿pero no hay que considerar además que cada count() debe recorrer completa la lista? aún así, seguro que ésta es la forma más rápida, de largo (debido a que la iteración la hace en C en vez de en Python). -- Web: http://www.arnau-sanchez.com ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jgomezdans en gmail.com Wed Dec 17 11:58:54 2008 From: jgomezdans en gmail.com (Jose Gomez-Dans) Date: Wed, 17 Dec 2008 11:58:54 +0100 Subject: Coordenadas geograficas y rasters In-Reply-To: References: <91d218430812141304l13afbf40p4431222a93e15ef4@mail.gmail.com> <91d218430812150350p2cf97948l8a2e4489aed510a8@mail.gmail.com> Message-ID: <91d218430812170258w1ec2adbbn4590eda0d6f90a7d@mail.gmail.com> Hola, > > > def PixelCoordToGeocoord(x,y,geotransform): > px = geotransform[0] > py = geotransform[3] > px += geotransform[1] * x + geotransform[2] * y > py += geotransform[4] * x + geotransform[5] * y > print px,py > return (px, py) Esto te da la coordenada de la esquina superior izquierda, no del centro del pixel . Es eso lo que quieres? J -- Centre for Terrestrial Carbon Dynamics Department of Geography, University College London Gower Street, London WC1E 6BT, UK _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pyarnau en gmail.com Wed Dec 17 12:19:37 2008 From: pyarnau en gmail.com (Arnau Sanchez) Date: Wed, 17 Dec 2008 12:19:37 +0100 Subject: Contar digitos en un string In-Reply-To: <1229508082.6870.61.camel@turingmachine> References: <49414f570812160532r239da014ha8a0fe39b97ec0d4@mail.gmail.com> <49482CB8.30902@gmail.com> <200812170251.30561.py@ch3m4.org> <1229508082.6870.61.camel@turingmachine> Message-ID: <4948E049.8000409@gmail.com> antonio escribió: > El mié, 17-12-2008 a las 02:51 +0100, Chema Cortes escribió: >> El Tuesday 16 December 2008 23:33:28 Arnau Sanchez escribió: >>> lasizoillo escribió: >>>>> ¿Como podría hacer para contar el número de digitos ( números ) en una >>>>> cadena de texto? >>>> In [1]: a = "asdfsadf234dfs234sdf45345" >>>> >>>> In [2]: len([x for x in a if x.isdigit()]) >>>> Out[2]: 11 >>> Correcto, pero se crea una lista intermedia que usa memoria sin necesidad. >>> >>> Una alternativa es usar generadores: >>> >>> sum(1 for c in a if c.isdigit()) >>> >>> 11 >> Había pensado en esta alternativa, pero sus ventajas no compensa el liar más >> el código. Por lo general, este tipo de comprobaciones se hacen en la >> introducción de datos en formularios, por lo que las cadenas no suelen ser >> demasiado largas. >> >> Pero si es por optimizar, ésta sería una mejor solución: >> >> sum(a.count(c) for c in "0123456789") >> >> Son sólo 9 sumas, independientemente de la longitud de la cadena. > > hablando de optimización. > > ¿No será más rápido, y ocupará menos memoria hacer la suma "a mano"? > x=0 > for i in a: > if i>="0" and i<="9": > x+=1 > No, piensa que en las líneas que usamos "sum" se hace una comprensión de generador, no se gasta más memoria (ya que no se genera lista intermedia), la suma se hace al vuelo. Es un ejemplo clásico entre una implementación iterativa y otra funcional. Estas dos funciones son equivalentes: def fun_iterativa(valor_inicial): resultado = valor_inicial for elemento in iterable: resultado = operacion(resultado, elemento) return resultado def fun_funcional(valor_inicial): return reduce(operacion, iterable, valor_inicial) Estarás de acuerdo que, sabiendo qué hace "reduce", es mucho más compacta y clara la segunda. En nuestro caso, "sum" no deja de ser un "reduce(operator.add, ...)" Aunque Python no es lenguaje funcional, se pueden aplicar algunos de sus principios. Te recomiendo que le eches una ojeada a links sobre el tema: http://www.amk.ca/python/writing/functional http://www.ibm.com/developerworks/library/l-prog.html -- Web: http://www.arnau-sanchez.com ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From faltet en pytables.org Wed Dec 17 12:19:52 2008 From: faltet en pytables.org (Francesc Alted) Date: Wed, 17 Dec 2008 12:19:52 +0100 Subject: Contar digitos en un string In-Reply-To: <4948D8E8.2010809@gmail.com> References: <200812170251.30561.py@ch3m4.org> <4948D8E8.2010809@gmail.com> Message-ID: <200812171219.52994.faltet@pytables.org> A Wednesday 17 December 2008, Arnau Sanchez escrigué: > > Pero si es por optimizar, ésta sería una mejor solución: > > > > sum(a.count(c) for c in "0123456789") > > > > Son sólo 9 sumas, independientemente de la longitud de la cadena. > > Sí, ¿pero no hay que considerar además que cada count() debe recorrer > completa la lista? aún así, seguro que ésta es la forma más rápida, > de largo (debido a que la iteración la hace en C en vez de en > Python). Me ha llamado la atención este hilo, y para zanjar dudas, aquí estan los números. Para cadenas cortas: In [40]: a = "asdfsadf234dfs234sdf45345" In [41]: timeit len([x for x in a if x.isdigit()]) 10000 loops, best of 3: 18.1 µs per loop In [42]: timeit sum(1 for c in a if c.isdigit()) 10000 loops, best of 3: 23.6 µs per loop In [43]: timeit sum(a.count(c) for c in "0123456789") 10000 loops, best of 3: 18.3 µs per loop Como se ve, no hay mucha diferencia entre las tres aproximaciones. Sin embargo, uno de estas aproximaciones es la más escalable. Usando una cadena realmente larga: In [44]: a = "asdfsadf234dfs234sdf45345"*1000 In [45]: timeit len([x for x in a if x.isdigit()]) 10 loops, best of 3: 14.3 ms per loop In [46]: timeit sum(1 for c in a if c.isdigit()) 10 loops, best of 3: 19 ms per loop In [47]: timeit sum(a.count(c) for c in "0123456789") 100 loops, best of 3: 1.11 ms per loop Por tanto, la solución de Chema es más de 10 veces más rápida que las otras (para cadenas suficientemente largas). Pues sí que da de sí esto de contar dígitos :-) -- Francesc Alted ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pyarnau en gmail.com Wed Dec 17 12:35:13 2008 From: pyarnau en gmail.com (Arnau Sanchez) Date: Wed, 17 Dec 2008 12:35:13 +0100 Subject: Contar digitos en un string In-Reply-To: <200812171219.52994.faltet@pytables.org> References: <200812170251.30561.py@ch3m4.org> <4948D8E8.2010809@gmail.com> <200812171219.52994.faltet@pytables.org> Message-ID: <4948E3F1.5060202@gmail.com> Francesc Alted escribió: > In [45]: timeit len([x for x in a if x.isdigit()]) > 10 loops, best of 3: 14.3 ms per loop > > In [46]: timeit sum(1 for c in a if c.isdigit()) > 10 loops, best of 3: 19 ms per loop > > In [47]: timeit sum(a.count(c) for c in "0123456789") > 100 loops, best of 3: 1.11 ms per loop > > Por tanto, la solución de Chema es más de 10 veces más rápida que las > otras (para cadenas suficientemente largas). > > Pues sí que da de sí esto de contar dígitos :-) Si nos pusiéramos a ello no dejaríamos de encontrar otras formas: In [21]:timeit sum(1 for _ in re.finditer("\d", a)) 100 loops, best of 3: 8.34 ms per loop :-) Pero la solución de Chema es imbatible! -- Web: http://www.arnau-sanchez.com ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From maengora en gmail.com Wed Dec 17 14:39:14 2008 From: maengora en gmail.com (=?ISO-8859-1?Q?Manuel_Enrique_Gonz=E1lez_Ram=EDrez?=) Date: Wed, 17 Dec 2008 08:39:14 -0500 Subject: =?ISO-8859-1?Q?Re:__=BFComo_trabajar_con_TextCtrl_en_Boa=3F?= In-Reply-To: <494881D3.5050608@adinet.com.uy> References: <20081216205810.DE33715EF9EE@devnull.aditel.org> <000601c95ffb$4541f3f0$3b00a8c0@maq9> <494881D3.5050608@adinet.com.uy> Message-ID: 2008/12/16 Carlos D. Do Carmo > Yaicel. > > El calculo tenes que hacer en lagun evento ya sea del TextCtrl o de un > boton > para tomar el datos debes hacer de esta manera > > x = self.TextCtrl.GetValue() > > Para ingresar un valor > > self.TextCtrl.SetValue(x) > > espero haberte ayudado > > Saludos > > Yaicel M Rodriguez David escribió: > > Hermanos de la Lista. >> Tengo instalado Boa-Construtor para Python 2.25 en mi PC. >> Luego de haber estudiar python para consola e intentado trabajrlo de modo >> grafico; pero e fallado, ya que no se como asignarle a una variable un valor >> x que se introdusca en el TextCtrl y luego que el resulado de un determinado >> calculo me lo muestre en otro TextCtrl. >> Saludos, yaicel >> >> _______________________________________________ >> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es >> FAQ: http://listas.aditel.org/faqpyes >> >> _______________________________________________ > Lista de correo Python-es http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > Completamente de acuerdo con Carlos, sin embargo si te vez muy perdido siempre es bueno que envies un pedazo de tu código para que todos los de la lista te podamos ayudar aún más. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From magmaxlistas en gmail.com Wed Dec 17 16:57:44 2008 From: magmaxlistas en gmail.com (Miguel =?ISO-8859-1?B?wW5nZWwgR2FyY+1h?=) Date: Wed, 17 Dec 2008 16:57:44 +0100 Subject: Python+GTK: mostrar un objeto distinto dependiendo de un combobox Message-ID: <20081217165744.037472ab@tormenta> Hola. Tengo un combobox con distintos valores, de los que depende el widget a mostrar. Para ello, capturo el evento "changed", lanzo un método que obtiene el elemento activo y... bien, aquí es donde no sé qué hacer. La idea inicial era mantener todos los botones ocultos y mostrar el que necesito. No funciona, ya que los botones no tienen la propiedad set_visibility (uno de los widgets a utilizar es un componente propio que consta de un entry y un button). ¿Ideas? Por si no me he explicado bien, voy a contar exactamente lo que estoy haciendo: Estoy haciendo una aplicación (GPL) para el tratamiento de listas de tareas. Ahora estoy centrado en la ventana de manejo de filtros, con la intención de poder filtrar las tareas que se están mostrando. Cuando se selecciona un filtro sobre "Fecha de comienzo", tengo que mostrar un calendario para que se pueda seleccionar una fecha, mientras que si se selecciona la columna "Completado" me bastará indicar un "sí"/"no". Lo que no quiero hacer es tener que estar creando y destruyendo los objetos cada vez que alguien los selecciona, aunque si no me dais ideas creo que es lo que voy a tener que hacer :( Muchas gracias. -- In a world without walls and fences, who needs Windows and Gates? _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pyarnau en gmail.com Wed Dec 17 17:15:06 2008 From: pyarnau en gmail.com (Arnau Sanchez) Date: Wed, 17 Dec 2008 17:15:06 +0100 Subject: Python+GTK: mostrar un objeto distinto dependiendo de un combobox In-Reply-To: <20081217165744.037472ab@tormenta> References: <20081217165744.037472ab@tormenta> Message-ID: <4949258A.9080601@gmail.com> Miguel Ángel García escribió: > Hola. > > Tengo un combobox con distintos valores, de los que depende el widget a > mostrar. Para ello, capturo el evento "changed", lanzo un método que > obtiene el elemento activo y... bien, aquí es donde no sé qué hacer. > > La idea inicial era mantener todos los botones ocultos y mostrar el que > necesito. No funciona, ya que los botones no tienen la propiedad > set_visibility (uno de los widgets a utilizar es un componente propio > que consta de un entry y un button). > > ¿Ideas? Si se trata de mostrar / ocultar un widget, widget.show() / widget.hide() parece lo suyo. -- Web: http://www.arnau-sanchez.com _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From yourpadre en gmail.com Wed Dec 17 17:20:25 2008 From: yourpadre en gmail.com (Miguel Beltran R.) Date: Wed, 17 Dec 2008 10:20:25 -0600 Subject: Zope In-Reply-To: References: <98685fc90812161240r7154940cn9c86c6fafcb903dc@mail.gmail.com> Message-ID: Gracias por la pagina, se ve sencilla de enternder. Para animarme a usar a zope 3. 2008/12/17 Lorenzo Gil Sanchez > http://www.muthukadan.net/docs/zca-es.html > > 2008/12/16 Agrelot : > > Hola amigos ¿Alguien laburando con Zope2 o Zope 3 para hacerle algunas > > preguntas básicas?. (Para empezar bibliografía en castellano "libre"). > > Gracias > > _______________________________________________ > > Lista de correo Python-es > > http://listas.aditel.org/listinfo/python-es > > FAQ: http://listas.aditel.org/faqpyes > > > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- ________________________________________ Lo bueno de vivir un dia mas es saber que nos queda un dia menos de vida _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From inf200468 en ucf.edu.cu Wed Dec 17 17:22:42 2008 From: inf200468 en ucf.edu.cu (inf200468 en ucf.edu.cu) Date: Wed, 17 Dec 2008 11:22:42 -0500 (EST) Subject: =?utf-8?q?m=C3=A1s_sobre_linux_que_sobre_python?= Message-ID: <1540.10.14.17.145.1229530962.squirrel@correo.ucf.edu.cu> Hola , hago esta pregunta aqui porque se que el 99% utilizan linux...la cuestión es que estoy buscando donde puedo descargar las iso de DVD del repositorio del ubuntu 8.10 intrepid, he buscado pero no he encontrado nada. Saludos -------------------------------- Servicio del Grupo de Redes Universidad de Cienfuegos Contacto: adminred en ucf.edu.cu ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From isantander en gmail.com Wed Dec 17 17:29:38 2008 From: isantander en gmail.com (=?ISO-8859-1?Q?Iv=E1n_Santander?=) Date: Wed, 17 Dec 2008 14:29:38 -0200 Subject: =?ISO-8859-1?Q?Re:__m=E1s_sobre_linux_que_sobre_python?= In-Reply-To: <1540.10.14.17.145.1229530962.squirrel@correo.ucf.edu.cu> References: <1540.10.14.17.145.1229530962.squirrel@correo.ucf.edu.cu> Message-ID: <140a67980812170829g7c9bbbcfi8119de3d847e8253@mail.gmail.com> 2008/12/17 : > > > Hola , hago esta pregunta aqui porque se que el 99% utilizan linux...la cuestión > es que estoy buscando donde puedo descargar las iso de DVD del repositorio del ubuntu > 8.10 intrepid, he buscado pero no he encontrado nada. > Saludos http://releases.ubuntu.com/8.10/ Saludos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From magmaxlistas en gmail.com Wed Dec 17 18:30:03 2008 From: magmaxlistas en gmail.com (Miguel =?ISO-8859-1?B?wW5nZWwgR2FyY+1h?=) Date: Wed, 17 Dec 2008 18:30:03 +0100 Subject: Python+GTK: mostrar un objeto distinto dependiendo de un combobox In-Reply-To: <4949258A.9080601@gmail.com> References: <20081217165744.037472ab@tormenta> <4949258A.9080601@gmail.com> Message-ID: <20081217183003.5a6cfd25@tormenta> El Wed, 17 Dec 2008 17:15:06 +0100 Arnau Sanchez escribió: > Miguel Ángel García escribió: > > > Hola. > > > > Tengo un combobox con distintos valores, de los que depende el > > widget a mostrar. Para ello, capturo el evento "changed", lanzo un > > método que obtiene el elemento activo y... bien, aquí es donde no > > sé qué hacer. > > > > La idea inicial era mantener todos los botones ocultos y mostrar el > > que necesito. No funciona, ya que los botones no tienen la propiedad > > set_visibility (uno de los widgets a utilizar es un componente > > propio que consta de un entry y un button). > > > > ¿Ideas? > > Si se trata de mostrar / ocultar un widget, widget.show() / > widget.hide() parece lo suyo. > Jajajajaja.... Qué tontería, ¿no? A veces me obceco con obviedades. ¡¡ Gracias ! -- In a world without walls and fences, who needs Windows and Gates? _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From inf200468 en ucf.edu.cu Wed Dec 17 17:57:28 2008 From: inf200468 en ucf.edu.cu (inf200468 en ucf.edu.cu) Date: Wed, 17 Dec 2008 11:57:28 -0500 (EST) Subject: =?utf-8?B?UmU6IFtQeXRob24tZXNdIG3DoXMgc29icmUgbGludXggcXVlIHNvYnJlIHB5?= =?utf-8?B?dGhvbg==?= In-Reply-To: <140a67980812170829g7c9bbbcfi8119de3d847e8253@mail.gmail.com> References: <1540.10.14.17.145.1229530962.squirrel@correo.ucf.edu.cu> <140a67980812170829g7c9bbbcfi8119de3d847e8253@mail.gmail.com> Message-ID: <2663.10.14.17.145.1229533048.squirrel@correo.ucf.edu.cu> ya busqué ahi, pero no encontre las iso de los dvd > 2008/12/17 : >> >> >> Hola , hago esta pregunta aqui porque se que el 99% utilizan linux...la cuestión >> es que estoy buscando donde puedo descargar las iso de DVD del repositorio del ubuntu >> 8.10 intrepid, he buscado pero no he encontrado nada. >> Saludos > > http://releases.ubuntu.com/8.10/ > > Saludos > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -------------------------------- Servicio del Grupo de Redes Universidad de Cienfuegos Contacto: adminred en ucf.edu.cu ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From checofusek en gmail.com Wed Dec 17 18:43:24 2008 From: checofusek en gmail.com (Checo Fusek) Date: Wed, 17 Dec 2008 14:43:24 -0300 Subject: =?ISO-8859-1?Q?Re:__m=E1s_sobre_linux_que_sobre_python?= In-Reply-To: <2663.10.14.17.145.1229533048.squirrel@correo.ucf.edu.cu> References: <1540.10.14.17.145.1229530962.squirrel@correo.ucf.edu.cu> <140a67980812170829g7c9bbbcfi8119de3d847e8253@mail.gmail.com> <2663.10.14.17.145.1229533048.squirrel@correo.ucf.edu.cu> Message-ID: http://www.ubuntu.com/getubuntu/downloadmirrors#dvd 2008/12/17 : > > > ya busqué ahi, pero no encontre las iso de los dvd > >> 2008/12/17 > : >>> >>> >>> Hola , hago > esta pregunta aqui porque se que el 99% utilizan linux...la cuestión >>> es que estoy buscando donde puedo descargar las iso de DVD del repositorio > del ubuntu >>> 8.10 intrepid, he buscado pero no he encontrado nada. >>> Saludos >> >> http://releases.ubuntu.com/8.10/ >> >> Saludos >> _______________________________________________ >> > Lista de correo Python-es >> http://listas.aditel.org/listinfo/python-es >> FAQ: http://listas.aditel.org/faqpyes >> > > > > -------------------------------- > Servicio del Grupo de Redes > Universidad de Cienfuegos > Contacto: adminred en ucf.edu.cu > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From antonio.beamud en gmail.com Wed Dec 17 18:43:30 2008 From: antonio.beamud en gmail.com (Antonio Beamud Montero) Date: Wed, 17 Dec 2008 18:43:30 +0100 Subject: =?ISO-8859-1?Q?m=E1s?= sobre linux que sobre python In-Reply-To: <2663.10.14.17.145.1229533048.squirrel@correo.ucf.edu.cu> References: <1540.10.14.17.145.1229530962.squirrel@correo.ucf.edu.cu> <140a67980812170829g7c9bbbcfi8119de3d847e8253@mail.gmail.com> <2663.10.14.17.145.1229533048.squirrel@correo.ucf.edu.cu> Message-ID: <1229535810.11886.42.camel@soberbia> El mié, 17-12-2008 a las 11:57 -0500, inf200468 en ucf.edu.cu escribió: > > ya busqu ahi, pero no encontre las iso de los dvd Pues por ejemplo: http://ftp.heanet.ie/pub/ubuntu-cdimage/releases/hardy/release/ http://ftp.heanet.ie/pub/ubuntu-cdimage/releases/intrepid/release/ > > > 2008/12/17 > : > >> > >> > >> Hola , hago > esta pregunta aqui porque se que el 99% utilizan linux...la cuestin > >> es que estoy buscando donde puedo descargar las iso de DVD del repositorio > del ubuntu > >> 8.10 intrepid, he buscado pero no he encontrado nada. > >> Saludos > > > > http://releases.ubuntu.com/8.10/ > > > > Saludos > > _______________________________________________ > > > Lista de correo Python-es > > http://listas.aditel.org/listinfo/python-es > > FAQ: http://listas.aditel.org/faqpyes > > > > > > -------------------------------- > Servicio del Grupo de Redes > Universidad de Cienfuegos > Contacto: adminred en ucf.edu.cu > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From isantander en gmail.com Wed Dec 17 18:46:33 2008 From: isantander en gmail.com (=?ISO-8859-1?Q?Iv=E1n_Santander?=) Date: Wed, 17 Dec 2008 15:46:33 -0200 Subject: =?ISO-8859-1?Q?Re:__m=E1s_sobre_linux_que_sobre_python?= In-Reply-To: <2663.10.14.17.145.1229533048.squirrel@correo.ucf.edu.cu> References: <1540.10.14.17.145.1229530962.squirrel@correo.ucf.edu.cu> <140a67980812170829g7c9bbbcfi8119de3d847e8253@mail.gmail.com> <2663.10.14.17.145.1229533048.squirrel@correo.ucf.edu.cu> Message-ID: <140a67980812170946n44438814gd2e6109fa55f469c@mail.gmail.com> 2008/12/17 : > > > ya busqué ahi, pero no encontre las iso de los dvd http://cdimage.ubuntu.com/dvd/20081118/ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ematus en gmail.com Wed Dec 17 18:53:04 2008 From: ematus en gmail.com (Eduardo Matus) Date: Wed, 17 Dec 2008 14:53:04 -0300 Subject: =?ISO-8859-1?Q?Re:__m=E1s_sobre_linux_que_sobre_python?= In-Reply-To: <140a67980812170946n44438814gd2e6109fa55f469c@mail.gmail.com> References: <1540.10.14.17.145.1229530962.squirrel@correo.ucf.edu.cu> <140a67980812170829g7c9bbbcfi8119de3d847e8253@mail.gmail.com> <2663.10.14.17.145.1229533048.squirrel@correo.ucf.edu.cu> <140a67980812170946n44438814gd2e6109fa55f469c@mail.gmail.com> Message-ID: <984ad6a0812170953u4b04c749xfece0bfa19cd874b@mail.gmail.com> que comodidad mas grande... eres un pajero! On Wed, Dec 17, 2008 at 2:46 PM, Iván Santander wrote: > 2008/12/17 : > > > > > > ya busqué ahi, pero no encontre las iso de los dvd > > http://cdimage.ubuntu.com/dvd/20081118/ > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- _______________________________________ Eduardo Andrés Matus Coquelet Ingeniero Civil Informatico y Telecomunicaciones - U. Diego Portales Santiago, Chile. _______________________________________ Celular: (07) 77113825 _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jcanto en hispasec.com Wed Dec 17 19:12:12 2008 From: jcanto en hispasec.com (Julio Canto) Date: Wed, 17 Dec 2008 19:12:12 +0100 Subject: =?ISO-8859-1?Q?m=E1s_sobre_linux_que_sob?= =?ISO-8859-1?Q?re_python?= In-Reply-To: <984ad6a0812170953u4b04c749xfece0bfa19cd874b@mail.gmail.com> References: <1540.10.14.17.145.1229530962.squirrel@correo.ucf.edu.cu> <140a67980812170829g7c9bbbcfi8119de3d847e8253@mail.gmail.com> <2663.10.14.17.145.1229533048.squirrel@correo.ucf.edu.cu> <140a67980812170946n44438814gd2e6109fa55f469c@mail.gmail.com> <984ad6a0812170953u4b04c749xfece0bfa19cd874b@mail.gmail.com> Message-ID: <494940FC.2040001@hispasec.com> Eduardo Matus escribió: > que comodidad mas grande... > eres un pajero! Que grande Don Mauro :) -- Regards, Julio Canto | VirusTotal.com | Hispasec Sistemas Lab | Tlf: +34.902.161.025 | Fax: +34.952.028.694 | PGP Key ID: EF618D2B | jcanto en hispasec.com _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From inf200468 en ucf.edu.cu Wed Dec 17 19:28:18 2008 From: inf200468 en ucf.edu.cu (inf200468 en ucf.edu.cu) Date: Wed, 17 Dec 2008 13:28:18 -0500 (EST) Subject: =?utf-8?B?UmU6IFtQeXRob24tZXNdIG3DoXMgc29icmUgbGludXggcXVlIHNvYnJlIHB5?= =?utf-8?B?dGhvbg==?= In-Reply-To: References: <1540.10.14.17.145.1229530962.squirrel@correo.ucf.edu.cu> <140a67980812170829g7c9bbbcfi8119de3d847e8253@mail.gmail.com> <2663.10.14.17.145.1229533048.squirrel@correo.ucf.edu.cu> Message-ID: <38269.10.14.2.42.1229538498.squirrel@correo.ucf.edu.cu> esos son los dvd del repositorio_?? > http://www.ubuntu.com/getubuntu/downloadmirrors#dvd > > 2008/12/17 : >> >> >> ya busqué ahi, pero no encontre las iso de los dvd >> >>> 2008/12/17 >> : >>>> >>>> >>>> Hola , hago >> esta pregunta aqui porque se que el 99% utilizan linux...la cuestión >>>> es que estoy buscando donde puedo descargar las iso de DVD del repositorio >> del ubuntu >>>> 8.10 intrepid, he buscado pero no he encontrado nada. >>>> Saludos >>> >>> http://releases.ubuntu.com/8.10/ >>> >>> Saludos >>> _______________________________________________ >>> >> Lista de correo Python-es >>> http://listas.aditel.org/listinfo/python-es >>> FAQ: http://listas.aditel.org/faqpyes >>> >> >> >> >> -------------------------------- >> Servicio del Grupo de Redes >> Universidad de Cienfuegos >> Contacto: adminred en ucf.edu.cu >> >> _______________________________________________ >> Lista de correo Python-es >> http://listas.aditel.org/listinfo/python-es >> FAQ: http://listas.aditel.org/faqpyes >> > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -------------------------------- Servicio del Grupo de Redes Universidad de Cienfuegos Contacto: adminred en ucf.edu.cu ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From josefranciscocalvo en gmail.com Wed Dec 17 21:17:42 2008 From: josefranciscocalvo en gmail.com (=?UTF-8?B?Sm9zw6kgRnJhbmNpc2NvIENhbHZv?=) Date: Wed, 17 Dec 2008 21:17:42 +0100 Subject: Contar digitos en un string In-Reply-To: <4948E3F1.5060202@gmail.com> References: <200812170251.30561.py@ch3m4.org> <4948D8E8.2010809@gmail.com> <200812171219.52994.faltet@pytables.org> <4948E3F1.5060202@gmail.com> Message-ID: <49495E66.20904@gmail.com> Arnau Sanchez escribió: > Francesc Alted escribió: > >> In [45]: timeit len([x for x in a if x.isdigit()]) >> 10 loops, best of 3: 14.3 ms per loop >> >> In [46]: timeit sum(1 for c in a if c.isdigit()) >> 10 loops, best of 3: 19 ms per loop >> >> In [47]: timeit sum(a.count(c) for c in "0123456789") >> 100 loops, best of 3: 1.11 ms per loop >> >> Por tanto, la solución de Chema es más de 10 veces más rápida que las >> otras (para cadenas suficientemente largas). >> >> Pues sí que da de sí esto de contar dígitos :-) > > Si nos pusiéramos a ello no dejaríamos de encontrar otras formas: > > In [21]:timeit sum(1 for _ in re.finditer("\d", a)) > 100 loops, best of 3: 8.34 ms per loop > > :-) > > Pero la solución de Chema es imbatible! > > > ------------------------------------------------------------------------ > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes Impresionante hilo, me han encantado las soluciones que habéis aportado, lástima que no se me ocurra ninguna mejor, se ve mucho nivel en una sola línea. -- ------------------------------ José Francisco Calvo josefranciscocalvo en gmail.com ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From cruskaya.smith en gmail.com Wed Dec 17 21:28:54 2008 From: cruskaya.smith en gmail.com (Cruskaya Smith) Date: Wed, 17 Dec 2008 16:28:54 -0400 Subject: Crear un datepicker Message-ID: <719b0df10812171228k3cb34deds62d5623ff014cff0@mail.gmail.com> Hola, alguno sabe como crear un datepicker, ya que este control no esta en Glade gracias Cruskaya _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From willian.radicaled en gmail.com Wed Dec 17 22:02:46 2008 From: willian.radicaled en gmail.com (RadicalEd) Date: Wed, 17 Dec 2008 16:02:46 -0500 Subject: Crear un datepicker In-Reply-To: <719b0df10812171228k3cb34deds62d5623ff014cff0@mail.gmail.com> References: <719b0df10812171228k3cb34deds62d5623ff014cff0@mail.gmail.com> Message-ID: self.txtFecha = wx.DatePickerCtrl(self,-1,wx.DefaultDateTime,wx.Point(50,5),wx.Size(105,27), style=wx.DP_DROPDOWN | wx.DP_SHOWCENTURY) 2008/12/17 Cruskaya Smith > Hola, alguno sabe como crear un datepicker, ya que este control no esta en > Glade > > > gracias > > Cruskaya > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- The knowledge is the most dangerous weapon & SoloCodigo is the best programing webforum. http://foros.solocodigo.com http://radicalpython.blogspot.com http://revistacodigolatino.blogspot.com _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pych3m4 en gmail.com Thu Dec 18 12:11:58 2008 From: pych3m4 en gmail.com (Chema Cortes) Date: Thu, 18 Dec 2008 12:11:58 +0100 Subject: Contar digitos en un string In-Reply-To: <4948D8E8.2010809@gmail.com> References: <49414f570812160532r239da014ha8a0fe39b97ec0d4@mail.gmail.com> <49482CB8.30902@gmail.com> <200812170251.30561.py@ch3m4.org> <4948D8E8.2010809@gmail.com> Message-ID: <2c9fb0dd0812180311y1d22bcb4qf675fc90aea6f46a@mail.gmail.com> El 2008/12/17 Arnau Sanchez escribió: > Chema Cortes escribió: > >> Pero si es por optimizar, ésta sería una mejor solución: >> >> sum(a.count(c) for c in "0123456789") >> >> Son sólo 9 sumas, independientemente de la longitud de la cadena. > > Sí, ¿pero no hay que considerar además que cada count() debe recorrer > completa la lista? aún así, seguro que ésta es la forma más rápida, de largo > (debido a que la iteración la hace en C en vez de en Python). El count() se puede implementar fácilmente en C, usando tan sólo los registros del procesador como almacenamiento temporal; mientras que el uso de iteradores obliga a mantener un "contexto" de ejecución cuyo intercambio suele ser bastante costoso. Python sorprende por tener algunas funciones que están muy optimizadas; pero los iteradores siguen siendo, en general, una de las soluciones más escalables que podemos usar. En la cuentas de Francesc faltaría saber cuál fue el consumo de memoria de cada uno de los algoritmos. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From vginer en gmail.com Thu Dec 18 15:35:21 2008 From: vginer en gmail.com (Vicent) Date: Thu, 18 Dec 2008 15:35:21 +0100 Subject: Contar digitos en un string In-Reply-To: <49495E66.20904@gmail.com> References: <200812170251.30561.py@ch3m4.org> <4948D8E8.2010809@gmail.com> <200812171219.52994.faltet@pytables.org> <4948E3F1.5060202@gmail.com> <49495E66.20904@gmail.com> Message-ID: <50ed08f40812180635v7c28a641h54af63bf494d691b@mail.gmail.com> 2008/12/17 José Francisco Calvo : > Impresionante hilo, me han encantado las soluciones que habéis aportado, > lástima que no se me ocurra ninguna mejor, se ve mucho nivel en una sola > línea. Saludos. Soy casi nuevo en la lista y en Python, y también me ha impresionado la abundancia y variedad de las soluciones aportadas (sobre todo, las que son "en una sola línea", aunque sean más complejas de entender al principio). Tengo una pregunta un poco "de novato"; mi objetivo es entender mejor el manejo que hace Python de la memoria del ordenador: Centrándonos en la velocidad de ejecución de la que habláis, ¿todos las variantes propuestas consumen "el mismo tipo de memoria"? Quiero decir, ¿todas hacen uso de la memoria "RAM", o alguna escribe algún valor en disco? Entiendo que sólo se usa la RAM, en ambos casos. El hecho de crear variables o listas intermedias, supone reservar un espacio de memoria RAM que luego se libera, ¿no? ¿Es eso peor (en términos de uso de memoria / velocidad) que hacerlo todo de modo "implícito", en una sola línea de código? También está el uso de CPU, supongo que muy relacionado. ¿Son dos variables diferentes a controlar, el % uso de CPU y la cantidad de memoria RAM usada, o es lo mismo? ¿Puede ser que una de las soluciones propuestas en el hilo sea mejor en cuanto a uso de RAM pero peor en cuanto a uso de CPU? Perdonad de nuevo si estas preguntas no tienen del todo sentido. No soy informático, y todos estos temas "internos" respecto al uso de memoria y de recursos del ordenador a veces se me escapan (y son MUY importantes cuando estás programando algoritmos que previsiblemente van a realizar muchas operaciones, etc.). Gracias de antemano. Un saludo. -- Vicent Giner, Valencia _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From faltet en pytables.org Thu Dec 18 17:08:09 2008 From: faltet en pytables.org (Francesc Alted) Date: Thu, 18 Dec 2008 17:08:09 +0100 Subject: Contar digitos en un string In-Reply-To: <2c9fb0dd0812180311y1d22bcb4qf675fc90aea6f46a@mail.gmail.com> References: <4948D8E8.2010809@gmail.com> <2c9fb0dd0812180311y1d22bcb4qf675fc90aea6f46a@mail.gmail.com> Message-ID: <200812181708.10028.faltet@pytables.org> A Thursday 18 December 2008, Chema Cortes escrigué: > El 2008/12/17 Arnau Sanchez escribió: > > Chema Cortes escribió: > >> Pero si es por optimizar, ésta sería una mejor solución: > >> > >> sum(a.count(c) for c in "0123456789") > >> > >> Son sólo 9 sumas, independientemente de la longitud de la cadena. > > > > Sí, ¿pero no hay que considerar además que cada count() debe > > recorrer completa la lista? aún así, seguro que ésta es la forma > > más rápida, de largo (debido a que la iteración la hace en C en vez > > de en Python). > > El count() se puede implementar fácilmente en C, usando tan sólo los > registros del procesador como almacenamiento temporal; mientras que > el uso de iteradores obliga a mantener un "contexto" de ejecución > cuyo intercambio suele ser bastante costoso. > > Python sorprende por tener algunas funciones que están muy > optimizadas; pero los iteradores siguen siendo, en general, una de > las soluciones más escalables que podemos usar. En la cuentas de > Francesc faltaría saber cuál fue el consumo de memoria de cada uno de > los algoritmos. Es que lo quieres todo :-) Hombre, no sé cuanto chupa un generador, pero si descontamos estas lindezas, así a vuela-pluma, diría que el tuyo es óptimo también en el aspecto de consumo de memoria (sólo me sale que se consume un registro de un entero Python!). -- Francesc Alted _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From inf200468 en ucf.edu.cu Thu Dec 18 17:24:59 2008 From: inf200468 en ucf.edu.cu (inf200468 en ucf.edu.cu) Date: Thu, 18 Dec 2008 11:24:59 -0500 (EST) Subject: python para hacer and entre ip y mascara In-Reply-To: <2c9fb0dd0811241323o27581c46p1ce42cfdafc279a2@mail.gmail.com> References: <1587.10.14.17.145.1227533573.squirrel@correo.ucf.edu.cu> <2c9fb0dd0811241123k1389fa3an2bd5cdf77e28fe28@mail.gmail.com> <32ec9b10811241217i36456c52o3a28a098b9466fbf@mail.gmail.com> <2c9fb0dd0811241323o27581c46p1ce42cfdafc279a2@mail.gmail.com> Message-ID: <2433.10.14.19.7.1229617499.squirrel@correo.ucf.edu.cu> hola , como puedo hacer un and entre numeros binarios Gracias > El día 24 de noviembre de 2008 21:17, peter escribió: >> ese broadcast sale raro... >> >> >> >> >> Si la direccion es 192.168.1.100, y la máscara es 255.255.255.192, >> debería salir una broadcast 192.168.1.127 >> >> En binario se ve mejor: >> >> 11000000.10101000.00000001.01100100 dirección >> 11111111.11111111.11111111.11000000 máscara >> 11000000.10101000.00000001.01111111 broadcast >> >> Un OR entre "dirección" y "NOT máscara". > > broadcast="%d.%d.%d.%d"%tuple(i|0xff^j for i,j in zip(D,M)) > > > PD: éste código es sólo ilustrativo. Falta incluir comprobaciones para > evitar desbordamientos. > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -------------------------------- Servicio del Grupo de Redes Universidad de Cienfuegos Contacto: adminred en ucf.edu.cu ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From antonio.beamud en gmail.com Thu Dec 18 17:50:28 2008 From: antonio.beamud en gmail.com (Antonio Beamud Montero) Date: Thu, 18 Dec 2008 17:50:28 +0100 Subject: python para hacer and entre ip y mascara In-Reply-To: <2433.10.14.19.7.1229617499.squirrel@correo.ucf.edu.cu> References: <1587.10.14.17.145.1227533573.squirrel@correo.ucf.edu.cu> <2c9fb0dd0811241123k1389fa3an2bd5cdf77e28fe28@mail.gmail.com> <32ec9b10811241217i36456c52o3a28a098b9466fbf@mail.gmail.com> <2c9fb0dd0811241323o27581c46p1ce42cfdafc279a2@mail.gmail.com> <2433.10.14.19.7.1229617499.squirrel@correo.ucf.edu.cu> Message-ID: <1229619028.13429.7.camel@soberbia> El jue, 18-12-2008 a las 11:24 -0500, inf200468 en ucf.edu.cu escribió: > > hola , como puedo hacer un and entre numeros binarios > Gracias 7 & 5 > > > > > > El da 24 de noviembre de 2008 21:17, peter > escribi: > >> ese broadcast sale raro... > > >> > >> > >> > >> > >> Si la > direccion es 192.168.1.100, y la mscara es 255.255.255.192, > >> > debera salir una broadcast 192.168.1.127 > >> > >> En > binario se ve mejor: > >> > >> 11000000.10101000.00000001.01100100 > direccin > >> 11111111.11111111.11111111.11000000 mscara > >> 11000000.10101000.00000001.01111111 broadcast > >> > >> > Un OR entre "direccin" y "NOT mscara". > > > > > broadcast="%d.%d.%d.%d"%tuple(i|0xff^j for i,j in zip(D,M)) > > > > > > PD: ste cdigo es slo ilustrativo. > Falta incluir comprobaciones para > > evitar desbordamientos. > > > _______________________________________________ > > Lista de correo Python-es > > http://listas.aditel.org/listinfo/python-es > > FAQ: > http://listas.aditel.org/faqpyes > > > > > > -------------------------------- > Servicio del Grupo de Redes > Universidad de Cienfuegos > Contacto: adminred en ucf.edu.cu > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From celord en gmail.com Thu Dec 18 19:12:09 2008 From: celord en gmail.com (=?ISO-8859-1?Q?C=E9sar_Garc=EDa?=) Date: Thu, 18 Dec 2008 12:12:09 -0600 Subject: =?iso-8859-1?q?Ayuda_con_expresi=F3n_regular?= Message-ID: Hola lista tengo el siguiente problema: Tengo un archivo "plantilla" de la siguiente manera: addTemplate: -------------------------------------------- NOMBRE APELLIDO MAIL -------------------------------------------- Y tengo un script en python haciendo lo siguiente: uid='usuario1' lastname='ap_usuario1' mail=usuario1 en server.com now = strftime("%d-%m-%y-%H_%M_%S", localtime()) filename = str(now) FILE = open ('files/addTemplate','r') plantilla = FILE.read() new = open('files/'+filename,'w') new.write( re.sub('UID', uid, plantilla)) new.write( re.sub('APELLIDO', lastname, plantilla)) new.write( re.sub('MAIL', mail, plantilla)) new.close() El problema es que el archivo resultante queda asi: Cesar APELLIDO MAIL NOMBRE GArcia Sanchez MAIL NOMBRE APELLIDO cgarcia Parece que no hace substitución, si no que agrega Gracias -- http://celord.blogspot.com/ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pdlopez en uci.cu Thu Dec 18 23:42:51 2008 From: pdlopez en uci.cu (Pavel Daniel Lopez Castillo) Date: Thu, 18 Dec 2008 17:42:51 -0500 Subject: (sin asunto) Message-ID: <1A668661A3AAA343B3C49E2F266DDAE0016C9524@ucixw2.uci.cu> Quiero empezar a trabajar con sqlAlchemy y sqlObject los dos porque es una investigacion para ver con cual me quedo al final, ahora mi problema instalarle esos modulos a python, estaba tratanto de instalar SQLAlchemy-0.5.0rc4 lo descarge de http://pypi.python.org/pypi/SQLAlchemy pero no se como instalarlo, estaba corriendo con python el archivo setup.py pero me dice que hace falta entonces setuptools-0.6c3-py2.5.egg_FILES lo descarge tambien pero en conclusion no se instalar nada de eso, estoy en Linux/Debian por favor necesito eso con urgencia ayuda. Nunca tomes decisiones en momentos de odio y dolor, pues puedes arrepentirte demasiado tarde. Ing: Pavel Daniel López Castillo telefóno: 2146 _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From julionc en gmail.com Thu Dec 18 23:58:31 2008 From: julionc en gmail.com (=?ISO-8859-1?Q?Julio_Napur=ED_Carlos?=) Date: Thu, 18 Dec 2008 17:58:31 -0500 Subject: (sin asunto) In-Reply-To: <1A668661A3AAA343B3C49E2F266DDAE0016C9524@ucixw2.uci.cu> References: <1A668661A3AAA343B3C49E2F266DDAE0016C9524@ucixw2.uci.cu> Message-ID: <1155884d0812181458y7c3eedafr91da50f80828f666@mail.gmail.com> La mejor forma, es con easy_install. Necesitas el paquete python-setuptools en Debian, of course. # aptitude install python-setuptools Aquí tienes un video tutorial sobre easy_install, si quieres instalarlo de forma manual. http://showmedo.com/videos/video?name=2070000 (winXP) Luego, instalas SQLAlchemy # easy_install SQLAlchemy Saludos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ximo-listas en ono.com Thu Dec 18 23:51:45 2008 From: ximo-listas en ono.com (Ximo Nadal) Date: Thu, 18 Dec 2008 23:51:45 +0100 Subject: trabajar con sqlAlchemy y sqlObject In-Reply-To: <1A668661A3AAA343B3C49E2F266DDAE0016C9524@ucixw2.uci.cu> References: <1A668661A3AAA343B3C49E2F266DDAE0016C9524@ucixw2.uci.cu> Message-ID: <494AD401.7090902@ono.com> Pavel Daniel Lopez Castillo escribió: > Quiero empezar a trabajar con sqlAlchemy y sqlObject los dos porque es una investigacion para ver con cual me quedo al final, ahora mi problema instalarle esos modulos a python, estaba tratanto de instalar SQLAlchemy-0.5.0rc4 lo descarge de http://pypi.python.org/pypi/SQLAlchemy pero no se como instalarlo, estaba corriendo con python el archivo setup.py pero me dice que hace falta entonces setuptools-0.6c3-py2.5.egg_FILES lo descarge tambien pero en conclusion no se instalar nada de eso, estoy en Linux/Debian por favor necesito eso con urgencia ayuda. > apt-get install python-sqlalchemy python-sqlobject _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pdlopez en uci.cu Fri Dec 19 00:38:45 2008 From: pdlopez en uci.cu (Pavel Daniel Lopez Castillo) Date: Thu, 18 Dec 2008 18:38:45 -0500 Subject: (sin asunto)(SQLAlchemy) References: <20081218225846.1B76515EF9EE@devnull.aditel.org> Message-ID: <1A668661A3AAA343B3C49E2F266DDAE0016C9526@ucixw2.uci.cu> Julio Napuri Por lo que veo easy_install sqlAlchemy lo que hace es descargarlo e instalarlo, el problema es que ya lo he descargado y ahora no tengo internet, no hay otra forma, ya instale python-setuptools????? ya probe correr el archivo setup.py que viene en la carpeta setuptools-0.6c3-py2.5.egg_FILES y me dio error. Nunca tomes decisiones en momentos de odio y dolor, pues puedes arrepentirte demasiado tarde. Ing: Pavel Daniel López Castillo telefóno: 2146 ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From parodi.fer en gmail.com Fri Dec 19 01:21:39 2008 From: parodi.fer en gmail.com (fernando parodi) Date: Thu, 18 Dec 2008 21:21:39 -0300 Subject: Problemas con python.org Message-ID: <6d2760090812181621w5bccee74ld189866a7adb329@mail.gmail.com> Hola otra vez. Hace un tiempito que no puedo acceder a la pagina oficial de python. me sale un error como si no existiera, es medio raro.... pense que mi pc podria tener alguna enfermedad logico-infecciosa o algo pero no(almenos creo que no) por eso probe desde la ofi, la facu, la pc de mi hermana y el cyber y nada, desde windo$ y gnu/linux y nada, desde IE, Firefox crome y nada......>=( sera que por instalar tb Ruby algun Dios Pyctonico me castigo? Yo estoy en paraguay, no se puede haber un problema con la empresa que me provee el servicio o que se yo que puede pasar. Si alguien sabe que puede ser que me ilumine por favor, y si algun argentino lee estos y no tiene problemas para entrar que me avise me voy a clorinda armado con un pendrive jajaja Saludos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ikarush en gmail.com Fri Dec 19 01:27:15 2008 From: ikarush en gmail.com (=?UTF-8?Q?Daniel_Gonz=C3=A1lez?=) Date: Fri, 19 Dec 2008 01:27:15 +0100 Subject: Problemas con python.org In-Reply-To: <6d2760090812181621w5bccee74ld189866a7adb329@mail.gmail.com> References: <6d2760090812181621w5bccee74ld189866a7adb329@mail.gmail.com> Message-ID: 2008/12/19 fernando parodi : > Hola otra vez. > Hace un tiempito que no puedo acceder a la pagina oficial de python. me > sale un error como si no existiera, es medio raro.... pense que mi pc podria > tener alguna enfermedad logico-infecciosa o algo pero no(almenos creo que > no) por eso probe desde la ofi, la facu, la pc de mi hermana y el cyber y > nada, desde windo$ y gnu/linux y nada, desde IE, Firefox crome y > nada......>=( sera que por instalar tb Ruby algun Dios Pyctonico me castigo? > Yo estoy en paraguay, no se puede haber un problema con la empresa que me > provee el servicio o que se yo que puede pasar. > Si alguien sabe que puede ser que me ilumine por favor, y si algun argentino > lee estos y no tiene problemas para entrar que me avise me voy a clorinda > armado con un pendrive jajaja > http://www.python.org/ yo desde luego la veo perfectamente..., ¿Que error te da? ¿404? ¿Te conectas a traves de un proxy (trasparente o no)? ( Lo puedes ver mirando http://www.cualesmiip.com/ y comparando con la que te da el SO). Puedes provar a eliminar la cache ( crtl + f5 )... Saludos! Daniel González Cerviño tel 653965048 ikarush en gmail.com > Saludos > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From julionc en gmail.com Fri Dec 19 02:09:28 2008 From: julionc en gmail.com (=?ISO-8859-1?Q?Julio_Napur=ED_Carlos?=) Date: Thu, 18 Dec 2008 20:09:28 -0500 Subject: (sin asunto)(SQLAlchemy) In-Reply-To: <1A668661A3AAA343B3C49E2F266DDAE0016C9526@ucixw2.uci.cu> References: <20081218225846.1B76515EF9EE@devnull.aditel.org> <1A668661A3AAA343B3C49E2F266DDAE0016C9526@ucixw2.uci.cu> Message-ID: <1155884d0812181709gd1e73a0hbe5bd62c428cec5d@mail.gmail.com> Hola ??? Asumo que no tienes internet? Bueno, en ese caso consigue el .deb de python-setuptools y baja el archivo .egg de SQLAlchemy o el tar.gz Te instalas el python-setuptools y luego... Para instalar un .egg (ejemplo) # easy_install /ruta_del_fichero_egg/OtroPaquete-1.0-py2.5.egg Para instalar un .tar.gz # easy_install /ruta_del_fichero_tar_gz/SQLAlchemy-0.4.8.tar.gz Sobre SQLObject y SQLAlchemy, sin duda; SQLAlchemy, of course. Saludos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From marco.rotten en gmail.com Fri Dec 19 02:32:27 2008 From: marco.rotten en gmail.com (Marco Ortiz) Date: Thu, 18 Dec 2008 20:32:27 -0500 Subject: (sin asunto)(SQLAlchemy) In-Reply-To: <1155884d0812181709gd1e73a0hbe5bd62c428cec5d@mail.gmail.com> References: <20081218225846.1B76515EF9EE@devnull.aditel.org> <1A668661A3AAA343B3C49E2F266DDAE0016C9526@ucixw2.uci.cu> <1155884d0812181709gd1e73a0hbe5bd62c428cec5d@mail.gmail.com> Message-ID: <729987b0812181732r6a7a4c09sd4b97188c7abf71a@mail.gmail.com> alguien me puede decir como dejar de recibir los correos, porfavor ya no quiero que me lleguen estos correos... gracias _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From py en ch3m4.org Fri Dec 19 02:41:11 2008 From: py en ch3m4.org (Chema Cortes) Date: Fri, 19 Dec 2008 02:41:11 +0100 Subject: Ayuda con =?iso-8859-1?q?expresi=F3n?= regular In-Reply-To: References: Message-ID: <200812190241.17770.py@ch3m4.org> El Thursday 18 December 2008 19:12:09 César García escribió: > Hola lista tengo el siguiente problema: > > Tengo un archivo "plantilla" de la siguiente manera: > > addTemplate: > -------------------------------------------- > NOMBRE > APELLIDO > MAIL > -------------------------------------------- > > Y tengo un script en python haciendo lo siguiente: > > uid='usuario1' > lastname='ap_usuario1' > mail=usuario1 en server.com > > now = strftime("%d-%m-%y-%H_%M_%S", localtime()) > filename = str(now) > FILE = open ('files/addTemplate','r') > plantilla = FILE.read() > new = open('files/'+filename,'w') > new.write( re.sub('UID', uid, plantilla)) > new.write( re.sub('APELLIDO', lastname, plantilla)) > new.write( re.sub('MAIL', mail, plantilla)) > new.close() > > > El problema es que el archivo resultante queda asi: > > Cesar > APELLIDO > MAIL > NOMBRE > GArcia Sanchez > MAIL > NOMBRE > APELLIDO > cgarcia > > Parece que no hace substitución, si no que agrega No, en realidad hace lo que le pides: escribir tres veces la misma plantilla, cambiando cada vez una cosa. re.sub() devuelve la cadena cambiada, pero deja intacta la original. Supongo que sabrás arreglarlo. Pero no necesitas usar expresiones regulares para algo tan simple. Usa el método .replace(), incluso como secuencia: plantilla.replace('UID', uid).replace('APELLIDO', lastname).replace('MAIL',mail) Otra sugerencia: suele ser más cómodo usar diccionarios para las cadenas a reemplazar subs={'UID':uid, 'APELLIDO':lastname, 'MAIL':mail} for k,v in subs.items(): plantilla.replace(k,v) ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: This is a digitally signed message part. URL: ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pych3m4 en gmail.com Fri Dec 19 05:01:04 2008 From: pych3m4 en gmail.com (Chema Cortes) Date: Fri, 19 Dec 2008 05:01:04 +0100 Subject: Contar digitos en un string In-Reply-To: <50ed08f40812180635v7c28a641h54af63bf494d691b@mail.gmail.com> References: <200812170251.30561.py@ch3m4.org> <4948D8E8.2010809@gmail.com> <200812171219.52994.faltet@pytables.org> <4948E3F1.5060202@gmail.com> <49495E66.20904@gmail.com> <50ed08f40812180635v7c28a641h54af63bf494d691b@mail.gmail.com> Message-ID: <2c9fb0dd0812182001p5e8133bbp1656ca15f231c2af@mail.gmail.com> El día 18 de diciembre de 2008 15:35, Vicent escribió: > Tengo una pregunta un poco "de novato"; mi objetivo es entender mejor el > manejo que hace Python de la memoria del ordenador: > > Centrándonos en la velocidad de ejecución de la que habláis, ¿todos las > variantes propuestas consumen "el mismo tipo de memoria"? Quiero decir, > ¿todas hacen uso de la memoria "RAM", o alguna escribe algún valor en disco? > Entiendo que sólo se usa la RAM, en ambos casos. El hecho de crear variables > o listas intermedias, supone reservar un espacio de memoria RAM que luego se > libera, ¿no? ¿Es eso peor (en términos de uso de memoria / velocidad) que > hacerlo todo de modo "implícito", en una sola línea de código? No te creas que se sabe mucho de la cantidad de memoria empleada. Cuando le decía a Francesc que faltaba saber la memoria consumida sabía de antemano que era difícil. Como mucho se podría estresar al sistema para ver cómo se comporta ante la escasez de memoria. La ejecución de python se hace sobre una máquina virtual, con memoria que podemos presuponer inagotable. Esta máquina virtual, por su lado, está implementada en C (CPython), aunque también la hay para JVM, CLR, Parrot,... Estas implementaciones delegan (casi siempre) en el sistema operativo, que es quien se apaña con el hardware para paginar y resituar la memoria (grabar en disco depende de la gestión de la memoria virtual que haga el sistema operativo). Sin entrar en más detalles, el intérprete python no tiene ninguna gestión de memoria propia. Para python, todo son objetos que pupulan por ahí y de los cuales sólo contamos con una referencia para acceder a ellos. En cuanto desaparece la referencia, el objeto deja de existir. En cuanto a las funciones, se crea para ellas un "entorno de ejecución" que sería el mundo restringido que sólo es visible desde dentro de la función. La máquina virtual mantiene estructuras de datos para almacenar los objetos. Cuando el intérprete deja de referenciar un objeto, la máquina virtual procede a liberar la memoria que ocupaba. Por poner un caso, cuando creamos un generador/iterador se crea un entorno de ejecución de modo similar a lo que sería crear una instancia de una clase (llamadas "clausuras"). Los entornos de ejecución se van intercambiando con el principal a medida que se va ejecutando el código. Entrando a analizar los algoritmos: 1) len([x for x in a if x.isdigit()]) Se crea una lista por compresión, Lo más costoso es el tiempo que se tarda en obtener cada caráter de la cadena (for x in a). La comprobación .isdigit() es bastante rápida ya que se realiza en C. El cálculo de la longitud de la lista es instantáneo. Estamos creando una lista intermedia que desaparecerá una vez obtenido el resultado. Con memoria suficiente no hay problemas. 2) sum(1 for c in a if c.isdigit()) Se crea un iterador que recorre la cadena carácter a carácter, sin necesitar almacenaje temporal. La suma se hace en C, por lo que es muy rápida. No emplea más memoria, pero tiene el incoveniente de estar conmutando entre el entorno de ejecución principal y el del iterador. Este tipo de conmutaciones es bastante dependiente del procesador, pero es generalmente muy costosa en tiempo. Con muticore/multiprocesador debería ir más rápido ejecutando en paralelo cada entorno en un procesador; pero está demostrado que no suele ser así, gastando más tiempo en sincronizar procesos que si se hubiera ejecutado secuencialmente. Además en python se añade la problemática del GIL (Global Interpreter Lock) que impide la ejecución en paralelo. 3) sum(a.count(c) for c in "0123456789") Se parece bastante a la segunda solución. El .count() se hace en C, por lo que es bastante rápido. La ventaja es que el iterador sólo se ejecuta 10 veces, indepedientemente de la longitud de la cadena. El hacerlo o no en una sóla línea de código es por prevenirse en salud. Nunca se suele usar el comando 'del' para borrar una referencia, por lo que es frecuente dejar que la referencia desaparezca sola al retornar de la función o al acabar el programa. Tal como dije, los objetos existen mientras sean referenciados, por lo estos objetos están ocupan espacio incluso muchos después de que ya no nos son útiles. Se puede decir que ya es casi una regla de estilo no usar variables intermedias siempre que sea posible; pero en verdad que no debería notarse mucho en cuestión de velocidad, ya que el código bytecode a ejecutar será prácticamente el mismo. > También está el uso de CPU, supongo que muy relacionado. ¿Son dos variables > diferentes a controlar, el % uso de CPU y la cantidad de memoria RAM usada, > o es lo mismo? ¿Puede ser que una de las soluciones propuestas en el hilo > sea mejor en cuanto a uso de RAM pero peor en cuanto a uso de CPU? "Siempre es más fácil optimizar código correcto que corregir código optimizado". Cuando programes en python nunca pienses al principio en la velocidad; ya habrá tiempo luego para optimizar. En cambio, la escalabilidad es siempre un factor a tener en cuenta desde el principio. Muchas veces no sabes la cantidad de datos que vas a tener que procesar, ni la memoria o potencia disponibles. Ser conservador en el gasto de memoria puede ayudar a crear aplicaciones más robustas. Aún así, a pesar de todo lo dicho, python tiene sus propias optimizaciones que pueden volverte un poco loco. Por ejemplo, el id de los objetos de python los identifica como entidades únicas (es como si fuera la posición de memoria que ocupa cada objeto en el intérprete). Cuanta más memoria gastas, más grandes serán los ids que se van asignando a los objetos. Es una forma de ver cómo vas de consumo de memoria; pero te puedes encontrar con sorpresas como ésta: >>> a=256 >>> b=256 >>> id(a)==id(b) True >>> a=257 >>> b=257 >>> id(a)==id(b) False Lo que aquí pasa es que python tiene creados siempre los enteros desde el -5 al 256, independientemente de si se van a usar o no. Sería memoria desperdiciada, pero ésta argucia ayuda a mejorar bastante el rendimiento de bucles cortos así como el acceso a los elementos de una lista. Por otro lado, la listas de enteros en este rango ocuparán bastante menos memoria que si se usaran otros enteros. Esto da idea que cuando se discute sobre la ventajas de usar xrange() frente a range() no tenga ya tanto sentido si se van a usar rangos cortos. Como ves, no es fácil dar una consigna a seguir. Si realmente tienes un algoritmo que necesitas optimizar hazlo en C o pyrex. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pdlopez en uci.cu Fri Dec 19 20:38:27 2008 From: pdlopez en uci.cu (Pavel Daniel Lopez Castillo) Date: Fri, 19 Dec 2008 14:38:27 -0500 Subject: (sin asunto)(SQLAlchemy) References: <20081219040120.1CB5315EF9F1@devnull.aditel.org> Message-ID: <1A668661A3AAA343B3C49E2F266DDAE0016C9529@ucixw2.uci.cu> Julio Napuri: Ya instale el sqlAlchemy, estuve viendo el tutorial de http://www.sqlalchemy.org/docs/05/intro.html#tutorials y dice que si se pone import sqlalchemy te debe salir la version, esa sentencia no me da error que antes si me daba porque no lo tenia instalado, pero no me saca la version no se porque. Ahora me gustaria saber si hay algun tutorial en español para introducirme en este tema????. que pasa, quise empesar con este ejemplo http://danigm.net/geco pero ya de momento from sqlalchemy import * from sqlAlchemy.ext.declarative import declarative_base from sqlAlchemy.orm import relation, backref, sessionmaker esto me da error. Nunca tomes decisiones en momentos de odio y dolor, pues puedes arrepentirte demasiado tarde. Ing: Pavel Daniel López Castillo telefóno: 2146 ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ydavid04044 en grm.jovenclub.cu Fri Dec 19 23:22:26 2008 From: ydavid04044 en grm.jovenclub.cu (Yaicel M Rodriguez David) Date: Fri, 19 Dec 2008 16:22:26 -0600 Subject: Problema con conexion a Bases de datos Message-ID: <003d01c96228$48691570$3b00a8c0@maq9> Hermanos de la lista. Me enfrascado en hacer una pequeña aplicación de escritorio, estoy programando con Boa y no encuentro por ningún lugar como conectarme a una base de dato DBF, en la que solo quiero guardar el nombre de una empresa, el nombre de trabajadores y el salario. Quisiera agradecer por la ayuda anterior. Saludos, Yaicel _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ydavid04044 en grm.jovenclub.cu Fri Dec 19 23:28:54 2008 From: ydavid04044 en grm.jovenclub.cu (Yaicel M Rodriguez David) Date: Fri, 19 Dec 2008 16:28:54 -0600 Subject: Nececito Tutoriales para Python Message-ID: <004401c96229$389e00f0$3b00a8c0@maq9> Hermanos de la Lista. Quisiera que me ayudaran a encontrar bibliografía en Castellano, de preferencia para Python 2.5, wxpython y Boa. Además si alguien de ustedes saben sobre algún Plugin para Netbean 6.1 que trabaje con Python y donde descargarlo. Saludos, yaicel _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From willian.radicaled en gmail.com Fri Dec 19 22:48:01 2008 From: willian.radicaled en gmail.com (RadicalEd) Date: Fri, 19 Dec 2008 16:48:01 -0500 Subject: Problema con conexion a Bases de datos In-Reply-To: <003d01c96228$48691570$3b00a8c0@maq9> References: <003d01c96228$48691570$3b00a8c0@maq9> Message-ID: Utiliza MySQLdb, creo que BOA no te permite hacer esas conexiones, debes hacerlo manual. On Fri, Dec 19, 2008 at 5:22 PM, Yaicel M Rodriguez David < ydavid04044 en grm.jovenclub.cu> wrote: > Hermanos de la lista. > Me enfrascado en hacer una pequeña aplicación de escritorio, estoy > programando con Boa y no encuentro por ningún lugar como conectarme a una > base de dato DBF, en la que solo quiero guardar el nombre de una empresa, el > nombre de trabajadores y el salario. > Quisiera agradecer por la ayuda anterior. > Saludos, Yaicel > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- The knowledge is the most dangerous weapon & SoloCodigo is the best programing webforum. http://foros.solocodigo.com http://radicalpython.blogspot.com http://revistacodigolatino.blogspot.com _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From willian.radicaled en gmail.com Fri Dec 19 22:48:28 2008 From: willian.radicaled en gmail.com (RadicalEd) Date: Fri, 19 Dec 2008 16:48:28 -0500 Subject: Problema con conexion a Bases de datos In-Reply-To: References: <003d01c96228$48691570$3b00a8c0@maq9> Message-ID: ups, perdón, no leí que tipo de DB era. On Fri, Dec 19, 2008 at 4:48 PM, RadicalEd wrote: > Utiliza MySQLdb, creo que BOA no te permite hacer esas conexiones, debes > hacerlo manual. > > > On Fri, Dec 19, 2008 at 5:22 PM, Yaicel M Rodriguez David < > ydavid04044 en grm.jovenclub.cu> wrote: > >> Hermanos de la lista. >> Me enfrascado en hacer una pequeña aplicación de escritorio, estoy >> programando con Boa y no encuentro por ningún lugar como conectarme a una >> base de dato DBF, en la que solo quiero guardar el nombre de una empresa, el >> nombre de trabajadores y el salario. >> Quisiera agradecer por la ayuda anterior. >> Saludos, Yaicel >> _______________________________________________ >> Lista de correo Python-es >> http://listas.aditel.org/listinfo/python-es >> FAQ: http://listas.aditel.org/faqpyes >> > > > > -- > The knowledge is the most dangerous > weapon & SoloCodigo is the best programing webforum. > http://foros.solocodigo.com > http://radicalpython.blogspot.com > http://revistacodigolatino.blogspot.com > -- The knowledge is the most dangerous weapon & SoloCodigo is the best programing webforum. http://foros.solocodigo.com http://radicalpython.blogspot.com http://revistacodigolatino.blogspot.com _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From willian.radicaled en gmail.com Fri Dec 19 22:49:55 2008 From: willian.radicaled en gmail.com (RadicalEd) Date: Fri, 19 Dec 2008 16:49:55 -0500 Subject: Problema con conexion a Bases de datos In-Reply-To: References: <003d01c96228$48691570$3b00a8c0@maq9> Message-ID: Checa este módulo http://www.fiby.at/dbfpy/ On Fri, Dec 19, 2008 at 4:48 PM, RadicalEd wrote: > ups, perdón, no leí que tipo de DB era. > > > On Fri, Dec 19, 2008 at 4:48 PM, RadicalEd wrote: > >> Utiliza MySQLdb, creo que BOA no te permite hacer esas conexiones, debes >> hacerlo manual. >> >> >> On Fri, Dec 19, 2008 at 5:22 PM, Yaicel M Rodriguez David < >> ydavid04044 en grm.jovenclub.cu> wrote: >> >>> Hermanos de la lista. >>> Me enfrascado en hacer una pequeña aplicación de escritorio, estoy >>> programando con Boa y no encuentro por ningún lugar como conectarme a una >>> base de dato DBF, en la que solo quiero guardar el nombre de una empresa, el >>> nombre de trabajadores y el salario. >>> Quisiera agradecer por la ayuda anterior. >>> Saludos, Yaicel >>> _______________________________________________ >>> Lista de correo Python-es >>> http://listas.aditel.org/listinfo/python-es >>> FAQ: http://listas.aditel.org/faqpyes >>> >> >> >> >> -- >> The knowledge is the most dangerous >> weapon & SoloCodigo is the best programing webforum. >> http://foros.solocodigo.com >> http://radicalpython.blogspot.com >> http://revistacodigolatino.blogspot.com >> > > > > -- > The knowledge is the most dangerous > weapon & SoloCodigo is the best programing webforum. > http://foros.solocodigo.com > http://radicalpython.blogspot.com > http://revistacodigolatino.blogspot.com > -- The knowledge is the most dangerous weapon & SoloCodigo is the best programing webforum. http://foros.solocodigo.com http://radicalpython.blogspot.com http://revistacodigolatino.blogspot.com _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ydavid04044 en grm.jovenclub.cu Fri Dec 19 23:52:04 2008 From: ydavid04044 en grm.jovenclub.cu (Yaicel M Rodriguez David) Date: Fri, 19 Dec 2008 16:52:04 -0600 Subject: EasyEclipse for Python Message-ID: <004b01c9622c$6adbc2c0$3b00a8c0@maq9> Hola hermanos de la lista. Quisiera su opinion hacerca de EasyEclipse for Python, que ventajas tiene en la programacion con Python 2.5. Saludos, yaicel _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From mlacunza en gmail.com Fri Dec 19 23:15:41 2008 From: mlacunza en gmail.com (Mario Lacunza) Date: Fri, 19 Dec 2008 17:15:41 -0500 Subject: EasyEclipse for Python In-Reply-To: <004b01c9622c$6adbc2c0$3b00a8c0@maq9> References: <004b01c9622c$6adbc2c0$3b00a8c0@maq9> Message-ID: <771741b20812191415o5c8075d8lcfb0715741e1c601@mail.gmail.com> no le veo nada de diferente para Python.. pues es de pago, mejor el Eclipse normal + pydev El día 19/12/08, Yaicel M Rodriguez David escribió: > > Hola hermanos de la lista. > Quisiera su opinion hacerca de EasyEclipse for Python, que ventajas tiene > en la programacion con Python 2.5. > Saludos, yaicel > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- Saludos / Best regards Mario Lacunza Software Architect - Webmaster Email: mlacunza [AT] gmail [DOT] com http://www.lacunza.info Lima - Peru ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From virako.9 en gmail.com Sat Dec 20 10:46:54 2008 From: virako.9 en gmail.com (Victor Ramirez) Date: Sat, 20 Dec 2008 10:46:54 +0100 Subject: Nececito Tutoriales para Python In-Reply-To: <004401c96229$389e00f0$3b00a8c0@maq9> References: <004401c96229$389e00f0$3b00a8c0@maq9> Message-ID: <4493a2020812200146h795006d6nddfcf22af200512b@mail.gmail.com> Manual para python te recomiendo Python para todos, que está bastante bien y lo van completando cada vez más. Te lo dejo el enlace aqui . 2008/12/19 Yaicel M Rodriguez David > Hermanos de la Lista. > Quisiera que me ayudaran a encontrar bibliografía en Castellano, de > preferencia para Python 2.5, wxpython y Boa. > Además si alguien de ustedes saben sobre algún Plugin para Netbean 6.1 que > trabaje con Python y donde descargarlo. > Saludos, yaicel > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- http://virako.wordpress.com http://pyrubik.wordpress.com _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From aciddized en gmail.com Sat Dec 20 14:19:29 2008 From: aciddized en gmail.com (Robert C. Rodriguez) Date: Sat, 20 Dec 2008 14:19:29 +0100 Subject: Nececito Tutoriales para Python In-Reply-To: <004401c96229$389e00f0$3b00a8c0@maq9> References: <004401c96229$389e00f0$3b00a8c0@maq9> Message-ID: <786142880812200519k582e4cb3oeb596330fb7cf7c0@mail.gmail.com> On Fri, Dec 19, 2008 at 11:28 PM, Yaicel M Rodriguez David < ydavid04044 en grm.jovenclub.cu> wrote: > Hermanos de la Lista. > Quisiera que me ayudaran a encontrar bibliografía en Castellano, de > preferencia para Python 2.5, wxpython y Boa. > Además si alguien de ustedes saben sobre algún Plugin para Netbean 6.1 que > trabaje con Python y donde descargarlo. > Saludos, yaicel > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > Ahí van un par de ellos: http://almacen.gulic.org/httlaclwp/index-1.htm http://almacen.gulic.org/diveintopython-5.4-es/toc/index.html Saludos -- ____________________________________ blog: http://bulleting.wordpress.com _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From alfonsodg en gmail.com Sat Dec 20 23:58:23 2008 From: alfonsodg en gmail.com (Alfonso de la Guarda) Date: Sat, 20 Dec 2008 17:58:23 -0500 Subject: Nececito Tutoriales para Python In-Reply-To: <004401c96229$389e00f0$3b00a8c0@maq9> References: <004401c96229$389e00f0$3b00a8c0@maq9> Message-ID: Hola, http://cosla.wikidot.com/continental Es un sitio donde guardo material sobre python y programación, incluyendo la traducción (a mi cargo) del libro "A Byte of Python". Saludos, -------------------------------- Alfonso de la Guarda COS www.cosperu.com alfonsodg.blogspot.com alfonsodg.wordpress.com Telef. 997550914 1024D/B23B24A4 5469 ED92 75A3 BBDB FD6B 58A5 54A1 851D B23B 24A4 On Fri, Dec 19, 2008 at 17:28, Yaicel M Rodriguez David wrote: > Hermanos de la Lista. > Quisiera que me ayudaran a encontrar bibliografía en Castellano, de preferencia para Python 2.5, wxpython y Boa. > Además si alguien de ustedes saben sobre algún Plugin para Netbean 6.1 que trabaje con Python y donde descargarlo. > Saludos, yaicel > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From abraham.zamudio en gmail.com Sun Dec 21 01:02:23 2008 From: abraham.zamudio en gmail.com (Abraham Zamudio) Date: Sat, 20 Dec 2008 19:02:23 -0500 Subject: Nececito Tutoriales para Python In-Reply-To: References: <004401c96229$389e00f0$3b00a8c0@maq9> Message-ID: <594dda620812201602p21bd6aei71259630737c62d0@mail.gmail.com> Puedes buscar en : - http://read.freeduan.com/ - http://www.gigapedia.org/ Suerte , sino en google con el comando site , asì - tutoriales python site:blogspot.com oh ya pes ... si ninguno te convence en python.org # Espero no violar ninguna ley ... cualquier cosa es culpa del teclado XDDDD On Sat, Dec 20, 2008 at 5:58 PM, Alfonso de la Guarda wrote: > Hola, > > http://cosla.wikidot.com/continental > > Es un sitio donde guardo material sobre python y programación, > incluyendo la traducción (a mi cargo) del libro "A Byte of Python". > > Saludos, > > -------------------------------- > Alfonso de la Guarda > COS > www.cosperu.com > alfonsodg.blogspot.com > alfonsodg.wordpress.com > Telef. 997550914 > 1024D/B23B24A4 > 5469 ED92 75A3 BBDB FD6B 58A5 54A1 851D B23B 24A4 > > > > On Fri, Dec 19, 2008 at 17:28, Yaicel M Rodriguez David > wrote: > > Hermanos de la Lista. > > Quisiera que me ayudaran a encontrar bibliografía en Castellano, de > preferencia para Python 2.5, wxpython y Boa. > > Además si alguien de ustedes saben sobre algún Plugin para Netbean 6.1 > que trabaje con Python y donde descargarlo. > > Saludos, yaicel > > _______________________________________________ > > Lista de correo Python-es > > http://listas.aditel.org/listinfo/python-es > > FAQ: http://listas.aditel.org/faqpyes > > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- Abraham Zamudio Ch. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From abraham.zamudio en gmail.com Sun Dec 21 01:04:08 2008 From: abraham.zamudio en gmail.com (Abraham Zamudio) Date: Sat, 20 Dec 2008 19:04:08 -0500 Subject: Nececito Tutoriales para Python In-Reply-To: <594dda620812201602p21bd6aei71259630737c62d0@mail.gmail.com> References: <004401c96229$389e00f0$3b00a8c0@maq9> <594dda620812201602p21bd6aei71259630737c62d0@mail.gmail.com> Message-ID: <594dda620812201604u65989637pf8a82039cc373a70@mail.gmail.com> Ah y ese libro "*A Byte of Python*" es altamente recomendable para empezar . 2008/12/20 Abraham Zamudio > Puedes buscar en : > > > - http://read.freeduan.com/ > - http://www.gigapedia.org/ > > Suerte , sino en google con el comando site , asì > > > - tutoriales python site:blogspot.com > > oh ya pes ... si ninguno te convence en python.org > > # Espero no violar ninguna ley ... cualquier cosa es culpa del teclado > XDDDD > > > On Sat, Dec 20, 2008 at 5:58 PM, Alfonso de la Guarda > wrote: > >> Hola, >> >> http://cosla.wikidot.com/continental >> >> Es un sitio donde guardo material sobre python y programación, >> incluyendo la traducción (a mi cargo) del libro "A Byte of Python". >> >> Saludos, >> >> -------------------------------- >> Alfonso de la Guarda >> COS >> www.cosperu.com >> alfonsodg.blogspot.com >> alfonsodg.wordpress.com >> Telef. 997550914 >> 1024D/B23B24A4 >> 5469 ED92 75A3 BBDB FD6B 58A5 54A1 851D B23B 24A4 >> >> >> >> On Fri, Dec 19, 2008 at 17:28, Yaicel M Rodriguez David >> wrote: >> > Hermanos de la Lista. >> > Quisiera que me ayudaran a encontrar bibliografía en Castellano, de >> preferencia para Python 2.5, wxpython y Boa. >> > Además si alguien de ustedes saben sobre algún Plugin para Netbean 6.1 >> que trabaje con Python y donde descargarlo. >> > Saludos, yaicel >> > _______________________________________________ >> > Lista de correo Python-es >> > http://listas.aditel.org/listinfo/python-es >> > FAQ: http://listas.aditel.org/faqpyes >> > >> _______________________________________________ >> Lista de correo Python-es >> http://listas.aditel.org/listinfo/python-es >> FAQ: http://listas.aditel.org/faqpyes >> > > > > -- > Abraham Zamudio Ch. > -- Abraham Zamudio Ch. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From riverplatense en gmail.com Sun Dec 21 13:04:36 2008 From: riverplatense en gmail.com (Javier Castrillo) Date: Sun, 21 Dec 2008 10:04:36 -0200 Subject: Listado de ejercicios en un curso para principiantes Message-ID: Les envío la lista de ejercicios[0] usado en el primer curso de Programación usando Python en la Provincia de Buenos Aires, República Argentina, en el marco de la educación popular de adultos. Sirve tanto para los que necesiten armar un curso como para aquellos autodidactas que quieran ejercitarse. Saludos [0] http://javiercastrillo.wordpress.com/2008/12/21/terminamos-el-curso-de-python-ejercicios-y-evaluacion/ -- Javier Castrillo ========================================================= GNU / Linux User #242275 Jabber: Riverplatense en jabberes.org Blog: http://javiercastrillo.wordpress.com Site: http://carapa.com.ar Ekiga: riverplatense en ekiga.net ========================================================= Usá Software Libre _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From martefabian en tredasis.com Mon Dec 22 06:32:08 2008 From: martefabian en tredasis.com (Marte =?ISO-8859-1?Q?Fabi=E1n?= Baquerizo =?ISO-8859-1?Q?S=E1nchez?=) Date: Sun, 21 Dec 2008 23:32:08 -0600 Subject: EasyEclipse for Python In-Reply-To: <771741b20812191415o5c8075d8lcfb0715741e1c601@mail.gmail.com> References: <004b01c9622c$6adbc2c0$3b00a8c0@maq9> <771741b20812191415o5c8075d8lcfb0715741e1c601@mail.gmail.com> Message-ID: <1229923928.6822.2.camel@martefabian-laptop> Easyeclipse for Python es gratuito, te lo puedes descargar desde: http://www.easyeclipse.org/site/distributions/python.html y no es más que un entorno preconfigurado de eclipse que incluye el Pydev y algunas otras cosillas útiles. Yo lo uso y me parece muy bueno, mientras aprendo VIM ;). Saludos. El vie, 19-12-2008 a las 17:15 -0500, Mario Lacunza escribió: > no le veo nada de diferente para Python.. pues es de pago, mejor el Eclipse > normal + pydev > > El día 19/12/08, Yaicel M Rodriguez David > escribió: > > > > Hola hermanos de la lista. > > Quisiera su opinion hacerca de EasyEclipse for Python, que ventajas tiene > > en la programacion con Python 2.5. > > Saludos, yaicel > > _______________________________________________ > > Lista de correo Python-es > > http://listas.aditel.org/listinfo/python-es > > FAQ: http://listas.aditel.org/faqpyes > > > > > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From mlacunza en gmail.com Mon Dec 22 17:27:19 2008 From: mlacunza en gmail.com (Mario Lacunza) Date: Mon, 22 Dec 2008 11:27:19 -0500 Subject: EasyEclipse for Python In-Reply-To: <1229923928.6822.2.camel@martefabian-laptop> References: <004b01c9622c$6adbc2c0$3b00a8c0@maq9> <771741b20812191415o5c8075d8lcfb0715741e1c601@mail.gmail.com> <1229923928.6822.2.camel@martefabian-laptop> Message-ID: <771741b20812220827m500345ddn19cca1ae216abe0b@mail.gmail.com> Si tienes razon, me confundi con el otro, el problema con el Easyclipse es q tiene versiones muy antiguas, mejor te bajas el Eclipse normal y tu mismo lo configuras con lo ultimo, no es nada dificil El día 22/12/08, Marte Fabián Baquerizo Sánchez escribió: > > Easyeclipse for Python es gratuito, te lo puedes descargar desde: > > http://www.easyeclipse.org/site/distributions/python.html > > y no es más que un entorno preconfigurado de eclipse que incluye el > Pydev y algunas otras cosillas útiles. > > Yo lo uso y me parece muy bueno, mientras aprendo VIM ;). > > Saludos. > > > El vie, 19-12-2008 a las 17:15 -0500, Mario Lacunza escribió: > > no le veo nada de diferente para Python.. pues es de pago, mejor el > Eclipse > > normal + pydev > > > > El día 19/12/08, Yaicel M Rodriguez David > > escribió: > > > > > > Hola hermanos de la lista. > > > Quisiera su opinion hacerca de EasyEclipse for Python, que ventajas > tiene > > > en la programacion con Python 2.5. > > > Saludos, yaicel > > > _______________________________________________ > > > Lista de correo Python-es > > > http://listas.aditel.org/listinfo/python-es > > > FAQ: http://listas.aditel.org/faqpyes > > > > > > > > > > > _______________________________________________ > > Lista de correo Python-es > > http://listas.aditel.org/listinfo/python-es > > FAQ: http://listas.aditel.org/faqpyes > > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- Saludos / Best regards Mario Lacunza Software Architect - Webmaster Email: mlacunza [AT] gmail [DOT] com http://www.lacunza.info Lima - Peru ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From inf200468 en ucf.edu.cu Mon Dec 22 17:39:09 2008 From: inf200468 en ucf.edu.cu (inf200468 en ucf.edu.cu) Date: Mon, 22 Dec 2008 11:39:09 -0500 (EST) Subject: convertir de binario a decimal Message-ID: <44773.10.14.2.42.1229963949.squirrel@correo.ucf.edu.cu> Hola, sigo haciendo un algoritmo para hacer un and entre una direcc ip y la mascara de red , para obtener la direcc de red, ya tengo hecha una funcion que convierte de decimal a binario, pero no me queda claro como implementar una funcion que convierta de binario a decimal, y no se como hacer un and logico entre numeros binarios y obtener el resultado , ejemplo 1001 and 0011 si pudieran ayudarme. Saludos  Gracias -------------------------------- Servicio del Grupo de Redes Universidad de Cienfuegos Contacto: adminred en ucf.edu.cu ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From arturoeanton en yahoo.com.ar Mon Dec 22 18:06:53 2008 From: arturoeanton en yahoo.com.ar (arturo anton) Date: Mon, 22 Dec 2008 09:06:53 -0800 (PST) Subject: Nececito Tutoriales para Python In-Reply-To: <004401c96229$389e00f0$3b00a8c0@maq9> References: <004401c96229$389e00f0$3b00a8c0@maq9> Message-ID: <134146.30219.qm@web52903.mail.re2.yahoo.com> les dejo mi blog de python  donde escribo sobre python http://www.binsd.com.ar --- El vie 19-dic-08, Yaicel M Rodriguez David escribió: De: Yaicel M Rodriguez David Asunto: [Python-es] Nececito Tutoriales para Python Para: python-es en aditel.org Fecha: viernes, 19 de diciembre de 2008, 7:28 pm Hermanos de la Lista. Quisiera que me ayudaran a encontrar bibliografía en Castellano, de preferencia para Python 2.5, wxpython y Boa. Además si alguien de ustedes saben sobre algún Plugin para Netbean 6.1 que trabaje con Python y donde descargarlo. Saludos, yaicel _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes ____________________________________________________________________________________ ¡Buscá desde tu celular! Yahoo! oneSEARCH ahora está en Claro http://ar.mobile.yahoo.com/onesearch _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From daganu en gmail.com Mon Dec 22 18:11:22 2008 From: daganu en gmail.com (=?UTF-8?B?RGF2aWQgR2FyY8OtYQ==?=) Date: Mon, 22 Dec 2008 18:11:22 +0100 Subject: convertir de binario a decimal In-Reply-To: <44773.10.14.2.42.1229963949.squirrel@correo.ucf.edu.cu> References: <44773.10.14.2.42.1229963949.squirrel@correo.ucf.edu.cu> Message-ID: <494FCA3A.4080205@gmail.com> Así a bote pronto y mal hecho: def foo(n): n = reversed(n) return sum([(2**(n[0]))*(int(n[1])) for n in enumerate(n)]) print fun('0') print fun('1') print fun('10') print fun('11') print fun('1010101') 0 1 2 3 85 inf200468 en ucf.edu.cu escribió: > Hola, sigo haciendo un algoritmo para hacer un and entre una direcc ip y la mascara de > red , para obtener la direcc de red, ya tengo hecha una funcion que convierte de decimal > a binario, pero no me queda claro como implementar una funcion que convierta de binario > a decimal, y no se como hacer un and logico entre numeros binarios y obtener el > resultado , ejemplo 1001 and 0011 > si pudieran ayudarme. > Saludos? > Gracias > > > -------------------------------- > Servicio del Grupo de Redes > Universidad de Cienfuegos > Contacto: adminred en ucf.edu.cu > > ------------------------------------------------------------------------ > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From med.swl en gmail.com Mon Dec 22 18:24:31 2008 From: med.swl en gmail.com (Medardo Rodriguez (Merchise Group)) Date: Mon, 22 Dec 2008 12:24:31 -0500 Subject: convertir de binario a decimal In-Reply-To: <44773.10.14.2.42.1229963949.squirrel@correo.ucf.edu.cu> References: <44773.10.14.2.42.1229963949.squirrel@correo.ucf.edu.cu> Message-ID: <4891add70812220924i4dd2b6d3kd4cfeabd58afe708@mail.gmail.com> 2008/12/22 : > Hola, sigo haciendo un algoritmo para hacer un and entre una direcc ip y la mascara de > red , para obtener la direcc de red, ya tengo hecha una funcion que convierte de decimal > a binario, pero no me queda claro como implementar una funcion que convierta de binario > a decimal, y no se como hacer un and logico entre numeros binarios y obtener el > resultado , ejemplo 1001 and 0011 > si pudieran ayudarme. La verdad es que no entiendo bien algunas cosas de las que expresas. Si tienes el IP y la máscara en sendas cadenas, y quieres obtener una cadena como resultado haciendo un AND con cada componente de ambas. Tu problema se resolvería de la siguiente forma: #!/usr/bin/env python from operator import __and__ as bin_and ip_parts = lambda ip: [int(part) for part in ip.split('.')] bin_addr = lambda ip, mask: map(bin_and, ip_parts(ip), ip_parts(mask)) str_addr = lambda ip, mask: '.'.join(str(p) for p in bin_addr(ip, mask)) print str_addr('200.123.2.1', '255.255.255.128') Saludos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From lasizoillo en gmail.com Mon Dec 22 18:27:40 2008 From: lasizoillo en gmail.com (lasizoillo) Date: Mon, 22 Dec 2008 18:27:40 +0100 Subject: convertir de binario a decimal In-Reply-To: <494FCA3A.4080205@gmail.com> References: <44773.10.14.2.42.1229963949.squirrel@correo.ucf.edu.cu> <494FCA3A.4080205@gmail.com> Message-ID: <49414f570812220927w1dfe2242u58e1fc8c4743d815@mail.gmail.com> 2008/12/22 David García : > Así a bote pronto y mal hecho: > > def foo(n): > n = reversed(n) > return sum([(2**(n[0]))*(int(n[1])) for n in enumerate(n)]) > > print fun('0') > print fun('1') > print fun('10') > print fun('11') > print fun('1010101') > > 0 > 1 > 2 > 3 > 85 > A veces las cosas en python son incluso más fáciles: In [11]: print int('1010101',2) 85 ;-) > inf200468 en ucf.edu.cu escribió: >> Hola, sigo haciendo un algoritmo para hacer un and entre una direcc ip y la mascara de >> red , para obtener la direcc de red, ya tengo hecha una funcion que convierte de decimal >> a binario, pero no me queda claro como implementar una funcion que convierta de binario >> a decimal, y no se como hacer un and logico entre numeros binarios y obtener el >> resultado , ejemplo 1001 and 0011 >> si pudieran ayudarme. >> Saludos? >> Gracias >> >> >> -------------------------------- >> Servicio del Grupo de Redes >> Universidad de Cienfuegos >> Contacto: adminred en ucf.edu.cu >> >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> Lista de correo Python-es >> http://listas.aditel.org/listinfo/python-es >> FAQ: http://listas.aditel.org/faqpyes > > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From daganu en gmail.com Mon Dec 22 18:43:32 2008 From: daganu en gmail.com (=?UTF-8?B?RGF2aWQgR2FyY8OtYQ==?=) Date: Mon, 22 Dec 2008 18:43:32 +0100 Subject: convertir de binario a decimal In-Reply-To: <49414f570812220927w1dfe2242u58e1fc8c4743d815@mail.gmail.com> References: <44773.10.14.2.42.1229963949.squirrel@correo.ucf.edu.cu> <494FCA3A.4080205@gmail.com> <49414f570812220927w1dfe2242u58e1fc8c4743d815@mail.gmail.com> Message-ID: <494FD1C4.5070604@gmail.com> Correcto, pero el decía: "pero no me queda claro como implementar una funcion que convierta de binario a decimal" Igual por el placer que da reinventar ruedas !? lasizoillo escribió: > 2008/12/22 David García : > >> Así a bote pronto y mal hecho: >> >> def foo(n): >> n = reversed(n) >> return sum([(2**(n[0]))*(int(n[1])) for n in enumerate(n)]) >> >> print fun('0') >> print fun('1') >> print fun('10') >> print fun('11') >> print fun('1010101') >> >> 0 >> 1 >> 2 >> 3 >> 85 >> >> > > A veces las cosas en python son incluso más fáciles: > > In [11]: print int('1010101',2) > 85 > > ;-) > > >> inf200468 en ucf.edu.cu escribió: >> >>> Hola, sigo haciendo un algoritmo para hacer un and entre una direcc ip y la mascara de >>> red , para obtener la direcc de red, ya tengo hecha una funcion que convierte de decimal >>> a binario, pero no me queda claro como implementar una funcion que convierta de binario >>> a decimal, y no se como hacer un and logico entre numeros binarios y obtener el >>> resultado , ejemplo 1001 and 0011 >>> si pudieran ayudarme. >>> Saludos? >>> Gracias >>> >>> >>> -------------------------------- >>> Servicio del Grupo de Redes >>> Universidad de Cienfuegos >>> Contacto: adminred en ucf.edu.cu >>> >>> ------------------------------------------------------------------------ >>> >>> _______________________________________________ >>> Lista de correo Python-es >>> http://listas.aditel.org/listinfo/python-es >>> FAQ: http://listas.aditel.org/faqpyes >>> >> _______________________________________________ >> Lista de correo Python-es >> http://listas.aditel.org/listinfo/python-es >> FAQ: http://listas.aditel.org/faqpyes >> >> >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> Lista de correo Python-es >> http://listas.aditel.org/listinfo/python-es >> FAQ: http://listas.aditel.org/faqpyes ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From celord en gmail.com Mon Dec 22 21:33:25 2008 From: celord en gmail.com (=?ISO-8859-1?Q?C=E9sar_Garc=EDa?=) Date: Mon, 22 Dec 2008 14:33:25 -0600 Subject: =?ISO-8859-1?Q?Re:__Ayuda_con_expresi=F3n_regular?= In-Reply-To: <200812190241.17770.py@ch3m4.org> References: <200812190241.17770.py@ch3m4.org> Message-ID: Genial chema muchas gracias... implementado! 2008/12/18 Chema Cortes > El Thursday 18 December 2008 19:12:09 César García escribió: > > Hola lista tengo el siguiente problema: > > > > Tengo un archivo "plantilla" de la siguiente manera: > > > > addTemplate: > > -------------------------------------------- > > NOMBRE > > APELLIDO > > MAIL > > -------------------------------------------- > > > > Y tengo un script en python haciendo lo siguiente: > > > > uid='usuario1' > > lastname='ap_usuario1' > > mail=usuario1 en server.com > > > > now = strftime("%d-%m-%y-%H_%M_%S", localtime()) > > filename = str(now) > > FILE = open ('files/addTemplate','r') > > plantilla = FILE.read() > > new = open('files/'+filename,'w') > > new.write( re.sub('UID', uid, plantilla)) > > new.write( re.sub('APELLIDO', lastname, plantilla)) > > new.write( re.sub('MAIL', mail, plantilla)) > > new.close() > > > > > > El problema es que el archivo resultante queda asi: > > > > Cesar > > APELLIDO > > MAIL > > NOMBRE > > GArcia Sanchez > > MAIL > > NOMBRE > > APELLIDO > > cgarcia > > > > Parece que no hace substitución, si no que agrega > > No, en realidad hace lo que le pides: escribir tres veces la misma > plantilla, > cambiando cada vez una cosa. > > re.sub() devuelve la cadena cambiada, pero deja intacta la original. > Supongo > que sabrás arreglarlo. > > Pero no necesitas usar expresiones regulares para algo tan simple. Usa el > método .replace(), incluso como secuencia: > > plantilla.replace('UID', uid).replace('APELLIDO', > lastname).replace('MAIL',mail) > > Otra sugerencia: suele ser más cómodo usar diccionarios para las cadenas a > reemplazar > > subs={'UID':uid, 'APELLIDO':lastname, 'MAIL':mail} > > for k,v in subs.items(): > plantilla.replace(k,v) > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- http://celord.blogspot.com/ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From maengora en gmail.com Tue Dec 23 01:44:43 2008 From: maengora en gmail.com (=?ISO-8859-1?Q?Manuel_Enrique_Gonz=E1lez_Ram=EDrez?=) Date: Mon, 22 Dec 2008 19:44:43 -0500 Subject: Listado de ejercicios en un curso para principiantes In-Reply-To: References: Message-ID: Gracias por el aporte. 2008/12/21 Javier Castrillo > Les envío la lista de ejercicios[0] usado en el primer curso de > Programación usando Python en la Provincia de Buenos Aires, República > Argentina, en el marco de la educación popular de adultos. Sirve tanto > para los que necesiten armar un curso como para aquellos autodidactas > que quieran ejercitarse. > > Saludos > > [0] > http://javiercastrillo.wordpress.com/2008/12/21/terminamos-el-curso-de-python-ejercicios-y-evaluacion/ > > -- > Javier Castrillo > > ========================================================= > GNU / Linux User #242275 > > Jabber: Riverplatense en jabberes.org > Blog: http://javiercastrillo.wordpress.com > Site: http://carapa.com.ar > Ekiga: riverplatense en ekiga.net > ========================================================= > Usá Software Libre > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From damufo en gmail.com Tue Dec 23 11:14:31 2008 From: damufo en gmail.com (damufo) Date: Tue, 23 Dec 2008 11:14:31 +0100 Subject: py2exe diferencia visual entre inicial y compilado Message-ID: <4950BA07.3000401@gmail.com> Hola He generado un paquete con el py2exe el caso es que a apariencia es diferente en la aplicación compilada. python 2.5 wx 28 win xp el setup que uso es este from distutils.core import setup import py2exe setup(options = {"py2exe": {"packages": ["encodings"]}}, windows=["aplicacion.pyw"]) anexo captura con diferencias ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From cgalisteo en k-rolus.net Tue Dec 23 11:24:38 2008 From: cgalisteo en k-rolus.net (Carlos) Date: Tue, 23 Dec 2008 11:24:38 +0100 Subject: py2exe diferencia visual entre inicial y compilado In-Reply-To: <4950BA07.3000401@gmail.com> References: <4950BA07.3000401@gmail.com> Message-ID: 2008/12/23 damufo : > anexo captura con diferencias No, no lo haces :) -- --- Carlos Galisteo PGP_key::http://k-rolus.net/~cgalisteo/cgalisteo.gpg Key_Fingerprint::F888 6FBA 9145 B5A2 C187 66D6 5B8C 027A 69AD BE65 --- ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jjachuf en gmail.com Tue Dec 23 11:30:52 2008 From: jjachuf en gmail.com (Jose Jachuf) Date: Tue, 23 Dec 2008 10:30:52 +0000 Subject: py2exe diferencia visual entre inicial y compilado In-Reply-To: <4950BA07.3000401@gmail.com> References: <4950BA07.3000401@gmail.com> Message-ID: 2008/12/23 damufo : > Hola > He generado un paquete con el py2exe el caso es que a apariencia es > diferente en la aplicación compilada. > > python 2.5 > wx 28 > win xp > Hola tenes que incluir en el archivo setup.py lo siguiente: manifest = """ myProgram """ setup( ... windows=[{"script":"presupuestos.pyw", "icon_resources":[(1, "presupuestos.ico")], "other_resources": [(24,1,manifest)], }], ... Saludos Jose _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From damufo en gmail.com Tue Dec 23 11:52:12 2008 From: damufo en gmail.com (damufo) Date: Tue, 23 Dec 2008 11:52:12 +0100 Subject: py2exe diferencia visual entre inicial y compilado In-Reply-To: References: <4950BA07.3000401@gmail.com> Message-ID: <4950C2DC.7020507@gmail.com> cierto, no iba en el texto sinó en medio del texto.. ahora además la anexo. Carlos escribiu: > 2008/12/23 damufo : >> anexo captura con diferencias > > No, no lo haces :) > > > > > > ------------------------------------------------------------------------ > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ikarush en gmail.com Tue Dec 23 11:59:46 2008 From: ikarush en gmail.com (=?UTF-8?Q?Daniel_Gonz=C3=A1lez?=) Date: Tue, 23 Dec 2008 11:59:46 +0100 Subject: py2exe diferencia visual entre inicial y compilado In-Reply-To: <4950C2DC.7020507@gmail.com> References: <4950BA07.3000401@gmail.com> <4950C2DC.7020507@gmail.com> Message-ID: 2008/12/23 damufo : > cierto, no iba en el texto sinó en medio del texto.. ahora además la anexo. Definitivamente.... se te resisten esas imagenes!! > > Carlos escribiu: >> >> 2008/12/23 damufo : >>> >>> anexo captura con diferencias >> >> No, no lo haces :) >> >> >> >> >> >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es >> FAQ: http://listas.aditel.org/faqpyes > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From damufo en gmail.com Tue Dec 23 12:04:51 2008 From: damufo en gmail.com (damufo) Date: Tue, 23 Dec 2008 12:04:51 +0100 Subject: py2exe diferencia visual entre inicial y compilado In-Reply-To: References: <4950BA07.3000401@gmail.com> <4950C2DC.7020507@gmail.com> Message-ID: <4950C5D3.1060501@gmail.com> Daniel González escribiu: > 2008/12/23 damufo : >> cierto, no iba en el texto sinó en medio del texto.. ahora además la anexo. > > Definitivamente.... se te resisten esas imagenes!! > Ya no es cosa mía. "habelas hailas" de todos modos gracias. La solución estaba en lo que indicaba José, el manifiest. Lo he incluido y ahora ya se ve igual. Saludos y gracias > Hola > > tenes que incluir en el archivo setup.py lo siguiente: > > manifest = """ > > manifestVersion="1.0"> > version="0.64.1.0" > processorArchitecture="x86" > name="Controls" > type="win32" > /> > myProgram > > > type="win32" > name="Microsoft.Windows.Common-Controls" > version="6.0.0.0" > processorArchitecture="X86" > publicKeyToken="6595b64144ccf1df" > language="*" > /> > > > > """ > > setup( > ... > windows=[{"script":"presupuestos.pyw", > "icon_resources":[(1, "presupuestos.ico")], > "other_resources": [(24,1,manifest)], > }], > ... > > Saludos > Jose >> Carlos escribiu: >>> 2008/12/23 damufo : >>>> anexo captura con diferencias >>> No, no lo haces :) >>> >>> >>> >>> >>> >>> ------------------------------------------------------------------------ >>> >>> _______________________________________________ >>> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es >>> FAQ: http://listas.aditel.org/faqpyes >> _______________________________________________ >> Lista de correo Python-es >> http://listas.aditel.org/listinfo/python-es >> FAQ: http://listas.aditel.org/faqpyes >> >> >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> Lista de correo Python-es >> http://listas.aditel.org/listinfo/python-es >> FAQ: http://listas.aditel.org/faqpyes ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pachi en rvburke.com Tue Dec 23 13:23:56 2008 From: pachi en rvburke.com (Rafael Villar Burke) Date: Tue, 23 Dec 2008 13:23:56 +0100 Subject: py2exe diferencia visual entre inicial y compilado In-Reply-To: <4950C5D3.1060501@gmail.com> References: <4950BA07.3000401@gmail.com> <4950C2DC.7020507@gmail.com> <4950C5D3.1060501@gmail.com> Message-ID: <4950D85C.4020606@rvburke.com> damufo wrote: >> Definitivamente.... se te resisten esas imagenes!! > Ya no es cosa mía. > "habelas hailas" Sin duda :). Aunque es probable que la lista no permita ese tipo de adjuntos o archivos a partir de determinado tamaño. Saludos y felices fiestas, Rafael Villar Burke ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From damufo en gmail.com Tue Dec 23 13:27:22 2008 From: damufo en gmail.com (damufo) Date: Tue, 23 Dec 2008 13:27:22 +0100 Subject: py2exe diferencia visual entre inicial y compilado In-Reply-To: <4950D85C.4020606@rvburke.com> References: <4950BA07.3000401@gmail.com> <4950C2DC.7020507@gmail.com> <4950C5D3.1060501@gmail.com> <4950D85C.4020606@rvburke.com> Message-ID: <4950D92A.9010006@gmail.com> Rafael Villar Burke escribiu: > damufo wrote: >>> Definitivamente.... se te resisten esas imagenes!! >> Ya no es cosa mía. >> "habelas hailas" > Sin duda :). Aunque es probable que la lista no permita ese tipo de > adjuntos o archivos a partir de determinado tamaño. > > Saludos y felices fiestas, > > Rafael Villar Burke Pienso que no permite ningún tamaño la mía solo tiene 13,6 KB (13.967 bytes) Felices fiestas! > > > ------------------------------------------------------------------------ > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From dani en danigm.net Tue Dec 23 19:32:38 2008 From: dani en danigm.net (Daniel Garcia Moreno) Date: Tue, 23 Dec 2008 19:32:38 +0100 Subject: modulos en python3 Message-ID: <1230057158.14752.19.camel@rincewind> He estado haciendo unas pruebas con python3 y me he encontrado con un problema. No se si es de mi versión de python3 o si es que algo ha cambiado y no se cómo va. Tengo esta estructura de ficheros: test/ |-- __init__.py `-- t2.py fichero __init__.py: import t2 fichero t2.py: v = 2 $python3 >>> import test Traceback (most recent call last): File "", line 1, in File "test/__init__.py", line 1, in import t2 ImportError: No module named t2 >>> Sin embargo si en el fichero __init__.py en lugar de "import t2" pongo "import test.t2" sí que funciona bien. ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 197 bytes Desc: Esta parte del mensaje está firmada digitalmente URL: ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From cgalisteo en k-rolus.net Tue Dec 23 22:44:26 2008 From: cgalisteo en k-rolus.net (Carlos) Date: Tue, 23 Dec 2008 22:44:26 +0100 Subject: modulos en python3 In-Reply-To: <1230057158.14752.19.camel@rincewind> References: <1230057158.14752.19.camel@rincewind> Message-ID: 2008/12/23 Daniel Garcia Moreno : > problema. No se si es de mi versión de python3 o si es que algo ha > cambiado y no se cómo va. No lo he probado, pero puede que te estés topando con este cambio : ->The only acceptable syntax for relative imports is from .[module] import name. All import forms not starting with . are interpreted as absolute imports. [1] (PEP 0328) [2] No lo traduzco, que creo que se entiende bien, si necesitas ayuda dilo. [1]http://docs.python.org/dev/3.0/whatsnew/3.0.html (En la sección "Removed Syntax") [2]http://www.python.org/dev/peps/pep-0328/ -- --- Carlos Galisteo PGP_key::http://k-rolus.net/~cgalisteo/cgalisteo.gpg Key_Fingerprint::F888 6FBA 9145 B5A2 C187 66D6 5B8C 027A 69AD BE65 --- ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From agtugo en gmail.com Wed Dec 24 04:46:27 2008 From: agtugo en gmail.com (=?ISO-8859-1?Q?Arturo_Mu=F1oz_Tolosa?=) Date: Tue, 23 Dec 2008 21:46:27 -0600 Subject: creo que encontre un bug Message-ID: <4951B093.502@gmail.com> Creo que encontre un bug, pero no se bien si lo es me salio cuando estaba haciendo un programa. Trate de simplificarlo solo para mostrar donde reside lo que creo que podria ser un bug, aqui lo que hago es una clase prueba y una clase conjunto la clase preuba por default tiene: a =[ ] y la hago un atributo de la clase Entonces lo que hice fue hacer tres objetos de la clase prueba y se me ocurrio con un append agregarle un elemento, en este caso fue un entero 0 pero mi sorpresa es que al momento de imprimirlo obtuve [0, 0, 0][0, 0, 0][0, 0, 0] y yo esperaba [0],[0],[0] igual y hay un concepto de python que no entiendo,¿ alguna idea? class prueba: def __init__(self, a=[]): self.a = a def __str__(self): return str(self.a) class conjunto: def __init__(self, b=[]): self.b = b for elemento in self.b: elemento.a.append(0) def __str__(self): vacio = '' for elemento in self.b: vacio = vacio + str(elemento) return vacio papa = prueba() pepe = prueba() pipi = prueba() lista = [papa,pepe,pipi] final=conjunto(lista) print(final) _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From victoredier en yahoo.com Wed Dec 24 05:16:42 2008 From: victoredier en yahoo.com (Victor Edier) Date: Tue, 23 Dec 2008 20:16:42 -0800 (PST) Subject: creo que encontre un bug References: <4951B093.502@gmail.com> Message-ID: <544648.98791.qm@web30801.mail.mud.yahoo.com> la cosa es que el interprete de python usa la misma instancia del objeto list para el constructor de la clase prueba, lo puedes comprobar haciendo esto: ........ def __init__(self, a=[]): self.a = a print id(self.a) ........ para lo que necesitas debería imprimir tres valores diferentes, una solución rápida sería llamar al constructor así: ......... papa = prueba([]) pepe = prueba([]) pipi = prueba([]) ......... ¡¡¡¡¡¡¡¡¡Good luck for every body!!!!!!!!! ________________________________ De: Arturo Muñoz Tolosa Para: python-es en aditel.org Enviado: martes, 23 de diciembre, 2008 22:46:27 Asunto: [Python-es] creo que encontre un bug Creo que encontre un bug, pero no se bien si lo es me salio cuando estaba haciendo un programa. Trate de simplificarlo solo para mostrar donde reside lo que creo que podria ser un bug, aqui lo que hago es una clase prueba y una clase conjunto la clase preuba por default tiene: a =[ ] y la hago un atributo de la clase Entonces lo que hice fue hacer tres objetos de la clase prueba y se me ocurrio con un append agregarle un elemento, en este caso fue un entero 0 pero mi sorpresa es que al momento de imprimirlo obtuve [0, 0, 0][0, 0, 0][0, 0, 0] y yo esperaba [0],[0],[0] igual y hay un concepto de python que no entiendo,¿ alguna idea? class prueba: def __init__(self, a=[]): self.a = a def __str__(self): return str(self.a) class conjunto: def __init__(self, b=[]): self.b = b for elemento in self.b: elemento.a.append(0) def __str__(self): vacio = '' for elemento in self.b: vacio = vacio + str(elemento) return vacio papa = prueba() pepe = prueba() pipi = prueba() lista = [papa,pepe,pipi] final=conjunto(lista) print(final) _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes ¡Felices Fiestas! Enviale una tarjeta electronica gratis a tu familia y amigos y deseales felices fiestas. http://yahoomorado.com/tarjetas/ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pyarnau en gmail.com Wed Dec 24 09:39:39 2008 From: pyarnau en gmail.com (Arnau Sanchez) Date: Wed, 24 Dec 2008 09:39:39 +0100 Subject: creo que encontre un bug In-Reply-To: <4951B093.502@gmail.com> References: <4951B093.502@gmail.com> Message-ID: <4951F54B.7000708@gmail.com> Arturo Muñoz Tolosa escribió: > Entonces lo que hice fue hacer tres objetos de la clase prueba y se me > ocurrio > con un append agregarle un elemento, en este caso fue un entero 0 > pero mi sorpresa es que al momento de imprimirlo obtuve > > [0, 0, 0][0, 0, 0][0, 0, 0] > > y yo esperaba [0],[0],[0] Mírate: http://docs.python.org/tutorial/controlflow.html#default-argument-values Important warning: The default value is evaluated only once. This makes a difference when the default is a mutable object such as a list, dictionary, or instances of most classes. > def __str__(self): > vacio = '' > for elemento in self.b: > vacio = vacio + str(elemento) > return vacio Mejor: return "".join(str(elemento) for elemento in self.b) http://python.net/~goodger/projects/pycon/2007/idiomatic/handout.html#building-strings-from-substrings > Creo que encontre un bug Cuidado con esas elucubraciones... cuando uno recién se inicia en un programa (en versión estable) que utilizan sin problemas millones de personas en el mundo, la probabilidad de que algo que parece un bug sea en realidad un error suyo se aproxima peligrosamente a 1 :-) saludos! arnau -- Web: http://www.arnau-sanchez.com _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From med.swl en gmail.com Wed Dec 24 16:22:47 2008 From: med.swl en gmail.com (Medardo Rodriguez (Merchise Group)) Date: Wed, 24 Dec 2008 10:22:47 -0500 Subject: modulos en python3 In-Reply-To: <1230057158.14752.19.camel@rincewind> References: <1230057158.14752.19.camel@rincewind> Message-ID: <4891add70812240722g2ff7bf2clba5c1a8c57c0319c@mail.gmail.com> 2008/12/23 Daniel Garcia Moreno : > He estado haciendo unas pruebas con python3 y me he encontrado con un > problema. No se si es de mi versión de python3 o si es que algo ha > cambiado y no se cómo va. > > Tengo esta estructura de ficheros: > > test/ > |-- __init__.py > `-- t2.py > > fichero __init__.py: > import t2 > prueba: import .t2 Saludos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ematus en gmail.com Wed Dec 24 17:54:46 2008 From: ematus en gmail.com (Eduardo Matus) Date: Wed, 24 Dec 2008 17:54:46 +0100 Subject: creo que encontre un bug In-Reply-To: <4951F54B.7000708@gmail.com> References: <4951B093.502@gmail.com> <4951F54B.7000708@gmail.com> Message-ID: <984ad6a0812240854o33b49769s50a43b25e5344bb6@mail.gmail.com> Me recuerda cuando estaba aprendiendo a programar y decia... "java esta malo" xD On Wed, Dec 24, 2008 at 9:39 AM, Arnau Sanchez wrote: > Arturo Muñoz Tolosa escribió: > > Entonces lo que hice fue hacer tres objetos de la clase prueba y se me >> ocurrio >> con un append agregarle un elemento, en este caso fue un entero 0 >> pero mi sorpresa es que al momento de imprimirlo obtuve >> >> [0, 0, 0][0, 0, 0][0, 0, 0] >> >> y yo esperaba [0],[0],[0] >> > > Mírate: > > http://docs.python.org/tutorial/controlflow.html#default-argument-values > > Important warning: The default value is evaluated only once. This makes a > difference when the default is a mutable object such as a list, dictionary, > or instances of most classes. > > def __str__(self): >> vacio = '' >> for elemento in self.b: >> vacio = vacio + str(elemento) >> return vacio >> > > Mejor: return "".join(str(elemento) for elemento in self.b) > > > http://python.net/~goodger/projects/pycon/2007/idiomatic/handout.html#building-strings-from-substrings > > > Creo que encontre un bug > > Cuidado con esas elucubraciones... cuando uno recién se inicia en un > programa (en versión estable) que utilizan sin problemas millones de > personas en el mundo, la probabilidad de que algo que parece un bug sea en > realidad un error suyo se aproxima peligrosamente a 1 :-) > > saludos! > arnau > > -- > Web: http://www.arnau-sanchez.com > > _______________________________________________ > Lista de correo Python-es http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- _______________________________________ Eduardo Andrés Matus Coquelet Ingeniero Civil Informatico y Telecomunicaciones - U. Diego Portales Santiago, Chile. _______________________________________ Celular: (07) 77113825 _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From oinos en web.de Thu Dec 25 13:16:47 2008 From: oinos en web.de (=?ISO-8859-1?Q?Pablo_Rodr=EDguez?=) Date: Thu, 25 Dec 2008 13:16:47 +0100 Subject: problema con condicional Message-ID: <495379AF.9050706@web.de> Hola a todos, en un programa tengo el siguiente condicional: if self.slidesfile: print "Cleaning slides... \t(" + self.slidesfile + ")" os.remove(self.slidesfile) Lo único que pretendo es que si self.slidesfile existe que lo borre. El problema es que si no existe, salta en os.remove porque no existe self.slidesfile (pero precisamente por eso pongo el condicional). ¿Hay manera de que esto funcione sin tener que copiar el fichero? Pongo el condicional porque habrá casos en que necesito que lo borre y otros en que no. Gracias y felices fiestas, Pablo _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From dani en danigm.net Thu Dec 25 14:21:31 2008 From: dani en danigm.net (Daniel Garcia Moreno) Date: Thu, 25 Dec 2008 14:21:31 +0100 Subject: problema con condicional In-Reply-To: <495379AF.9050706@web.de> References: <495379AF.9050706@web.de> Message-ID: <1230211291.4114.2.camel@rincewind> El jue, 25-12-2008 a las 13:16 +0100, Pablo Rodríguez escribió: > Hola a todos, > > en un programa tengo el siguiente condicional: > > if self.slidesfile: > print "Cleaning slides... \t(" + self.slidesfile + ")" > os.remove(self.slidesfile) > > Lo único que pretendo es que si self.slidesfile existe que lo borre. El > problema es que si no existe, salta en os.remove porque no existe > self.slidesfile (pero precisamente por eso pongo el condicional). > > ¿Hay manera de que esto funcione sin tener que copiar el fichero? Pongo > el condicional porque habrá casos en que necesito que lo borre y otros > en que no. Qué te parece un os.path.exists antes, o quizás puedes envolver con un try-except. if os.path.exists(self.slidefile): os.remove(self.slidefile) ó try: os.remove(self.slidefile) except OSError: pass ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 197 bytes Desc: Esta parte del mensaje está firmada digitalmente URL: ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From oinos en web.de Thu Dec 25 20:10:30 2008 From: oinos en web.de (=?UTF-8?B?UGFibG8gUm9kcsOtZ3Vleg==?=) Date: Thu, 25 Dec 2008 20:10:30 +0100 Subject: problema con condicional In-Reply-To: <1230211291.4114.2.camel@rincewind> References: <495379AF.9050706@web.de> <1230211291.4114.2.camel@rincewind> Message-ID: <4953DAA6.9070401@web.de> Daniel Garcia Moreno wrote: > El jue, 25-12-2008 a las 13:16 +0100, Pablo Rodríguez escribió: >> Hola a todos, >> >> en un programa tengo el siguiente condicional: >> >> if self.slidesfile: >> print "Cleaning slides... \t(" + self.slidesfile + ")" >> os.remove(self.slidesfile) >> >> [...] >> ¿Hay manera de que esto funcione sin tener que copiar el fichero? Pongo >> el condicional porque habrá casos en que necesito que lo borre y otros >> en que no. Bracias Daniel, por la respuesta. > Qué te parece un os.path.exists antes, o quizás puedes envolver con un > try-except. > > if os.path.exists(self.slidefile): > os.remove(self.slidefile) Esto no funciona, porque cuando evalúa os.remove, da error porque lo que tendría que borrar no existe. > try: > os.remove(self.slidefile) > except OSError: > pass Esto funciona perfecto. Lo único es que me gustaría es que si consigue eliminar el archivo pueda añadir un print, pero no sé cómo hacerlo. ¿Alguna idea? Muchas gracias y saludos, Pablo ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ematus en gmail.com Thu Dec 25 20:24:13 2008 From: ematus en gmail.com (Eduardo Matus) Date: Thu, 25 Dec 2008 20:24:13 +0100 Subject: problema con condicional In-Reply-To: <4953DAA6.9070401@web.de> References: <495379AF.9050706@web.de> <1230211291.4114.2.camel@rincewind> <4953DAA6.9070401@web.de> Message-ID: <984ad6a0812251124v133b1685mdf4c2ba6e62995f0@mail.gmail.com> try: os.remove(self.slidefile) print 'removido' except IOError: print 'no se pudo remover' 2008/12/25 Pablo Rodríguez > Daniel Garcia Moreno wrote: > >> El jue, 25-12-2008 a las 13:16 +0100, Pablo Rodríguez escribió: >> >>> Hola a todos, >>> >>> en un programa tengo el siguiente condicional: >>> >>> if self.slidesfile: >>> print "Cleaning slides... \t(" + self.slidesfile + ")" >>> os.remove(self.slidesfile) >>> >>> [...] >>> ¿Hay manera de que esto funcione sin tener que copiar el fichero? Pongo >>> el condicional porque habrá casos en que necesito que lo borre y otros en >>> que no. >>> >> > Bracias Daniel, por la respuesta. > > Qué te parece un os.path.exists antes, o quizás puedes envolver con un >> try-except. >> >> if os.path.exists(self.slidefile): >> os.remove(self.slidefile) >> > > Esto no funciona, porque cuando evalúa os.remove, da error porque lo que > tendría que borrar no existe. > > try: >> os.remove(self.slidefile) >> except OSError: >> pass >> > > Esto funciona perfecto. Lo único es que me gustaría es que si consigue > eliminar el archivo pueda añadir un print, pero no sé cómo hacerlo. ¿Alguna > idea? > > Muchas gracias y saludos, > > > Pablo > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- _______________________________________ Eduardo Andrés Matus Coquelet Ingeniero Civil Informatico y Telecomunicaciones - U. Diego Portales Santiago, Chile. _______________________________________ Celular: (07) 77113825 _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From oinos en web.de Thu Dec 25 20:36:58 2008 From: oinos en web.de (=?ISO-8859-1?Q?Pablo_Rodr=EDguez?=) Date: Thu, 25 Dec 2008 20:36:58 +0100 Subject: problema con condicional In-Reply-To: <984ad6a0812251124v133b1685mdf4c2ba6e62995f0@mail.gmail.com> References: <495379AF.9050706@web.de> <1230211291.4114.2.camel@rincewind> <4953DAA6.9070401@web.de> <984ad6a0812251124v133b1685mdf4c2ba6e62995f0@mail.gmail.com> Message-ID: <4953E0DA.4020502@web.de> Eduardo Matus wrote: > try: > os.remove(self.slidefile) > print 'removido' > except IOError: > print 'no se pudo remover' Gracias Eduardo, pero quiero que el print únicamente salga si os.remove funciona. En este caso saldría siempre. En el except IOError: pass está bien. Gracias, Pablo _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From dani en danigm.net Fri Dec 26 12:17:52 2008 From: dani en danigm.net (Daniel Garcia Moreno) Date: Fri, 26 Dec 2008 12:17:52 +0100 Subject: problema con condicional In-Reply-To: <4953DAA6.9070401@web.de> References: <495379AF.9050706@web.de> <1230211291.4114.2.camel@rincewind> <4953DAA6.9070401@web.de> Message-ID: <1230290272.6164.5.camel@rincewind> El jue, 25-12-2008 a las 20:10 +0100, Pablo Rodríguez escribió: > Daniel Garcia Moreno wrote: > > El jue, 25-12-2008 a las 13:16 +0100, Pablo Rodríguez escribió: > >> Hola a todos, > >> > >> en un programa tengo el siguiente condicional: > >> > >> if self.slidesfile: > >> print "Cleaning slides... \t(" + self.slidesfile + ")" > >> os.remove(self.slidesfile) > >> > >> [...] > >> ¿Hay manera de que esto funcione sin tener que copiar el fichero? Pongo > >> el condicional porque habrá casos en que necesito que lo borre y otros > >> en que no. > > Bracias Daniel, por la respuesta. > > > Qué te parece un os.path.exists antes, o quizás puedes envolver con un > > try-except. > > > > if os.path.exists(self.slidefile): > > os.remove(self.slidefile) > > Esto no funciona, porque cuando evalúa os.remove, da error porque lo que > tendría que borrar no existe. si os.path.exists(self.slidefile) devuelve True es que el fichero existe, por lo tanto os.remove no te puede decir que no existe, puede fallar por permisos o por otra razón. ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 197 bytes Desc: Esta parte del mensaje está firmada digitalmente URL: ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From oinos en web.de Sat Dec 27 19:20:47 2008 From: oinos en web.de (=?UTF-8?B?UGFibG8gUm9kcsOtZ3Vleg==?=) Date: Sat, 27 Dec 2008 19:20:47 +0100 Subject: problema con condicional In-Reply-To: <1230290272.6164.5.camel@rincewind> References: <495379AF.9050706@web.de> <1230211291.4114.2.camel@rincewind> <4953DAA6.9070401@web.de> <1230290272.6164.5.camel@rincewind> Message-ID: <495671FF.4060304@web.de> Daniel Garcia Moreno wrote: >>> [...] >>> >>> if os.path.exists(self.slidefile): >>> os.remove(self.slidefile) >> Esto no funciona, porque cuando evalúa os.remove, da error porque lo que >> tendría que borrar no existe. > > si os.path.exists(self.slidefile) devuelve True es que el fichero > existe, por lo tanto os.remove no te puede decir que no existe, puede > fallar por permisos o por otra razón. Gracias, Daniel, por ignorancia me he expresado mal. Si el fichero existe, ambas expresiones funcionan correctamente. Pero si no existe, la primera funciona devolviendo False y la segunda da un error porque el fichero no existe (y el error es plenamente válido). En realidad, para evitar que eso, si es que no estoy muy perdido, habría que hacer: if os.path.exists(self.slidefile): try: os.remove(self.slidefile) except IError: pass print "Deleting " + self.slidefile Esto, que para mi poca sensibilidad programadora se antoja demasiado compliado, para que borre un fichero si existe y que diga que lo está borrando (si y sólo si existe). Gracias por la ayuda, Pablo ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ematus en gmail.com Sat Dec 27 19:49:22 2008 From: ematus en gmail.com (Eduardo Matus) Date: Sat, 27 Dec 2008 19:49:22 +0100 Subject: problema con condicional In-Reply-To: <495671FF.4060304@web.de> References: <495379AF.9050706@web.de> <1230211291.4114.2.camel@rincewind> <4953DAA6.9070401@web.de> <1230290272.6164.5.camel@rincewind> <495671FF.4060304@web.de> Message-ID: <984ad6a0812271049k57bc49c4ub7162da4f648c5a0@mail.gmail.com> esta linea es redundante:.... if os.path.exists(self.slidefile): con esto basta... try: os.remove(self.slidefile) print "Deleting " + self.slidefile except IError: pass 2008/12/27 Pablo Rodríguez > Daniel Garcia Moreno wrote: > >> [...] >>>> >>>> if os.path.exists(self.slidefile): >>>> os.remove(self.slidefile) >>>> >>> Esto no funciona, porque cuando evalúa os.remove, da error porque lo que >>> tendría que borrar no existe. >>> >> >> si os.path.exists(self.slidefile) devuelve True es que el fichero >> existe, por lo tanto os.remove no te puede decir que no existe, puede >> fallar por permisos o por otra razón. >> > > Gracias, Daniel, por ignorancia me he expresado mal. > > Si el fichero existe, ambas expresiones funcionan correctamente. > > Pero si no existe, la primera funciona devolviendo False y la segunda da un > error porque el fichero no existe (y el error es plenamente válido). > > En realidad, para evitar que eso, si es que no estoy muy perdido, habría > que hacer: > > if os.path.exists(self.slidefile): > try: > os.remove(self.slidefile) > except IError: > pass > print "Deleting " + self.slidefile > > Esto, que para mi poca sensibilidad programadora se antoja demasiado > compliado, para que borre un fichero si existe y que diga que lo está > borrando (si y sólo si existe). > > Gracias por la ayuda, > > > Pablo > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- _______________________________________ Eduardo Andrés Matus Coquelet Ingeniero Civil Informatico y Telecomunicaciones - U. Diego Portales Santiago, Chile. _______________________________________ Celular: (07) 77113825 _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From mayragm en finlay.cmw.sld.cu Sat Dec 27 09:20:36 2008 From: mayragm en finlay.cmw.sld.cu (Mayi) Date: Sat, 27 Dec 2008 02:20:36 -0600 Subject: =?iso-8859-1?q?=C1rbol_de_decisi=F3n_en_Python?= Message-ID: <4955E554.7070009@finlay.cmw.sld.cu> Hola lista: Quiero implementar un árbol de decisión para un clasificador, básicamente sería para un conjunto de determinados elementos, determinar al final del árbol una clasificación u otra (spam ó no-spam, por ejemplo). Quiero implementarlo en Python, pero como no quiero reinventar la rueda, me preguntaba si existe algo ya hecho sobre este tema, alguna librería, módulo o framework, que pudiera utilizar o tomar de referencia para mi trabajo, o si alguien tiene algo escrito y pueda compartir el código. También estoy abierto a enlaces, documentos, referencias que puedan facilitarme sobre este tema. Gracias de antemano, slds --------------------------------------- Red Telematica de Salud - Cuba CNICM - Infomed _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jrvilda en gmail.com Sat Dec 27 20:39:31 2008 From: jrvilda en gmail.com (Josu Rodriguez) Date: Sat, 27 Dec 2008 20:39:31 +0100 Subject: =?iso-8859-1?q?Reinicio_de_aplicaci=F3n?= Message-ID: Hola a todos y Felizes fiestas !!. Estoy realizando una aplicacion en windows con python, compilada con py2exe, y tenia un problemilla y es que necesito que la aplicacion se reinicie sola, osea que mande un Destroy() y luego se ejecute o algo parecido. Se os ocurre como hacerlo ? Gracias _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From oinos en web.de Sat Dec 27 21:28:20 2008 From: oinos en web.de (=?ISO-8859-1?Q?Pablo_Rodr=EDguez?=) Date: Sat, 27 Dec 2008 21:28:20 +0100 Subject: problema con condicional In-Reply-To: <984ad6a0812271049k57bc49c4ub7162da4f648c5a0@mail.gmail.com> References: <495379AF.9050706@web.de> <1230211291.4114.2.camel@rincewind> <4953DAA6.9070401@web.de> <1230290272.6164.5.camel@rincewind> <495671FF.4060304@web.de> <984ad6a0812271049k57bc49c4ub7162da4f648c5a0@mail.gmail.com> Message-ID: <49568FE4.3080107@web.de> Eduardo Matus wrote: > esta linea es redundante:.... if os.path.exists(self.slidefile): > > con esto basta... > try: > os.remove(self.slidefile) > print "Deleting " + self.slidefile > except IError: > pass Gracias por la respuesta, pero eso lo intenté y me daba un error, por el siguiente caso: si el fichero no existe, trata de borrarlo (y no lo consigue) e intenta imprimir (y lo consigue). Eso precisamente es lo que tengo que evitar. De ahí la solución de abajo. Lo que a mí no me parece tan lógico, pero será falta de experiencia, es que tenga que envolver "os.remove(self.slidefile)" con "try" para evitar que Python evalúe la expresión y dé un error. Gracias de nuevo, Pablo > 2008/12/27 Pablo Rodríguez >> [...] >> if os.path.exists(self.slidefile): >> try: >> os.remove(self.slidefile) >> except IError: >> pass >> print "Deleting " + self.slidefile _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ematus en gmail.com Sat Dec 27 21:37:45 2008 From: ematus en gmail.com (Eduardo Matus) Date: Sat, 27 Dec 2008 21:37:45 +0100 Subject: problema con condicional In-Reply-To: <49568FE4.3080107@web.de> References: <495379AF.9050706@web.de> <1230211291.4114.2.camel@rincewind> <4953DAA6.9070401@web.de> <1230290272.6164.5.camel@rincewind> <495671FF.4060304@web.de> <984ad6a0812271049k57bc49c4ub7162da4f648c5a0@mail.gmail.com> <49568FE4.3080107@web.de> Message-ID: <984ad6a0812271237g7315deccw94efa046da7cd742@mail.gmail.com> no funciona porque es try: os.remove(self.slidefile) print "borando" except IOError: pass 2008/12/27 Pablo Rodríguez > Eduardo Matus wrote: > >> esta linea es redundante:.... if os.path.exists(self.slidefile): >> >> con esto basta... >> try: >> os.remove(self.slidefile) >> print "Deleting " + self.slidefile >> except IError: >> pass >> > > Gracias por la respuesta, pero eso lo intenté y me daba un error, por el > siguiente caso: si el fichero no existe, trata de borrarlo (y no lo > consigue) e intenta imprimir (y lo consigue). > > Eso precisamente es lo que tengo que evitar. De ahí la solución de abajo. > > Lo que a mí no me parece tan lógico, pero será falta de experiencia, es que > tenga que envolver "os.remove(self.slidefile)" con "try" para evitar que > Python evalúe la expresión y dé un error. > > Gracias de nuevo, > > > Pablo > > > 2008/12/27 Pablo Rodríguez >> >>> [...] >>> if os.path.exists(self.slidefile): >>> try: >>> os.remove(self.slidefile) >>> except IError: >>> pass >>> print "Deleting " + self.slidefile >>> >> _______________________________________________ > Lista de correo Python-es http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- _______________________________________ Eduardo Andrés Matus Coquelet Ingeniero Civil Informatico y Telecomunicaciones - U. Diego Portales Santiago, Chile. _______________________________________ Celular: (07) 77113825 _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ematus en gmail.com Sat Dec 27 21:41:00 2008 From: ematus en gmail.com (Eduardo Matus) Date: Sat, 27 Dec 2008 21:41:00 +0100 Subject: problema con condicional In-Reply-To: <984ad6a0812271237g7315deccw94efa046da7cd742@mail.gmail.com> References: <495379AF.9050706@web.de> <1230211291.4114.2.camel@rincewind> <4953DAA6.9070401@web.de> <1230290272.6164.5.camel@rincewind> <495671FF.4060304@web.de> <984ad6a0812271049k57bc49c4ub7162da4f648c5a0@mail.gmail.com> <49568FE4.3080107@web.de> <984ad6a0812271237g7315deccw94efa046da7cd742@mail.gmail.com> Message-ID: <984ad6a0812271241l4befd58ax9bdffa8b04c586e4@mail.gmail.com> sobre el try - except, acostumbrate a usarlos, son la mejor forma de manejar este tipo de cosas.. es como por ejemplo def div(num): if num != 0: return 1/num else: return 0 es feo, poco elegante y confuso sobre todo cuando tienes codigo mas complejo.. pero si lo siguiente, es mucho mas simpe y abarca otros problemas que pudiera ocurrir... def div(num): try: return 1/num except ValueError: return 0 2008/12/27 Eduardo Matus > no funciona porque es > > try: > os.remove(self.slidefile) > print "borando" > except IOError: > pass > > > > 2008/12/27 Pablo Rodríguez > > Eduardo Matus wrote: >> >>> esta linea es redundante:.... if os.path.exists(self.slidefile): >>> >>> con esto basta... >>> try: >>> os.remove(self.slidefile) >>> print "Deleting " + self.slidefile >>> except IError: >>> pass >>> >> >> Gracias por la respuesta, pero eso lo intenté y me daba un error, por el >> siguiente caso: si el fichero no existe, trata de borrarlo (y no lo >> consigue) e intenta imprimir (y lo consigue). >> >> Eso precisamente es lo que tengo que evitar. De ahí la solución de abajo. >> >> Lo que a mí no me parece tan lógico, pero será falta de experiencia, es >> que tenga que envolver "os.remove(self.slidefile)" con "try" para evitar que >> Python evalúe la expresión y dé un error. >> >> Gracias de nuevo, >> >> >> Pablo >> >> >> 2008/12/27 Pablo Rodríguez >>> >>>> [...] >>>> if os.path.exists(self.slidefile): >>>> try: >>>> os.remove(self.slidefile) >>>> except IError: >>>> pass >>>> print "Deleting " + self.slidefile >>>> >>> _______________________________________________ >> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es >> FAQ: http://listas.aditel.org/faqpyes >> > > > > -- > _______________________________________ > Eduardo Andrés Matus Coquelet > Ingeniero Civil Informatico y Telecomunicaciones - U. Diego Portales > Santiago, Chile. > _______________________________________ > > Celular: (07) 77113825 > -- _______________________________________ Eduardo Andrés Matus Coquelet Ingeniero Civil Informatico y Telecomunicaciones - U. Diego Portales Santiago, Chile. _______________________________________ Celular: (07) 77113825 _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From oinos en web.de Sat Dec 27 22:58:27 2008 From: oinos en web.de (=?ISO-8859-1?Q?Pablo_Rodr=EDguez?=) Date: Sat, 27 Dec 2008 22:58:27 +0100 Subject: problema con condicional In-Reply-To: <984ad6a0812271237g7315deccw94efa046da7cd742@mail.gmail.com> References: <495379AF.9050706@web.de> <1230211291.4114.2.camel@rincewind> <4953DAA6.9070401@web.de> <1230290272.6164.5.camel@rincewind> <495671FF.4060304@web.de> <984ad6a0812271049k57bc49c4ub7162da4f648c5a0@mail.gmail.com> <49568FE4.3080107@web.de> <984ad6a0812271237g7315deccw94efa046da7cd742@mail.gmail.com> Message-ID: <4956A503.6040800@web.de> Eduardo Matus wrote: > no funciona porque es > > try: > os.remove(self.slidefile) > print "borando" > except IOError: > pass Perdón, entendí mal lo que me habías dicho en otro mensaje anterior. Yo entendí, porque cambié el orden de las instrucciones, que se ejecutaban según el orden, pero de la ejecución del siguiente no dependía de la del anterior. De ahí mi error. Gracias por la corrección y por el consejo del siguiente mensaje. Pablo > 2008/12/27 Pablo Rodríguez > >> Eduardo Matus wrote: >> >>> esta linea es redundante:.... if os.path.exists(self.slidefile): >>> >>> con esto basta... >>> try: >>> os.remove(self.slidefile) >>> print "Deleting " + self.slidefile >>> except IError: >>> pass >>> >> Gracias por la respuesta, pero eso lo intenté y me daba un error, por el >> siguiente caso: si el fichero no existe, trata de borrarlo (y no lo >> consigue) e intenta imprimir (y lo consigue). >> >> Eso precisamente es lo que tengo que evitar. De ahí la solución de abajo. >> >> Lo que a mí no me parece tan lógico, pero será falta de experiencia, es que >> tenga que envolver "os.remove(self.slidefile)" con "try" para evitar que >> Python evalúe la expresión y dé un error. >> >> Gracias de nuevo, >> >> >> Pablo >> >> >> 2008/12/27 Pablo Rodríguez >>>> [...] >>>> if os.path.exists(self.slidefile): >>>> try: >>>> os.remove(self.slidefile) >>>> except IError: >>>> pass >>>> print "Deleting " + self.slidefile >>>> >>> _______________________________________________ >> Lista de correo Python-es http://listas.aditel.org/listinfo/python-es >> FAQ: http://listas.aditel.org/faqpyes >> > > > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From gonzalo.castro.castilla en gmail.com Sun Dec 28 12:02:54 2008 From: gonzalo.castro.castilla en gmail.com (Gonzalo Castro) Date: Sun, 28 Dec 2008 12:02:54 +0100 Subject: Multitud de objetos similares Message-ID: <9685383c0812280302g173efaf8vfbe775f031e57e52@mail.gmail.com> Hola a todos y felices fiestas! MI problema: Me gustaría rellenar un cuadro con cuadraditos de muchos colores (ordenados) usando la librería Pygame. Desde el enfoque de la POO, si yo quiero tener una "clase cuadrado", las instancias de esa clase tengo que hacerlas manualmente? es decir, tengo que darle nombre manualmente a cada una de esas instancias de los objetos o puedo usar un bucle para ello? El problema de los colores se puede simplificar... pongamos por ejemplo que no son cuadrados de colores, sino entradas en base de datos, y que quiero tratar cada una de esas entradas como un objeto. Muchas gracias a todos y felices fiestas de nuevo! _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From listas en soft-com.es Sun Dec 28 13:19:12 2008 From: listas en soft-com.es (=?ISO-8859-1?Q?Oswaldo_Hern=E1ndez?=) Date: Sun, 28 Dec 2008 13:19:12 +0100 Subject: Multitud de objetos similares In-Reply-To: <9685383c0812280302g173efaf8vfbe775f031e57e52@mail.gmail.com> References: <9685383c0812280302g173efaf8vfbe775f031e57e52@mail.gmail.com> Message-ID: <49576EC0.4040000@soft-com.es> Gonzalo Castro escribió: > Hola a todos y felices fiestas! > > MI problema: Me gustaría rellenar un cuadro con cuadraditos de muchos > colores (ordenados) usando la librería Pygame. Desde el enfoque de la > POO, si yo quiero tener una "clase cuadrado", las instancias de esa > clase tengo que hacerlas manualmente? es decir, tengo que darle nombre > manualmente a cada una de esas instancias de los objetos o puedo usar > un bucle para ello? > Utiliza una lista para almacenar las instancias: >>> import random >>> class cuadrado: ... def __init__(self, r,g,b): ... self.r = r ... self.g = g ... self.b = b ... def __repr__(self): ... return "cuadrado(%s, %s, %s)" % (self.r, self.g, self.b) ... >>> lcuadrados = [] >>> for c in range(1000): ... lcuadrados.append( ... cuadrado(random.randint(0,255), ... random.randint(0,255), ... random.randint(0,255)) ... ) ... >>> lcuadrados[500] cuadrado(9, 152, 198) > Muchas gracias a todos y felices fiestas de nuevo! Igualmente, Salud para todos. -- ***************************************** Oswaldo Hernández oswaldo (@) soft-com (.) es ***************************************** PD: Antes de imprimir este mensaje, asegúrese de que es necesario. El medio ambiente está en nuestra mano. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From eliben en gmail.com Sun Dec 28 19:50:31 2008 From: eliben en gmail.com (Eli Bendersky) Date: Sun, 28 Dec 2008 20:50:31 +0200 Subject: =?ISO-8859-1?Q?Re:__=C1rbol_de_decisi=F3n_en_Python?= In-Reply-To: <4955E554.7070009@finlay.cmw.sld.cu> References: <4955E554.7070009@finlay.cmw.sld.cu> Message-ID: <95cf475a0812281050x6385c0dbrc9a24336e2eaeb4@mail.gmail.com> 2008/12/27 Mayi > Hola lista: > > Quiero implementar un árbol de decisión para un clasificador, básicamente > sería para un conjunto de determinados elementos, determinar al final del > árbol una clasificación u otra (spam ó no-spam, por ejemplo). Quiero > implementarlo en Python, pero como no quiero reinventar la rueda, me > preguntaba si existe algo ya hecho sobre este tema, alguna librería, módulo > o framework, que pudiera utilizar o tomar de referencia para mi trabajo, o > si alguien tiene algo escrito y pueda compartir el código. > > También estoy abierto a enlaces, documentos, referencias que puedan > facilitarme sobre este tema. > > Gracias de antemano, > > slds > Hola, Hay un bueno articulo sobre esta tema aqui: http://www.onlamp.com/pub/a/python/2006/02/09/ai_decision_trees.html Ademas, aqui esta el codigo fuente del libro Artifical Intelligence - A modern approach, del capitulo sobre los arboles de decision: http://aima-python.googlecode.com/svn/trunk/learning.py Eli _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pych3m4 en gmail.com Mon Dec 29 12:21:33 2008 From: pych3m4 en gmail.com (Chema Cortes) Date: Mon, 29 Dec 2008 12:21:33 +0100 Subject: creo que encontre un bug In-Reply-To: <544648.98791.qm@web30801.mail.mud.yahoo.com> References: <4951B093.502@gmail.com> <544648.98791.qm@web30801.mail.mud.yahoo.com> Message-ID: <2c9fb0dd0812290321r5b45ec8dv1d25db3f0a916d82@mail.gmail.com> El día 24 de diciembre de 2008 5:16, Victor Edier escribió: > la cosa es que el interprete de python usa la misma instancia del objeto list para el constructor de la clase prueba, lo puedes comprobar haciendo esto: > ........ > def __init__(self, a=[]): > self.a = a > print id(self.a) > ........ > > para lo que necesitas debería imprimir tres valores diferentes, una solución rápida sería llamar al constructor así: > ......... > papa = prueba([]) > pepe = prueba([]) > pipi = prueba([]) > ......... Mi recomendación es hacer copias de las listas pasadas por argumento para evitar "acoplamientos": def __init__(self, a=[]): self.a=a[:] ... _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From malopez00 en gmail.com Mon Dec 29 20:06:53 2008 From: malopez00 en gmail.com (=?utf-8?Q?Miguel_=C3=81ngel?=) Date: Mon, 29 Dec 2008 20:06:53 +0100 Subject: Lector de feeds Message-ID: <30154356-8370-4B88-ADF3-9B0C0F9260C4@gmail.com> Buenas, soy nuevo en la lista, este es mi primer mensaje. Bueno el caso es que me gustaria aprender mas de python, no llevo mucho en esto, para ello me estoy planteando intentar crear un lector basico de feeds (rss y atom) me gustaria saber si me podeis pasar algun articulo, tutorial o codigo sobre el tema de trabajar con feeds en python. La interfaz la hare con Qt, Que os parece? Gracias por adelantado. ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From kalith.9 en gmail.com Mon Dec 29 21:41:27 2008 From: kalith.9 en gmail.com (kalith kalith) Date: Mon, 29 Dec 2008 12:41:27 -0800 Subject: Lector de feeds In-Reply-To: <30154356-8370-4B88-ADF3-9B0C0F9260C4@gmail.com> References: <30154356-8370-4B88-ADF3-9B0C0F9260C4@gmail.com> Message-ID: <3da702830812291241k286a3f41vef0c022f826bfa3d@mail.gmail.com> no manejo el tema pero una simple googleada podes ver este source[1] y siempre es bueno manejar la librerias basicas para estos trabajos [2] y puedes tambien ojear esto[3] 1 = http://www.mnot.net/python/RSS.py 2 = http://docs.python.org/library/httplib.html 3 = http://pyxml.sourceforge.net/topics/ -- Seamos realistas y hagamos lo imposible _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From peralta en aditel.org Mon Dec 29 21:55:25 2008 From: peralta en aditel.org (Luis Peralta) Date: Mon, 29 Dec 2008 21:55:25 +0100 Subject: Lector de feeds In-Reply-To: <30154356-8370-4B88-ADF3-9B0C0F9260C4@gmail.com> References: <30154356-8370-4B88-ADF3-9B0C0F9260C4@gmail.com> Message-ID: <861451d60812291255t69b80489na432dc3f1eb86d78@mail.gmail.com> 2008/12/29 Miguel Ángel : > Buenas, soy nuevo en la lista, este es mi primer mensaje. Bueno el caso es > que me gustaria aprender mas de python, no llevo mucho en esto, para ello me > estoy planteando intentar crear un lector basico de feeds (rss y atom) me > gustaria saber si me podeis pasar algun articulo, tutorial o codigo sobre el > tema de trabajar con feeds en python. La interfaz la hare con Qt, Que os > parece? Hola, Python cuenta con uno de los mejores parsers (sino el mejor) de feeds: Universal Feed Parser http://feedparser.org -- http://www.ziritione.org _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jordi.f en ati.es Mon Dec 29 21:58:40 2008 From: jordi.f en ati.es (Jordi Funollet) Date: Mon, 29 Dec 2008 21:58:40 +0100 Subject: Lector de feeds In-Reply-To: <30154356-8370-4B88-ADF3-9B0C0F9260C4@gmail.com> References: <30154356-8370-4B88-ADF3-9B0C0F9260C4@gmail.com> Message-ID: <200812292158.40551.jordi.f@ati.es> Un programa y una libreria de muestra: Straw: http://projects.gnome.org/straw/ Feedparser: http://www.feedparser.org/ -- ############################## ### Jordi Funollet ### http://www.terraquis.net ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From patxiry en gmail.com Tue Dec 30 20:51:18 2008 From: patxiry en gmail.com (Patxi R.Y.) Date: Tue, 30 Dec 2008 20:51:18 +0100 Subject: Problema con signal/slot en PyQt4/PyKDE4 Message-ID: <200812302051.18846.patxiry@gmail.com> Básicamente la ayuda que necesito es acerca de manejar señales y slots con argumentos. He revisado toda la documentación posible, libros, etc y parece estar bien, pero no logro que funcione (y tampoco logro que me informe de ningún error). Tengo el código y el problema explicado aquí: http://www.kdehispano.es/?q=content/problema-con-signalsslots-en-una- aplicacion-pykde4 Si alguien tiene una pista se lo agradecería. (La aplicación no es importante, solo es el ejemplo de programación con PyKDE4 que hay en techbase.kde.org , es para saber cómo se hace exactamente). Un saludo ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From oscar en ati.une.cu Wed Dec 31 18:55:51 2008 From: oscar en ati.une.cu (ATI-Oscar Gonzalez Mota) Date: Wed, 31 Dec 2008 12:55:51 -0500 Subject: pyfuzzy Message-ID: <1230746151.7226.23.camel@oscar-desktop> hola colegas alguien ha trabajado alguna vez con el pyfuzzy?? por favor responderme personalmente... ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jaime.perea en gmail.com Mon Dec 1 17:25:13 2008 From: jaime.perea en gmail.com (Jaime Perea) Date: Mon, 1 Dec 2008 17:25:13 +0100 Subject: Problema TelnetLib en python!!! In-Reply-To: References: Message-ID: <200812011725.14048.Jaime.Perea@gmail.com> ¿Tienes servidor de telnet funcionando y abierto en tu portátil?, Lo de Connection refused suele ser debido a esto (y a no activarlo en xinetd), lo del router/firewall no debe ser ya que te conectas a localhost Saludos -- Jaime D. Perea Duarte. Linux registered user #10472 Dep. Astrofisica Extragalactica. Instituto de Astrofisica de Andalucia (CSIC) Apdo. 3004, 18080 Granada, Spain. El Lunes 01 Diciembre 2008, Jesse escribió: > Hola > > tengo una problema trabajando con la libreria telnetlib de python, estoy > haciendo una aplicacion que requiere usarla, la idea del programa es q > tiene una lista de dispositivos y les carga un archivo de configuracion > via telnet dependiento de los deseos del usuario > inicialmente lo hice con un router dlink y no hubo ningun problema ... > la libreria telnetlib me trabajo al pelo > > pero cuando cambie de dispositivo se me presentan varios problemas por > ejemplo deseo hacerle telnet a mi portatil para pruebar de forma local > > me sale este error > File "", line 1, in > File "/usr/lib/python2.5/telnetlib.py", line 208, in __init__ > self.open(host, port) > File "/usr/lib/python2.5/telnetlib.py", line 237, in open > raise socket.error, msg > socket.error: (111, 'Connection refused') > > bueno con otros dispositivos me sale otra cosa, digamos q cuando si se > conecta me sale > login: > admin (Se da un enter y un espacio solo) > > y pues deberia quedar asi > login:admin > > sino aveces me sale > login: > none > > Cosa que me hace creer q tambien pasa con el password > > entonces no se q pueda ser pq con el router dlink trabaja al pelo pero > es con los otros no y pues se supone q el telnet es un estandar > > me estoy basando en este ejemplo > > import getpass > import sys > import telnetlib > > HOST = "localhost" > user = raw_input("Enter your remote account: ") > password = getpass.getpass() > > tn = telnetlib.Telnet(HOST) > > tn.read_until("login: ") > tn.write(user + "\n") > if password: > tn.read_until("Password: ") > tn.write(password + "\n") > > tn.write("ls\n") > tn.write("exit\n") > > print tn.read_all() > > dependiendo del dispositivo ... cambio el host, el usuario y la > contraseña, ademas de tn.read_until("login: "), "login: " por la > peticion de entrada del dispositivo como tal e igualmente con el > password. > > No se si alguien tenga alguna idea cual pueda ser el problema, de > antemano agradezco cualquier colaboracion > > Saludos ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From j.gomez-dans en geog.ucl.ac.uk Thu Dec 11 16:12:48 2008 From: j.gomez-dans en geog.ucl.ac.uk (Jose =?iso-8859-1?q?G=F3mez-Dans?=) Date: Thu, 11 Dec 2008 15:12:48 +0000 Subject: =?iso-8859-1?q?Gr=E1ficas?= estatisticas In-Reply-To: References: Message-ID: <200812111512.48637.j.gomez-dans@geog.ucl.ac.uk> Hola, On Thursday 11 December 2008 13:21:26 Rene Parrado wrote: > Hola, ahora que últimamente se ha tocado el tema de gráficos, será que > existe alguna librería o algo asi orientada para realizar gráficas > estadísticas (tortas, lineas, barras, 3D, etc) y que se puedan > personalizar en fondos y colores, etc. Matplotlib? -- Department of Geography, University College London Gower Street, London WC1E 6BT, UK _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes