From diegososam en gmail.com Tue Jul 1 03:11:06 2008 From: diegososam en gmail.com (Diego Sosa) Date: Mon, 30 Jun 2008 23:11:06 -0200 Subject: Concatenar archivos de texto In-Reply-To: <237131.60429.qm@web51606.mail.re2.yahoo.com> References: <237131.60429.qm@web51606.mail.re2.yahoo.com> Message-ID: En Mon, 30 Jun 2008 18:53:08 -0200, Dario de la Cruz escribió: > Buenos dias: > > Quisiera realizar la siguiente operacion en Pyhton: > tomar un archivo de texto concatenarlo con otro archivo (similar a lo > que se realizaria en bash con el comando "cat"). > > Existe alguna funcionalidad similar en python? o necesariamente tengo > que abrir el archivo de texto e ir añadiendo linea a linea el contenido > en el segundo archivo? > > Espero haber sido claro en mi explicación. > Muchas gracias a todos por sus respuestas. > > Dario.- Podrías usar algo como os.popen para llamar al comando CAT, o podrías leer linea por linea... no se bien que será más eficiente, pero ambas cosas son muy fáciles! -- Saludos, Diego Sosa Montevideo, Uruguay Usando el revolucionario cliente de correo de Opera aka M2 ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pdlopez en estudiantes.uci.cu Tue Jul 1 08:20:40 2008 From: pdlopez en estudiantes.uci.cu (Pavel Daniel Lopez Castillo) Date: Tue, 1 Jul 2008 02:20:40 -0400 Subject: (sin asunto) Message-ID: Quiero empezar con python y qt, ya he instalado qt-win-opensource-4.2.2-mingw, MinGW-3.4.2, y python 2.5 ahora ya hice una archivo con Qt .ui que quiero llevar a python, para eso creo que tengo que instalar pyqt ya lo descarge pero no se como instalarlo, dice en la pagina principal de pyqt que antes hay que instalar SIP, a ver estoy sobre windows, el que sepa ya los pasos bien definidos para poder empezar hacer una aplicacion con pyhton y qt por favor me responda. Nunca tomes decisiones en momentos de odio y dolor, pues puedes arrepentirte demasiado tarde. Pavel Daniel López Castillo grupo 9501 telefóno: 2892 _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pepe en diselpro.com Tue Jul 1 10:05:14 2008 From: pepe en diselpro.com (Pepe Aracil) Date: Tue, 01 Jul 2008 10:05:14 +0200 Subject: Concatenar archivos de texto In-Reply-To: <237131.60429.qm@web51606.mail.re2.yahoo.com> References: <237131.60429.qm@web51606.mail.re2.yahoo.com> Message-ID: <4869E53A.7010909@diselpro.com> Así a grandes rasgos: fa=file("ficheroA","r") fb=file("ficheroB","r") fc=file("ficheroC","w") fc.write(fa.read()) fc.frite(fb.read()) Salud. Dario de la Cruz escribió: > Buenos dias: > > Quisiera realizar la siguiente operacion en Pyhton: > tomar un archivo de texto concatenarlo con otro archivo (similar a lo que se realizaria en bash con el comando "cat"). > > Existe alguna funcionalidad similar en python? o necesariamente tengo que abrir el archivo de texto e ir añadiendo linea a linea el contenido en el segundo archivo? > > Espero haber sido claro en mi explicación. > Muchas gracias a todos por sus respuestas. > > Dario.- > > > ____________________________________________________________________________________ > ¡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 _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From damufo en gmail.com Tue Jul 1 12:15:42 2008 From: damufo en gmail.com (damufo) Date: Tue, 01 Jul 2008 12:15:42 +0200 Subject: GetSelectedRows en wxgrid Message-ID: <486A03CE.1070404@gmail.com> Hola: Uso wx y python 2.5 La cuestión es que tengo un wx.grid, en modo de selección tengo self.migrid.SetSelectionMode(wx.grid.Grid.wxGridSelectRows) el caso es que trato de obtener las filas que tengo seleciconadas con GetSelectedRows para ello selrow = self.migrid.GetSelectedRows() pues no se porque siempre me devuelve [] Alguien conoce que es lo que estoy haciendo mal? > > wxGrid::GetSelectedRows > > *wxArrayInt* *GetSelectedRows*() *const* > > Returns an array of selected rows. > ------------ 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 Tue Jul 1 12:52:21 2008 From: pych3m4 en gmail.com (Chema Cortes) Date: Tue, 1 Jul 2008 12:52:21 +0200 Subject: Spider / Crawler In-Reply-To: <486945FE.3000604@cfg.ausa.cu> References: <7ae3aca00806300417i18729a3fhb801d15f8cd91ab6@mail.gmail.com> <486945FE.3000604@cfg.ausa.cu> Message-ID: <2c9fb0dd0807010352l2e0a9464ke94ec5f81b03a7cc@mail.gmail.com> El 2008/6/30 Lic. Ariel Garcia Reyes escribió: > Estoy aprendiendo a programar en Python y mi meta por el momento es hacer un > buscador > necesito hacer un spider o crawler que indece sitios web en una db! > > alguien que me pueda orientar, dar concejos, ejemplos, algoritmos, > documentacion, experiencia!? Rebusca en los archivos de esta lista, ya que es un tema que suele aparecer: http://listas.aditel.org/archivos/python-es/2005-April/008345.html http://listas.aditel.org/archivos/python-es/2005-April/008361.html ...y siguientes _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From python en ammsoft.com Tue Jul 1 12:56:20 2008 From: python en ammsoft.com (Amm-Python) Date: Tue, 1 Jul 2008 12:56:20 +0200 Subject: GetSelectedRows en wxgrid In-Reply-To: <486A03CE.1070404@gmail.com> References: <486A03CE.1070404@gmail.com> Message-ID: <003101c8db69$1952b980$640010ac@nombref31twj9b> Mi experiencia siempre a sido con grids donde se seleccionan celdas y me veo obligado a utilizar: IsInSelection(i, j). Si solo seleccionas rows creo que sería mejor que utilizaras listas (wx.ListCtrl) en lugar del grid. > -----Mensaje original----- > De: python-es-bounces en aditel.org > [mailto:python-es-bounces en aditel.org] En nombre de damufo > Enviado el: dimarts, 1 / juliol / 2008 12:16 > Para: La lista de python en castellano > Asunto: [Python-es] GetSelectedRows en wxgrid > > > Hola: > Uso wx y python 2.5 > La cuestión es que tengo un wx.grid, en modo de selección tengo > self.migrid.SetSelectionMode(wx.grid.Grid.wxGridSelectRows) > > el caso es que trato de obtener las filas que tengo seleciconadas con > GetSelectedRows para ello > selrow = self.migrid.GetSelectedRows() > > pues no se porque siempre me devuelve [] > > Alguien conoce que es lo que estoy haciendo mal? > > > > > wxGrid::GetSelectedRows > > > > *wxArrayInt* *GetSelectedRows*() *const* > > > > Returns an array of selected rows. > > > > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pych3m4 en gmail.com Tue Jul 1 13:18:54 2008 From: pych3m4 en gmail.com (Chema Cortes) Date: Tue, 1 Jul 2008 13:18:54 +0200 Subject: Concatenar archivos de texto In-Reply-To: <237131.60429.qm@web51606.mail.re2.yahoo.com> References: <237131.60429.qm@web51606.mail.re2.yahoo.com> Message-ID: <2c9fb0dd0807010418n204f6879n8a0d82badf1e5ca3@mail.gmail.com> El 2008/6/30 Dario de la Cruz escribió: > Quisiera realizar la siguiente operacion en Pyhton: > tomar un archivo de texto concatenarlo con otro archivo (similar a lo que se realizaria en bash con el comando "cat"). > > Existe alguna funcionalidad similar en python? o necesariamente tengo que abrir el archivo de texto e ir añadiendo linea a linea el contenido en el segundo archivo? > > Espero haber sido claro en mi explicación. No entiendo bien si te parece mal la lectura línea por línea por algún motivo, pero yo lo haría usando iteradores para así optimizar el uso de la memoria: from itertools import chain file("resultado.txt","w").writelines(chain( file("fichero1.txt"),file("fichero2.txt"),file("fichero3.txt") )) _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jeancarlosr_ve en yahoo.com Tue Jul 1 18:03:48 2008 From: jeancarlosr_ve en yahoo.com (=?iso-8859-1?Q?Jean_Carlos_Rodr=ECguez?=) Date: Tue, 1 Jul 2008 09:03:48 -0700 (PDT) Subject: (sin asunto) Message-ID: <389151.1848.qm@web53106.mail.re2.yahoo.com> Instala Python 2.5 Instala MinGW-3.4.2 Instala Qt-win-opensource-4.2.2-mingw Instala PyQt-gpl-4.1.1-Py2.5-Qt4.2.2 Buscas C:\Qt\4.2.2\bin Copias mingwm10.dll ; QtAssistantClient4.dll ; QtCore4.dll ; QtGui4.dll ; QtNetwork4.dll ; QtXml4.dll y lo pegas en C:\Python25\Lib\site-packages\PyQt4 Boton derecho sobre miPC -> propiedades -> Opciones Avanzadas -> Variable de Entorno Nombre de la variable : Path Valor de la Variable : C:\Qt\4.3.3\bin;C:\Python25\;C:\Python25\bin\;C:\Python25\lib\;C:\Python25\lib\site-packages\;C:\Python25\dll\ PD: si quieres libros relacionados con python los puedes descargar de : http://150.185.173.5/Descargas/42%20PYTHON%20BOOKS%20+%20EXAMPLES.tar.gz [Estos libros fueron donados por Cersar Desales (gracias!!!!!!!!!)] Saludos Jean Carlos __________________________________________________ Correo Yahoo! Espacio para todos tus mensajes, antivirus y antispam ¡gratis! Regístrate ya - http://correo.espanol.yahoo.com/ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ariel en cfg.ausa.cu Tue Jul 1 18:27:42 2008 From: ariel en cfg.ausa.cu (Lic. Ariel Garcia Reyes) Date: Tue, 01 Jul 2008 12:27:42 -0400 Subject: Spider / Crawler In-Reply-To: <49414f570806301434s16d76028xd794a46510ac1ee7@mail.gmail.com> References: <7ae3aca00806300417i18729a3fhb801d15f8cd91ab6@mail.gmail.com> <486945FE.3000604@cfg.ausa.cu> <49414f570806301434s16d76028xd794a46510ac1ee7@mail.gmail.com> Message-ID: <486A5AFE.7070606@cfg.ausa.cu> ya estoy leyendo y documentandome! en cuanto tenga algo se los hago llegar! salu2 ariel lasizoillo escribió: > Buenas: > > 2008/6/30 Lic. Ariel Garcia Reyes : > >> Estoy aprendiendo a programar en Python y mi meta por el momento es hacer un >> buscador >> necesito hacer un spider o crawler que indece sitios web en una db! >> >> > > ¿La base de datos es relacional o simplemente una base de datos? Supongo que te > refieres a lo segundo. Aunque una base de datos relacional no esta del > todo mal para > el crawler. > > >> alguien que me pueda orientar, dar concejos, ejemplos, algoritmos, >> documentacion, experiencia!? >> >> > > Empieza por lo que no tienes que hacer con el crawler[1] > > Una posible implementación del modulo que descarga datos lo tienes en > un ejemplo de eventlet [2] > aunque podrias hacer algo parecido con el modulo de la libreria > estandar urllib. Como > consejos: no descargues todas a la vez, usa un pool y ponle timeouts a > los sockets para > que una conexión que no funciona no te deje bloqueado el crawler. > > Ya sabas que páginas no tienes que descargarte y sabes descargar > páginas. ¿Cuales? > Tienes que buscar enlaces en las páginas que te descargas para obtener más > páginas a procesar. Para procesar páginas está muy chulo > beautifulsoup[3], aunque quizá > para empezar te baste HTMLParser de la librería estandard. Si sólo vas a seguir > enlaces HTMLParser es más que necesario. > > Ahora, usando una página de semilla podras recorrer el grafo de > páginas conectadas a él. > Pero todavía tienes que mirarte algunos algoritmos. Imaginate que caes > en una página que > tiene un calendario y vas recorriendo el siguiente mes hasta la > eternidad. Necesitas un > algoritmo de busqueda de parecidos para evitar este tipo de problemas. > Con ese algoritmo > podas el seguir haciendo un crawler. > > El tratar de detectar el tiempo que tardan en actualizarse las páginas > te puede ser muy util. > > Hasta ahora, solo hemos tratado la recogida de información. No su > tratamiento. Empecemos: > - Usa un stemmer como snowball[4] para obtener las raices de las > palabras. Te ayudará a > aproximar rebeldes y rebelión. "rebeldes del 2 de Mayo" y "Rebelión > del 2 de Mayo" deberian > devolver la misma cosa. > - Aunque quizá antes de usar el stemmer te interese ver en que idioma > está la página[5] > - Puedes ver algún buscador libre como xapian[6] para aprender de > algunos algoritmos que usa. > - Puedes buscar si hay microformatos[7] para ver cosas relevantes como > eventos o direcciones. > - ... > > No te vas a aburrir si te pones a hacer un buscador. Y si haces uno > molón, por favor integralo > con pyndexter[8]. Estaré encantado de usarlo y muy posiblemente la > comunidad de python > te lo agradecerá. > > [1] http://es.wikipedia.org/wiki/Est%C3%A1ndar_de_exclusi%C3%B3n_de_robots > [2] http://wiki.secondlife.com/wiki/Eventlet/Examples > [3] http://www.crummy.com/software/BeautifulSoup/ > [4] http://snowball.tartarus.org/ > [5] http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/326576 > [6] http://xapian.org/docs/intro_ir.html > [7] http://microformats.org/ > [8] http://swapoff.org/pyndexter > > > Un saludo: > > Javi > > > >> salu2 >> ariel >> >> ___________ >> >> Este mensaje ha sido analizado por Mailscanner >> Servicio de Protección contra virus A U S A - Sucursal Cienfuegos >> >> >> _______________________________________________ >> 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 > > ___________ > > Este mensaje ha sido analizado por Mailscanner > Servicio de Protección contra virus > A U S A - Sucursal Cienfuegos > > > > ___________ Este mensaje ha sido analizado por Mailscanner Servicio de Protección contra virus A U S A - Sucursal Cienfuegos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jordi.f en ati.es Tue Jul 1 18:54:19 2008 From: jordi.f en ati.es (Jordi Funollet) Date: Tue, 1 Jul 2008 18:54:19 +0200 Subject: VII Jornades de Programari Lliure Message-ID: <200807011854.19155.jordi.f@ati.es> Disculpad que no haya enviado un recordatorio a la lista estos últimos días. Que alguien le haga un patch al formato "dia" para que tenga 26 horas, por favor. :-) Mañana empiezan las "VII Jornades de Programari Lliure" en Barcelona. Podéis descargaros el programa de la web: http://jornadespl.org Siento que solo esté en catalán, no hemos tenido tiempo de traducirlo a ninguna otra lengua. Por supuesto, mandadme un mail si teneis cualquier duda. Al margen de las conferencias, otra parte que nos puede interesar: un pequeño grupo de usuarios de Python ha organizado un "track" autogestionado el sábado por la mañana. Os copio el programa de ese "track": 10:00 - 10:15 Ramon Navarro: Bienvenida y presentación 10:15 - 10:30 Carles Pina : Dynamic Slides in Python 10:30 - 11:00 Xavier Verges: Sugar OS 11:00 a 11:30 Raik Gruenberg: Python in science 11:30 - 12:00 descanso 12:00 - 12:30 Aitor Guevara: Web Frameworks in python 12:30 - 13:00 Marc Garcia: Develop a complete website in 30 minutes using Django 13:00 - 14:00 Taller práctico de Python -- ############################## ### 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 cesar en ortiz.name Tue Jul 1 18:56:23 2008 From: cesar en ortiz.name (Cesar Ortiz) Date: Tue, 1 Jul 2008 18:56:23 +0200 Subject: Spider / Crawler In-Reply-To: <486A5AFE.7070606@cfg.ausa.cu> References: <7ae3aca00806300417i18729a3fhb801d15f8cd91ab6@mail.gmail.com> <486945FE.3000604@cfg.ausa.cu> <49414f570806301434s16d76028xd794a46510ac1ee7@mail.gmail.com> <486A5AFE.7070606@cfg.ausa.cu> Message-ID: <90255a70807010956o1ffe1ccdrb9df0e5b7efe319d@mail.gmail.com> Aprovechando el hilo... y que parece que hay gente por aquçi que ha trabajado sobre este tema... Y de los crawlers que hay disponibles for free [1], ¿alguna sugerencia? Tenemos que crawlear unas webs, para luego procesarlas pero queremos utilizar algún crawler disponible. Lo que pasa es que hay unos cuantos.... [2] Así a bote pronto vamos a probar con HTTrack... un poco por probar [3]. Es una pena que la wikipedia no tenga una comparativa... Saludos, César [1] http://en.wikipedia.org/wiki/Category:Free_web_crawlers [2] http://en.wikipedia.org/wiki/Web_crawler [3] http://en.wikipedia.org/wiki/HTTrack 2008/7/1 Lic. Ariel Garcia Reyes : > ya estoy leyendo y documentandome! > en cuanto tenga algo se los hago llegar! > salu2 > ariel > > lasizoillo escribió: > > Buenas: >> >> 2008/6/30 Lic. Ariel Garcia Reyes : >> >> >>> Estoy aprendiendo a programar en Python y mi meta por el momento es hacer >>> un >>> buscador >>> necesito hacer un spider o crawler que indece sitios web en una db! >>> >>> >>> >> >> ¿La base de datos es relacional o simplemente una base de datos? Supongo >> que te >> refieres a lo segundo. Aunque una base de datos relacional no esta del >> todo mal para >> el crawler. >> >> >> >>> alguien que me pueda orientar, dar concejos, ejemplos, algoritmos, >>> documentacion, experiencia!? >>> >>> >>> >> >> Empieza por lo que no tienes que hacer con el crawler[1] >> >> Una posible implementación del modulo que descarga datos lo tienes en >> un ejemplo de eventlet [2] >> aunque podrias hacer algo parecido con el modulo de la libreria >> estandar urllib. Como >> consejos: no descargues todas a la vez, usa un pool y ponle timeouts a >> los sockets para >> que una conexión que no funciona no te deje bloqueado el crawler. >> >> Ya sabas que páginas no tienes que descargarte y sabes descargar >> páginas. ¿Cuales? >> Tienes que buscar enlaces en las páginas que te descargas para obtener más >> páginas a procesar. Para procesar páginas está muy chulo >> beautifulsoup[3], aunque quizá >> para empezar te baste HTMLParser de la librería estandard. Si sólo vas a >> seguir >> enlaces HTMLParser es más que necesario. >> >> Ahora, usando una página de semilla podras recorrer el grafo de >> páginas conectadas a él. >> Pero todavía tienes que mirarte algunos algoritmos. Imaginate que caes >> en una página que >> tiene un calendario y vas recorriendo el siguiente mes hasta la >> eternidad. Necesitas un >> algoritmo de busqueda de parecidos para evitar este tipo de problemas. >> Con ese algoritmo >> podas el seguir haciendo un crawler. >> >> El tratar de detectar el tiempo que tardan en actualizarse las páginas >> te puede ser muy util. >> >> Hasta ahora, solo hemos tratado la recogida de información. No su >> tratamiento. Empecemos: >> - Usa un stemmer como snowball[4] para obtener las raices de las >> palabras. Te ayudará a >> aproximar rebeldes y rebelión. "rebeldes del 2 de Mayo" y "Rebelión >> del 2 de Mayo" deberian >> devolver la misma cosa. >> - Aunque quizá antes de usar el stemmer te interese ver en que idioma >> está la página[5] >> - Puedes ver algún buscador libre como xapian[6] para aprender de >> algunos algoritmos que usa. >> - Puedes buscar si hay microformatos[7] para ver cosas relevantes como >> eventos o direcciones. >> - ... >> >> No te vas a aburrir si te pones a hacer un buscador. Y si haces uno >> molón, por favor integralo >> con pyndexter[8]. Estaré encantado de usarlo y muy posiblemente la >> comunidad de python >> te lo agradecerá. >> >> [1] >> http://es.wikipedia.org/wiki/Est%C3%A1ndar_de_exclusi%C3%B3n_de_robots >> [2] http://wiki.secondlife.com/wiki/Eventlet/Examples >> [3] http://www.crummy.com/software/BeautifulSoup/ >> [4] http://snowball.tartarus.org/ >> [5] http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/326576 >> [6] http://xapian.org/docs/intro_ir.html >> [7] http://microformats.org/ >> [8] http://swapoff.org/pyndexter >> >> >> Un saludo: >> >> Javi >> >> >> >> >>> salu2 >>> ariel >>> >>> ___________ >>> >>> Este mensaje ha sido analizado por Mailscanner >>> Servicio de Protección contra virus A U S A - Sucursal Cienfuegos >>> >>> >>> _______________________________________________ >>> 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 >> >> ___________ >> Este mensaje ha sido analizado por Mailscanner >> Servicio de Protección contra virus A U S A - Sucursal Cienfuegos >> >> >> >> >> > > ___________ > > Este mensaje ha sido analizado por Mailscanner > Servicio de Protección contra virus A U S A - Sucursal Cienfuegos > > > _______________________________________________ > 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 Jul 1 19:23:20 2008 From: pyarnau en gmail.com (Arnau Sanchez) Date: Tue, 01 Jul 2008 19:23:20 +0200 Subject: Concatenar archivos de texto In-Reply-To: <4869E53A.7010909@diselpro.com> References: <237131.60429.qm@web51606.mail.re2.yahoo.com> <4869E53A.7010909@diselpro.com> Message-ID: <486A6808.6070601@gmail.com> Pepe Aracil escribió: > Así a grandes rasgos: > > fa=file("ficheroA","r") > fb=file("ficheroB","r") > fc=file("ficheroC","w") > > fc.write(fa.read()) > fc.frite(fb.read()) Sí, pero no será eficiente para ficheros muy grandes, ya que tendrá que cargarlos enteros en memoria. Lo que propone Chema (iterar sobre líneas) es lo más simple. Si uno se empeña en hacerlo un poco más eficiente, se podrían leer los ficheros de entrada por bloques en vez de por líneas. Se me ocurre: def iterfd(fd, buffersize=1024): while 1: data = fd.read(buffersize) if not data: break yield data filenames = ["/etc/hosts", "/etc/environment"] outfilename = "/tmp/out" open(outfilename, "w").writelines(data for filename in filenames for data in iterfd(open(filename))) La función "iterfd" se puede reescribir de forma muy compacta usando "iter" y el argumento centinela, pero el código no es tan claro: def iterfd(fd, buffersize=1024): return iter(lambda: fd.read(buffersize), "") _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From camontuyu en yahoo.es Wed Jul 2 12:04:51 2008 From: camontuyu en yahoo.es (Beni) Date: Wed, 2 Jul 2008 12:04:51 +0200 Subject: [pygtk] guardar objetos en los widget Message-ID: <8a19bc7c0807020304r6da8cf19j8576263e2dc6575e@mail.gmail.com> Hola a todos. ¿Es posible guardar objetos del usuario en un widget gtk para luego poder obtenerlos, por ejemplo, en un evento del mismo? Un saludo y gracias. -- Benito Rodríguez Arcos ------------ 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 Wed Jul 2 12:09:11 2008 From: pachi en rvburke.com (Rafael Villar Burke) Date: Wed, 02 Jul 2008 12:09:11 +0200 Subject: [pygtk] guardar objetos en los widget In-Reply-To: <8a19bc7c0807020304r6da8cf19j8576263e2dc6575e@mail.gmail.com> References: <8a19bc7c0807020304r6da8cf19j8576263e2dc6575e@mail.gmail.com> Message-ID: <486B53C7.1010402@rvburke.com> Beni wrote: > Hola a todos. > > ¿Es posible guardar objetos del usuario en un widget gtk para luego poder > obtenerlos, por ejemplo, en un evento del mismo? > >>> import gtk >>> a = gtk.Label() >>> a.mi_dato = "cinco" >>> print a >>> print a.mi_dato cinco Los objetos de pygtk son objetos python, con lo que puedes hacer lo mismo que con cualquier otro objeto. Saludos, Rafael Villar Burke _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From damufo en gmail.com Wed Jul 2 13:10:12 2008 From: damufo en gmail.com (damufo) Date: Wed, 02 Jul 2008 13:10:12 +0200 Subject: GetSelectedRows en wxgrid In-Reply-To: <003101c8db69$1952b980$640010ac@nombref31twj9b> References: <003101c8db69$1952b980$640010ac@nombref31twj9b> Message-ID: <486B6214.1040709@gmail.com> >> -----Mensaje original----- >> De: python-es-bounces en aditel.org >> [mailto:python-es-bounces en aditel.org] En nombre de damufo >> Enviado el: dimarts, 1 / juliol / 2008 12:16 >> Para: La lista de python en castellano >> Asunto: [Python-es] GetSelectedRows en wxgrid >> >> >> Hola: >> Uso wx y python 2.5 >> La cuestión es que tengo un wx.grid, en modo de selección tengo >> self.migrid.SetSelectionMode(wx.grid.Grid.wxGridSelectRows) >> >> el caso es que trato de obtener las filas que tengo seleciconadas con >> GetSelectedRows para ello >> selrow = self.migrid.GetSelectedRows() >> >> pues no se porque siempre me devuelve [] >> >> Alguien conoce que es lo que estoy haciendo mal? >> >>> wxGrid::GetSelectedRows >>> >>> *wxArrayInt* *GetSelectedRows*() *const* >>> >>> Returns an array of selected rows. Amm-Python escribiu: > Mi experiencia siempre a sido con grids donde se seleccionan celdas y me > veo obligado a utilizar: > > IsInSelection(i, j). > > Si solo seleccionas rows creo que sería mejor que utilizaras listas > (wx.ListCtrl) en lugar del grid. > > Gracias Amm, es otra posibilidad. De todos modos álguien sabe como usar el GetSelectedRows? _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From camontuyu en yahoo.es Wed Jul 2 13:31:24 2008 From: camontuyu en yahoo.es (Beni) Date: Wed, 2 Jul 2008 13:31:24 +0200 Subject: [pygtk] guardar objetos en los widget In-Reply-To: <486B53C7.1010402@rvburke.com> References: <8a19bc7c0807020304r6da8cf19j8576263e2dc6575e@mail.gmail.com> <486B53C7.1010402@rvburke.com> Message-ID: <8a19bc7c0807020431s42a5ad74naa4ad18904e2d2c6@mail.gmail.com> On Wed, Jul 2, 2008 at 12:09 PM, Rafael Villar Burke wrote: > >>> import gtk > >>> a = gtk.Label() > >>> a.mi_dato = "cinco" > >>> print a > > >>> print a.mi_dato > cinco > > Los objetos de pygtk son objetos python, con lo que puedes hacer lo > mismo que con cualquier otro objeto. > > Saludos, > > Rafael Villar Burke > Algo de eso suponía,... pero pensaba que gtk tendría algún método para guardar información del usuario. Ya se que estamos con un lenguaje dinámico, pero no me parece una buena forma modificar las objetos en tiempo de ejecución, a no ser que sea necesario, claro. Gracias. -- Benito Rodríguez Arcos ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From listas en soft-com.es Wed Jul 2 14:19:00 2008 From: listas en soft-com.es (=?ISO-8859-1?Q?Oswaldo_Hern=E1ndez?=) Date: Wed, 02 Jul 2008 14:19:00 +0200 Subject: GetSelectedRows en wxgrid In-Reply-To: <486B6214.1040709@gmail.com> References: <003101c8db69$1952b980$640010ac@nombref31twj9b> <486B6214.1040709@gmail.com> Message-ID: <486B7234.40209@soft-com.es> damufo escribió: > > > >>> -----Mensaje original----- >>> De: python-es-bounces en aditel.org >>> [mailto:python-es-bounces en aditel.org] En nombre de damufo >>> Enviado el: dimarts, 1 / juliol / 2008 12:16 >>> Para: La lista de python en castellano >>> Asunto: [Python-es] GetSelectedRows en wxgrid >>> >>> >>> Hola: >>> Uso wx y python 2.5 >>> La cuestión es que tengo un wx.grid, en modo de selección tengo >>> self.migrid.SetSelectionMode(wx.grid.Grid.wxGridSelectRows) >>> >>> el caso es que trato de obtener las filas que tengo seleciconadas con >>> GetSelectedRows para ello >>> selrow = self.migrid.GetSelectedRows() >>> >>> pues no se porque siempre me devuelve [] >>> >>> Alguien conoce que es lo que estoy haciendo mal? >>> >>>> wxGrid::GetSelectedRows >>>> >>>> *wxArrayInt* *GetSelectedRows*() *const* >>>> >>>> Returns an array of selected rows. > > > Amm-Python escribiu: > > Mi experiencia siempre a sido con grids donde se seleccionan celdas y me > > veo obligado a utilizar: > > > > IsInSelection(i, j). > > > > Si solo seleccionas rows creo que sería mejor que utilizaras listas > > (wx.ListCtrl) en lugar del grid. > > > > > > > Gracias Amm, es otra posibilidad. > > De todos modos álguien sabe como usar el GetSelectedRows? GetSelectedRows() solo funciona cuando las lineas son selecionadas utilizando las etiquetas. Aqui tienes las respuesta original de Robin Dunn a una pregunta similar: 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 damufo en gmail.com Wed Jul 2 15:21:19 2008 From: damufo en gmail.com (damufo) Date: Wed, 02 Jul 2008 15:21:19 +0200 Subject: GetSelectedRows en wxgrid In-Reply-To: <486B7234.40209@soft-com.es> References: <003101c8db69$1952b980$640010ac@nombref31twj9b> <486B6214.1040709@gmail.com> <486B7234.40209@soft-com.es> Message-ID: <486B80CF.5010803@gmail.com> Oswaldo Hernández escribiu: > damufo escribió: >> >> >> >>>> -----Mensaje original----- >>>> De: python-es-bounces en aditel.org >>>> [mailto:python-es-bounces en aditel.org] En nombre de damufo >>>> Enviado el: dimarts, 1 / juliol / 2008 12:16 >>>> Para: La lista de python en castellano >>>> Asunto: [Python-es] GetSelectedRows en wxgrid >>>> >>>> >>>> Hola: >>>> Uso wx y python 2.5 >>>> La cuestión es que tengo un wx.grid, en modo de selección tengo >>>> self.migrid.SetSelectionMode(wx.grid.Grid.wxGridSelectRows) >>>> >>>> el caso es que trato de obtener las filas que tengo seleciconadas >>>> con GetSelectedRows para ello >>>> selrow = self.migrid.GetSelectedRows() >>>> >>>> pues no se porque siempre me devuelve [] >>>> >>>> Alguien conoce que es lo que estoy haciendo mal? >>>> >>>>> wxGrid::GetSelectedRows >>>>> >>>>> *wxArrayInt* *GetSelectedRows*() *const* >>>>> >>>>> Returns an array of selected rows. >> >> >> Amm-Python escribiu: >> > Mi experiencia siempre a sido con grids donde se seleccionan celdas >> y me >> > veo obligado a utilizar: >> > >> > IsInSelection(i, j). >> > >> > Si solo seleccionas rows creo que sería mejor que utilizaras listas >> > (wx.ListCtrl) en lugar del grid. >> > >> > >> >> >> Gracias Amm, es otra posibilidad. >> >> De todos modos álguien sabe como usar el GetSelectedRows? > > GetSelectedRows() solo funciona cuando las lineas son selecionadas > utilizando las etiquetas. > Aqui tienes las respuesta original de Robin Dunn a una pregunta similar: > > > > Saludos, Muchas Gracias, lo probaré. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pepe en diselpro.com Wed Jul 2 15:30:37 2008 From: pepe en diselpro.com (Pepe Aracil) Date: Wed, 02 Jul 2008 15:30:37 +0200 Subject: Concatenar archivos de texto In-Reply-To: <486A6808.6070601@gmail.com> References: <237131.60429.qm@web51606.mail.re2.yahoo.com> <4869E53A.7010909@diselpro.com> <486A6808.6070601@gmail.com> Message-ID: <486B82FD.9070100@diselpro.com> Arnau Sanchez escribió: > Pepe Aracil escribió: > >> Así a grandes rasgos: >> >> fa=file("ficheroA","r") >> fb=file("ficheroB","r") >> fc=file("ficheroC","w") >> >> fc.write(fa.read()) >> fc.frite(fb.read()) > > Sí, pero no será eficiente para ficheros muy grandes, ya que tendrá que > cargarlos enteros en memoria. Si, por supuesto. Solo quería ponerlo de la forma más descriptiva posible. Saludos. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pachi en rvburke.com Wed Jul 2 16:50:20 2008 From: pachi en rvburke.com (Rafael Villar Burke) Date: Wed, 02 Jul 2008 16:50:20 +0200 Subject: [pygtk] guardar objetos en los widget In-Reply-To: <8a19bc7c0807020431s42a5ad74naa4ad18904e2d2c6@mail.gmail.com> References: <8a19bc7c0807020304r6da8cf19j8576263e2dc6575e@mail.gmail.com> <486B53C7.1010402@rvburke.com> <8a19bc7c0807020431s42a5ad74naa4ad18904e2d2c6@mail.gmail.com> Message-ID: <486B95AC.6090003@rvburke.com> Beni wrote: > Algo de eso suponía,... pero pensaba que gtk tendría algún método para > guardar información del usuario. > Lo tiene. Los controles y otros objetos de pygtk son del tipo gobject, con lo que puedes usar los métodos set_data y get_data para lo que quieres: http://www.pygtk.org/docs/pygobject/class-gobject.html#method-gobject--set-data > Ya se que estamos con un lenguaje dinámico, pero no me parece una buena > forma modificar las objetos en tiempo de ejecución, a no ser que sea > necesario, claro. > ¿Por qué no te parece una buena idea?. ¿Cómo piensas aportar los datos si no vas a entregarlos en el momento de la ejecución teniendo en cuenta que python no es un lenguaje compilado?. Saludos, Rafael Villar Burke _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From camontuyu en yahoo.es Wed Jul 2 17:48:09 2008 From: camontuyu en yahoo.es (Beni) Date: Wed, 2 Jul 2008 17:48:09 +0200 Subject: [pygtk] guardar objetos en los widget In-Reply-To: <486B95AC.6090003@rvburke.com> References: <8a19bc7c0807020304r6da8cf19j8576263e2dc6575e@mail.gmail.com> <486B53C7.1010402@rvburke.com> <8a19bc7c0807020431s42a5ad74naa4ad18904e2d2c6@mail.gmail.com> <486B95AC.6090003@rvburke.com> Message-ID: <8a19bc7c0807020848k6af82afavb745e8bc0d230734@mail.gmail.com> 2008/7/2 Rafael Villar Burke : > Beni wrote: > > Algo de eso suponía,... pero pensaba que gtk tendría algún método para > > guardar información del usuario. > > > Lo tiene. Los controles y otros objetos de pygtk son del tipo gobject, > con lo que puedes usar los métodos set_data y get_data para lo que quieres: > > http://www.pygtk.org/docs/pygobject/class-gobject.html#method-gobject--set-data > > Ya se que estamos con un lenguaje dinámico, pero no me parece una buena > > forma modificar las objetos en tiempo de ejecución, a no ser que sea > > necesario, claro. > > > ¿Por qué no te parece una buena idea?. ¿Cómo piensas aportar los datos > si no vas a entregarlos en el momento de la ejecución teniendo en cuenta > que python no es un lenguaje compilado?. > > Saludos, > > Rafael Villar Burke > No me parece una buena idea porque hace el código un poco ilegible y dificil de mantener. Imagina que tiene una clase persona con sus propiedades. class Persona: def __init__(self): self.nombre = "" self.apellidos = "" Si ahora quiero indicar que una persona puede llevar una serie de cosas. Podría hacer: p = Persona() p.libro = Libro() p.boli = Boligrafo() y funcionaria correctamente, pero no me gusta, ya que en mi definición de mi clase persona no dige que podía llevar un libro y un boli. Lo suyo sería añadir más funcionalidad a nuestra clase como: persona.get_mochila().add_objeto(libro) De forma similar, como me has indicando, en gtk: objeto.set_data*()* No se... me gusta más. Un saludo. -- Benito Rodríguez Arcos ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From osmanycc en ipicfg.rimed.cu Wed Jul 2 21:43:18 2008 From: osmanycc en ipicfg.rimed.cu (Krom) Date: Wed, 02 Jul 2008 14:43:18 -0500 Subject: {Disarmed} Re: Ayuda In-Reply-To: References: Message-ID: <486BDA56.8070208@ipicfg.rimed.cu> Hola, espero que esto te sirva. Salu2. -- Este mensaje ha sido analizado por MailScanner en busca de virus y otros contenidos peligrosos, y se considera que está limpio. ** Nodo Comunicaciones IPI Cienfuegos ** ** WebPage:http://www.ipicfg.rimed.cu ** ------------ próxima parte ------------ ? #[1]RSS 2.0 [2]RSS .92 [3]Atom 1.0 [4]javivf's blog Enero 30, 2007 [5]Eric4 on Windows Archivado en: [6]howto, [7]programacion, [8]software -- javivf @ 11:17 am No se si alguna vez comente mi interes hacia PyQT gracias a sendos articulos de bulma.net ( Tutorial de desarrollo de aplicaciones con interfaz grafica en Python y Qt (PyQt) [9]I y [10]II ) Como se suele decir, una cosa llevo a la otra... y me encontre con la "necesidad" de instalar [11]Eric4 en Windows y como con los binarios que se comentan en sendos articulos de bulma, a dia de hoy, no sirven para lo que queria voy a explicar un poco el proceso para instalar nuestro querido IDE en Windows. ( en un linux con el emerge eric / aptitude install eric / etc... esta todo hecho :) El problema en concreto es que en el binario de PyQT no esta incluido pyqtconfig.py que es necesario para la instalacion de los bindings Python de QScintilla, que a su vez es necesario para la instalacion de Eric4. Menos rollo y manos a la obra. Damos por sentado que tenemos instalado [12]Python y [13]qt-win-opensource ( con el mingw inside ;). En este punto debemos tener en nuestro PATH C:\Python25;C:\Python25\Scripts;C:\Qt\4.2.2\bin;C:\Qt\4.2.2\lib;C:\Min GW\bin . Con cerrar una consola y abrir una nueva deberia actualizarse la variable PATH 1.- Nos bajamos [14]sip, lo descomprimimos e instalamos de la siguiente forma: cd C:\sip-4.5.2 c:\python25\python configure.py -p win32-g++ make make install 2.- Nos bajamos las [15]PyQT, lo descomprimimos e instalamos de la siguiente forma: cd "c:\PyQt-win-gpl-4.1.1'' python configure.py make make install 3.- Nos bajamos [16]QSCintilla2 y ejecutamos lo siguiente para instalar: cd "C:\QScintilla-1.72-gpl-2-snapshot-20070117'' cd Qt4 qmake qscintilla.pro make make install Y lo correspondiente a los bindings de QScintilla para python : cd .. cd Python python configure.py make make install 4.- Y ultimo, nuestro amigo [17]Eric4 con su instalacion conrrespondiente: cd "c:\eric4-snapshot-20070114'' python install.py Y a desarrollar! ;) PD: He probado este minitutorial con exito en un WinXP y en W2k. PD2: Se que no es nada que no se pueda sacar de la documentacion correspondiente de cada "paquete" pero almenos alguien se podra ahorrar algo de tiempo con esto :) No hay comentarios [18]? A? hay comentarios. [19]Redifusi?SS de los comentarios de la entrada. [20]TrackBack URL Deje un comentario ______________________ Nombre (requerido) ______________________ Mail (no ser?ublicado) (requerido) ______________________ Sitio Web Enviar Comentario 917 You need to enable javascript in order to use Simple CAPTCHA. // var count = 0; function reloadCaptcha() { frm = document.getElementById("simple_captcha"); opacity("simple_captcha", 100, 0, 300); count++; frm.src = "http://javivf.alasombra.net/blog/wp-content/plugins/simple_captcha/gd img.php?re=" + count; opacity("simple_captcha", 0, 100, 300); } function rand (mmin, mmax) { return ( Math.floor ( Math.random () * 100000 ) % mmax ) + mmin; } function opacity(id, opacStart, opacEnd, millisec) { //speed for each frame var speed = Math.round(millisec / 100); var timer = 0; //determine the direction for the blending, if start and end are the same nothing happens if(opacStart > opacEnd) { for(i = opacStart; i >= opacEnd; i--) { setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed)); timer++; } } else if(opacStart < opacEnd) { for(i = opacStart; i <= opacEnd; i++) { setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed)); timer++; } } } //change the opacity for different browsers function changeOpac(opacity, id) { var object = document.getElementById(id).style; object.opacity = (opacity / 100); object.MozOpacity = (opacity / 100); object.KhtmlOpacity = (opacity / 100); object.filter = "alpha(opacity=" + opacity + ")"; } function pause( milisec ) { sleep = milisec; begin = new Date(); start = begin.getTime(); done = false; while( !done ) { alarm = new Date(); curr = alarm.getTime(); if( curr - start > sleep) { done = true; return; } } } ff = document.getElementById("commentform"); ff.submit.style.display = "none"; submitVal = ff.submit.value; // Security Code: ____________________ Dummy // ff2 = document.getElementById("zrx_captcha"); ff2.style.display = "inline"; ff.submit2.value = submitVal; // * CAPTION: Mayo 2008 L M X J V S D [21]? Abr 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 [22]19 20 21 22 23 24 25 26 27 28 29 30 31 * _______________ Buscar * Categor? + [23]blog + [24]BSD + [25]contribucion + [26]efemerides + [27]fpc/lazarus + [28]freak + [29]general + [30]gentoo + [31]howto + [32]motogp + [33]personal + [34]programacion + [35]protesta + [36]seguridad + [37]shellscript + [38]software + [39]ubuntu * Archivo + [40]Mayo 2008 + [41]Abril 2008 + [42]Marzo 2008 + [43]Febrero 2008 + [44]Enero 2008 + [45]Diciembre 2007 + [46]Noviembre 2007 + [47]Octubre 2007 + [48]Septiembre 2007 + [49]Agosto 2007 + [50]Julio 2007 + [51]Junio 2007 + [52]Mayo 2007 + [53]Abril 2007 + [54]Marzo 2007 + [55]Enero 2007 + [56]Mayo 2006 + [57]Abril 2006 + [58]Marzo 2006 + [59]Febrero 2006 + [60]Enero 2006 + [61]Diciembre 2005 + [62]Noviembre 2005 + [63]Octubre 2005 + [64]Septiembre 2005 + [65]Agosto 2005 + [66]Julio 2005 + [67]Junio 2005 + [68]Mayo 2005 + [69]Abril 2005 + [70]Marzo 2005 + [71]Febrero 2005 + [72]Enero 2005 + [73]Diciembre 2004 + [74]Noviembre 2004 * nose[75]flamerobin firebird [76]freepascal [77]java [78]javacup [79]javahispano [80]lazarus [81]WTF * Meta + [82]Log in + [83]RSS de Entradas + [84]RSS de los comentarios + [85]WordPress.org * Blogroll + [86]llodra.es + [87]Mariuz's Blog Gestionado con [88]WordPress References 1. http://javivf.alasombra.net/blog/?feed=rss2 2. http://javivf.alasombra.net/blog/?feed=rss 3. http://javivf.alasombra.net/blog/?feed=atom 4. http://javivf.alasombra.net/blog/ 5. http://javivf.alasombra.net/blog/?p=917 6. http://javivf.alasombra.net/blog/?cat=14 7. http://javivf.alasombra.net/blog/?cat=17 8. http://javivf.alasombra.net/blog/?cat=20 9. http://bulma.net/body.phtml?nIdNoticia=2336 10. http://bulma.net/body.phtml?nIdNoticia=2338 11. http://www.die-offenbachs.de/detlev/eric.html 12. http://www.python.org/ftp/python/2.5/python-2.5.msi 13. http://ftp.iasi.roedu.net/mirrors/ftp.trolltech.com/qt/source/qt-win-opensource-4.2.2-mingw.exe 14. http://www.riverbankcomputing.com/Downloads/sip4/sip-4.5.2.zip 15. http://www.riverbankcomputing.com/Downloads/PyQt4/GPL/PyQt-win-gpl-4.1.1.zip 16. http://www.riverbankcomputing.com/Downloads/Snapshots/QScintilla2/QScintilla-1.72-gpl-2-snapshot-20070117.tar.gz 17. http://www.die-offenbachs.de/detlev/snapshots4/eric4-snapshot-20070114.tar.gz 18. http://javivf.alasombra.net/blog/?p=917#postcomment 19. http://javivf.alasombra.net/blog/?feed=rss2&p=917 20. http://javivf.alasombra.net/blog/wp-trackback.php?p=917 21. http://javivf.alasombra.net/blog/?m=200804 22. http://javivf.alasombra.net/blog/?m=20080519 23. http://javivf.alasombra.net/blog/?cat=22 24. http://javivf.alasombra.net/blog/?cat=10 25. http://javivf.alasombra.net/blog/?cat=23 26. http://javivf.alasombra.net/blog/?cat=11 27. http://javivf.alasombra.net/blog/?cat=9 28. http://javivf.alasombra.net/blog/?cat=12 29. http://javivf.alasombra.net/blog/?cat=1 30. http://javivf.alasombra.net/blog/?cat=13 31. http://javivf.alasombra.net/blog/?cat=14 32. http://javivf.alasombra.net/blog/?cat=15 33. http://javivf.alasombra.net/blog/?cat=16 34. http://javivf.alasombra.net/blog/?cat=17 35. http://javivf.alasombra.net/blog/?cat=18 36. http://javivf.alasombra.net/blog/?cat=19 37. http://javivf.alasombra.net/blog/?cat=8 38. http://javivf.alasombra.net/blog/?cat=20 39. http://javivf.alasombra.net/blog/?cat=21 40. http://javivf.alasombra.net/blog/?m=200805 41. http://javivf.alasombra.net/blog/?m=200804 42. http://javivf.alasombra.net/blog/?m=200803 43. http://javivf.alasombra.net/blog/?m=200802 44. http://javivf.alasombra.net/blog/?m=200801 45. http://javivf.alasombra.net/blog/?m=200712 46. http://javivf.alasombra.net/blog/?m=200711 47. http://javivf.alasombra.net/blog/?m=200710 48. http://javivf.alasombra.net/blog/?m=200709 49. http://javivf.alasombra.net/blog/?m=200708 50. http://javivf.alasombra.net/blog/?m=200707 51. http://javivf.alasombra.net/blog/?m=200706 52. http://javivf.alasombra.net/blog/?m=200705 53. http://javivf.alasombra.net/blog/?m=200704 54. http://javivf.alasombra.net/blog/?m=200703 55. http://javivf.alasombra.net/blog/?m=200701 56. http://javivf.alasombra.net/blog/?m=200605 57. http://javivf.alasombra.net/blog/?m=200604 58. http://javivf.alasombra.net/blog/?m=200603 59. http://javivf.alasombra.net/blog/?m=200602 60. http://javivf.alasombra.net/blog/?m=200601 61. http://javivf.alasombra.net/blog/?m=200512 62. http://javivf.alasombra.net/blog/?m=200511 63. http://javivf.alasombra.net/blog/?m=200510 64. http://javivf.alasombra.net/blog/?m=200509 65. http://javivf.alasombra.net/blog/?m=200508 66. http://javivf.alasombra.net/blog/?m=200507 67. http://javivf.alasombra.net/blog/?m=200506 68. http://javivf.alasombra.net/blog/?m=200505 69. http://javivf.alasombra.net/blog/?m=200504 70. http://javivf.alasombra.net/blog/?m=200503 71. http://javivf.alasombra.net/blog/?m=200502 72. http://javivf.alasombra.net/blog/?m=200501 73. http://javivf.alasombra.net/blog/?m=200412 74. http://javivf.alasombra.net/blog/?m=200411 75. http://javivf.alasombra.net/blog/?tag=flamerobin-firebird 76. http://javivf.alasombra.net/blog/?tag=freepascal 77. http://javivf.alasombra.net/blog/?tag=java 78. http://javivf.alasombra.net/blog/?tag=javacup 79. http://javivf.alasombra.net/blog/?tag=javahispano 80. http://javivf.alasombra.net/blog/?tag=lazarus 81. http://javivf.alasombra.net/blog/?tag=wtf 82. http://javivf.alasombra.net/blog/wp-login.php 83. http://javivf.alasombra.net/blog/?feed=rss2 84. http://javivf.alasombra.net/blog/?feed=comments-rss2 85. http://wordpress.org/ 86. http://www.llodra.es/ 87. http://mapopa.blogspot.com/ 88. http://wordpress.org/ ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pepitovadecurt en gmail.com Thu Jul 3 09:08:54 2008 From: pepitovadecurt en gmail.com (pepitovadecurt) Date: Thu, 03 Jul 2008 09:08:54 +0200 Subject: Hosting para Django Message-ID: Alguien sabe de un hosting gratuito para hacer pruebas de Django? _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From edgar.cardoz en gmail.com Thu Jul 3 09:34:55 2008 From: edgar.cardoz en gmail.com (Edgar Israel Casanova Cardoz) Date: Thu, 03 Jul 2008 02:34:55 -0500 Subject: Hosting para Django In-Reply-To: References: Message-ID: <486C811F.9070607@gmail.com> pepitovadecurt escribió: > Alguien sabe de un hosting gratuito para hacer pruebas de Django? Yo no, pero quizás instalando Apache(y lo básico para un web server) en tu propia PC puedas hacer las pruebas. > > _______________________________________________ > Lista de correo Python-es http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes -- Edgar Israel Casanova Cardoz http://ideas-libres.com http://edmind.blogspot.com http://dmind.yucatux.org _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From capiscuas en gmail.com Thu Jul 3 10:40:57 2008 From: capiscuas en gmail.com (=?ISO-8859-1?Q?Iv=E1n_Garc=EDa?=) Date: Thu, 03 Jul 2008 16:40:57 +0800 Subject: Obtener el fullpath de programas en Windows,Mac Message-ID: <486C9099.8060703@gmail.com> Mi aplicación está hecha usando pyqt y quiero averiguar si el cliente tiene instalado el reproductor VLC de momento para linux es muy facil. if platform.system() == "Linux": status, path = commands.getstatusoutput("which vlc") En windows, cómo puedo averiguar el path para el vlc.exe ? Debo usar el Registro de windows para ello? Y en Mac ? _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From luis en luismedel.com Thu Jul 3 10:35:01 2008 From: luis en luismedel.com (=?ISO-8859-1?Q?Luis_Medel_C=E1ceres?=) Date: Thu, 3 Jul 2008 10:35:01 +0200 Subject: Hosting para Django In-Reply-To: References: Message-ID: 2008/7/3 pepitovadecurt : > Alguien sabe de un hosting gratuito para hacer pruebas de Django? Si lo único que quieres es hacer pruebas, Django viene "de serie" con un servidor que puedes ejecutar en local. Échale un vistazo al tutorial de inicio: http://www.djangoproject.com/documentation/tutorial01/ Por cierto, hola a todos. Esta es la primera vez que participo de manera activa en la lista. Un saludo. -- Luis Medel http://luismedel.com _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pepitovadecurt en gmail.com Thu Jul 3 11:12:02 2008 From: pepitovadecurt en gmail.com (pepitovadecurt) Date: Thu, 03 Jul 2008 11:12:02 +0200 Subject: Hosting para Django In-Reply-To: <486C811F.9070607@gmail.com> References: <486C811F.9070607@gmail.com> Message-ID: <486C97E2.9080504@gmail.com> El proyecto que estoy haciendo es de tickets de incidencias y lo quisiera probar en un servidor para que las tiendas lo prueben a través de Internet. Edgar Israel Casanova Cardoz escribió: > pepitovadecurt escribió: >> Alguien sabe de un hosting gratuito para hacer pruebas de Django? > Yo no, pero quizás instalando Apache(y lo básico para un web server) en > tu propia PC puedas hacer las pruebas. >> _______________________________________________ >> 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 Thu Jul 3 11:14:24 2008 From: damufo en gmail.com (damufo) Date: Thu, 03 Jul 2008 11:14:24 +0200 Subject: Ordenar lista que tiene elementos clase Message-ID: <486C9870.2020800@gmail.com> Hola: No se si es así como se dice, lo explico. Tengo una clase llamada Persona, persona a sú vez tiene atributos como edad, sexo... La cuestión es que por otro lado tengo otra clase llamada Grupo que tiene atributos como, lugar, centro, y personas que es una lista en la que almaceno clases de tipo Persona class Persona() def __init__(nombre, edad, sexo): self.nombre = nombre self.edad = edad self.sexo = sexo class Grupo() def __init__(lugar="", centro="", personas=[]): self.lugar = lugar self.centro = centro self.personas = personas posteriormente persona1 = Persona("nombre1", "18", "M") persona2 = Persona("nombre2", "19", "F") grupo1 = Grupo("coruña", "centro1") grupo1.personas.add(persona1) grupo1.personas.add(persona2) Ahora viene la cuestión, me gustaría sacar un listado de las personas del grupo ordenadas por edad, sexo y nombre, en ese orden, despues otro con otra ordenación diferente. Hay forma de decirle a la lista que tiene personas que se ordene de este modo? Aunque no se pueda ordenar la lista, hay forma de hacer esto? obtener un resultado con una determinda ordenación? Saludos y gracias ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From alexis.roda.villalonga en gmail.com Thu Jul 3 13:09:18 2008 From: alexis.roda.villalonga en gmail.com (Alexis Roda) Date: Thu, 03 Jul 2008 13:09:18 +0200 Subject: Ordenar lista que tiene elementos clase In-Reply-To: <486C9870.2020800@gmail.com> References: <486C9870.2020800@gmail.com> Message-ID: <486CB35E.8070201@gmail.com> En/na damufo ha escrit: > Hola: > No se si es así como se dice, lo explico. > Tengo una clase llamada Persona, persona a sú vez tiene atributos como > edad, sexo... > La cuestión es que por otro lado tengo otra clase llamada Grupo que > tiene atributos como, lugar, centro, y personas que es una lista en la > que almaceno clases de tipo Persona > > class Persona() > def __init__(nombre, edad, sexo): > self.nombre = nombre > self.edad = edad > self.sexo = sexo > > persona1 = Persona("nombre1", "18", "M") > persona2 = Persona("nombre2", "19", "F") Puedes utilizar el método sort() de las listas. Ten presente que este método ordena la lista in situ, *no* devuelve una copia ordenada de la lista. def compara_edad_sexo_nombre(p1, p2) : return cmp((p1.edad, p1.sexo, p1.nombre), (p2.edad, p2.sexo, p2.nombre)) grupo1.personas.sort(cmp=compara_edad_sexo_nombre) Un par de observaciones: Ten cuidado al poner las edades como valores alfanuméricos, "2" > "10" mientras que 2 < 10. No sé de que va tu programa, pero tiene la pinta de que una base de datos relacional te facilitaría la vida. Saludos ------------ 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 Thu Jul 3 14:10:59 2008 From: damufo en gmail.com (damufo) Date: Thu, 03 Jul 2008 14:10:59 +0200 Subject: Ordenar lista que tiene elementos clase In-Reply-To: <486CB35E.8070201@gmail.com> References: <486C9870.2020800@gmail.com> <486CB35E.8070201@gmail.com> Message-ID: <486CC1D3.8080205@gmail.com> Alexis Roda escribiu: > En/na damufo ha escrit: >> Hola: >> No se si es así como se dice, lo explico. >> Tengo una clase llamada Persona, persona a sú vez tiene atributos como >> edad, sexo... >> La cuestión es que por otro lado tengo otra clase llamada Grupo que >> tiene atributos como, lugar, centro, y personas que es una lista en la >> que almaceno clases de tipo Persona >> >> class Persona() >> def __init__(nombre, edad, sexo): >> self.nombre = nombre >> self.edad = edad >> self.sexo = sexo >> >> persona1 = Persona("nombre1", "18", "M") >> persona2 = Persona("nombre2", "19", "F") > > Puedes utilizar el método sort() de las listas. Ten presente que este > método ordena la lista in situ, *no* devuelve una copia ordenada de la > lista. > > def compara_edad_sexo_nombre(p1, p2) : > return cmp((p1.edad, p1.sexo, p1.nombre), > (p2.edad, p2.sexo, p2.nombre)) > > grupo1.personas.sort(cmp=compara_edad_sexo_nombre) > > > Un par de observaciones: > > Ten cuidado al poner las edades como valores alfanuméricos, "2" > "10" > mientras que 2 < 10. > > No sé de que va tu programa, pero tiene la pinta de que una base de > datos relacional te facilitaría la vida. > Gracias Alexis, era solo un ejemplo, efectivemente para edad mejor numerico. Creo que visto lo visto en lugar de almacenar los datos, haré una consulta a la base de datos para que me devuelva la información como quiero. Esto es algo que aun no tengo muy claro, al usar clases tiendo a almacenar en memoria en lugar de la base de datos. Saludos y gracias. damufo ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From leo.sanmartin en gmail.com Thu Jul 3 15:47:41 2008 From: leo.sanmartin en gmail.com (=?ISO-8859-1?Q?Leo_San_Mart=EDn.?=) Date: Thu, 3 Jul 2008 09:47:41 -0400 Subject: Hosting para Django In-Reply-To: <486C97E2.9080504@gmail.com> References: <486C811F.9070607@gmail.com> <486C97E2.9080504@gmail.com> Message-ID: <979e02b40807030647s40cbff4eld44ee074197da38a@mail.gmail.com> 2008/7/3 pepitovadecurt : > El proyecto que estoy haciendo es de tickets de incidencias y lo quisiera > probar en un servidor para que las tiendas lo prueben a través de Internet. Podrías probar con un servicio similar al de no-ip. Que basicamente en un dns dinamico, que actualiza tu ip dinamica, al nombre que elijas, a travez de un cliente que corre, al menos, sobre windows y linux. Tu equipo de la casa se veria algo así: http://tupccondjango.no-ip.com > > > > Edgar Israel Casanova Cardoz escribió: > > pepitovadecurt escribió: >> >>> Alguien sabe de un hosting gratuito para hacer pruebas de Django? >>> >> Yo no, pero quizás instalando Apache(y lo básico para un web server) en >> tu propia PC puedas hacer las pruebas. >> >>> _______________________________________________ >>> 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.,LSM. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pyarnau en gmail.com Thu Jul 3 18:53:08 2008 From: pyarnau en gmail.com (Arnau Sanchez) Date: Thu, 03 Jul 2008 18:53:08 +0200 Subject: Ordenar lista que tiene elementos clase In-Reply-To: <486CB35E.8070201@gmail.com> References: <486C9870.2020800@gmail.com> <486CB35E.8070201@gmail.com> Message-ID: <486D03F4.3070201@gmail.com> Alexis Roda escribió: >> persona1 = Persona("nombre1", "18", "M") >> persona2 = Persona("nombre2", "19", "F") > > Puedes utilizar el método sort() de las listas. Ten presente que este > método ordena la lista in situ, *no* devuelve una copia ordenada de la > lista. Y si no lo quieres in situ puedes usar el built-in "sorted". > def compara_edad_sexo_nombre(p1, p2) : > return cmp((p1.edad, p1.sexo, p1.nombre), > (p2.edad, p2.sexo, p2.nombre)) Una alternativa a pasar una función de comparación (parámetro "cmp"), es indicar cómo obtener los valores para realizar dicha comparación (parámetro "key"): personas = [persona1, persona2] key = lambda persona: [persona.edad, persona.sexo, persona.nombre] sorted(personas, key=key) Lo mismo con operator.attrgetter queda: import operator personas = [persona1, persona2] key = lambda persona: operator.attrgetter("edad", "sexo", "nombre") sorted(personas, key=key) --- Pero como ya te han comentado, si estos objetos son el resultado de una búsqueda en un ORM, puedes pedirle que te los dé ya ordenados por el criterio que necesites, lo hará más rápido. arnau ------------ 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 Thu Jul 3 20:19:10 2008 From: damufo en gmail.com (damufo) Date: Thu, 03 Jul 2008 20:19:10 +0200 Subject: Ordenar lista que tiene elementos clase In-Reply-To: <486D03F4.3070201@gmail.com> References: <486C9870.2020800@gmail.com> <486CB35E.8070201@gmail.com> <486D03F4.3070201@gmail.com> Message-ID: <486D181E.7050307@gmail.com> Arnau Sanchez escribiu: > Alexis Roda escribió: > >>> persona1 = Persona("nombre1", "18", "M") >>> persona2 = Persona("nombre2", "19", "F") >> >> Puedes utilizar el método sort() de las listas. Ten presente que este >> método ordena la lista in situ, *no* devuelve una copia ordenada de la >> lista. > > Y si no lo quieres in situ puedes usar el built-in "sorted". > >> def compara_edad_sexo_nombre(p1, p2) : >> return cmp((p1.edad, p1.sexo, p1.nombre), >> (p2.edad, p2.sexo, p2.nombre)) > > Una alternativa a pasar una función de comparación (parámetro "cmp"), es > indicar cómo obtener los valores para realizar dicha comparación > (parámetro "key"): > > personas = [persona1, persona2] > key = lambda persona: [persona.edad, persona.sexo, persona.nombre] > sorted(personas, key=key) esto es interesante. > > Lo mismo con operator.attrgetter queda: > > import operator > personas = [persona1, persona2] > key = lambda persona: operator.attrgetter("edad", "sexo", "nombre") > sorted(personas, key=key) > > --- > > Pero como ya te han comentado, si estos objetos son el resultado de una > búsqueda en un ORM, puedes pedirle que te los dé ya ordenados por el > criterio que necesites, lo hará más rápido. > > arnau > Estoy comenzando a programar con objetos, el caso es que aun no tengo claro que es lo que tengo que tener cargado en el objeto o lo que es mejor. Para este caso lo que puedo hacer es una busqueda en la base de datos y que devuelva el resultado con el orden que quiero. La otra opción, la que pretendía, era que al cargar el objeto, en este caso grupo, le cargaría tambien las personas... y todos los datos que le perteneciesen así no tendría que consultar de nuevo la base de datos (decir que es una aplicación de escritoio esto no debería ser muy pesado). Despues en diferentes momentos cargaré los datos del grupo en un formulario, entre ellos los de personas los pondré en una tabla (o lista), pues bien, en este momento és cuando tengo que ordenarlos para al ponerlos en la lista estean en el orden deseado. Como decía, y ya me estoy extendiendo, la otra opción es que en lugar de que grupo tenga personas cargado con todos sus datos, pues hacer que grupo tenga una (o mas) función que devuelva los datos que pido sería class Grupo() def __init__(grupo, lugar="", centro="", personas=[]): self.grupo = grupo self.lugar = lugar self.centro = centro self.personas = personas def personas_nombre(): conexión con base de datos rs = lanzar consulta "select nombre, edad, sexo from personas where grupo=%s order by nombre, edad, sexo" % self.grupo return rs donde rs sería un cursor (tupla) según la dbapi, con los campos nombre edad seso grupo1 = Grupo("001", "coruña", "centro1") lo bueno de esta segunda opción es que podría hacer diferentes funciones para diferenes ordenaciones por ejemplo def personas_ordenado_por_sexo(): conexión con base de datos rs = lanzar consulta "select nombre, edad, sexo from personas where grupo=%s order by sexo, nombre " % self.grupo return rs No tengo ni idea de que es lo mas adecuado, no se si es cuestión de gustos o depende de la situación, o lo que planteo es una tontería. En fin... cuanto mas aprendo de programación mas me da la sensación de que hai aun más por aprender. Me estoy dando cuenta de que incluso la opción de devolver diferentes ordenados se puede hacer a partir de los datos almacenados en personas (me refiero a la primera opción, la de cagar todo en la clase), y hacer funcinones que devuelvan el tema ordenado como quiera usando por ejemplo def personas_ordenado_por_sexo(): #personas = [persona1, persona2] # esto sería self.personas key = lambda persona: [persona.sexo, persona.nombre] return sorted(self.personas, key=key) Gracias Arnau. ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From dreamtrick en gmail.com Thu Jul 3 21:09:00 2008 From: dreamtrick en gmail.com (Ignacio Quezada) Date: Thu, 03 Jul 2008 21:09:00 +0200 Subject: Variable entre clases o =?iso-8859-1?q?soluci=F3n?= equivalente Message-ID: <1215112140.9205.4.camel@DrEaMeREW.ZONE> Hola!! Necesito pasar de una clase a otra una variable. El problema es que la clase secundaria tiene que devolverle una lista a la primera, pero no es indispensable para su funcionamiento. Me explico, es wxpython y la primera clase es el MainFrame, la segunda clase es una para conseguir drag and drop, y consiguiendo una lista en la segunda clase, necesito "procesarla" en la primera clase, necesito escribir en varios TextCtrl según los valores de la lista y un MyFrame.TextCtrlX.SetValue(Y[0]) falla diciendo que MyFrame no tiene ese atributo :S. Saludos! ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pythown en gmail.com Thu Jul 3 22:37:05 2008 From: pythown en gmail.com (=?ISO-8859-1?Q?Antonio_G=F3mez?=) Date: Thu, 3 Jul 2008 22:37:05 +0200 Subject: Comparar archivos (y si son mp3 mejor) XD Message-ID: <13a83ada0807031337p671da981kb7bda7a5516e0ea3@mail.gmail.com> Buenas: Toy liado haciendo un programa que compare dos files y elimine uno si son el mismo Llevo poco tiempo con python, y hasta ahora solo se me ha ocurrido: Comprar el nombre de ambos (observando el 'fichero.txt' y 'fichero 1.txt' que genera WIN), Comparar sus características (valores de os.path.stat()) y por último usar filecmp (el cual no me funciona bien, pues files dispares me dice que son iguales) La cosa más o menos me cuadra juntando un poco de cada una de las opciones. ¿se os ocurre algún parámetro más a comparar? Se me ocurrió concretar este programilla para un solo tipo de archivos, p. ej. .mp3, y a la hora de meter mano a un mp3, pues me he encontrado algo des orientado. ¿como posdría comparar las tags? Cada mp3 parece de su padre y de su madre (y creo que eso es así, a capricho del que 'comprime' el archivito) Perdonar si mis preguntas son muy básicas. Aun estoy con la Guía Básica del holandés. Por cierto ¿alguien ha estudiado algo de informática através de la UNED? ¿Que me puede contar de su experiencia? Un saludo! _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From cgalisteo en k-rolus.net Thu Jul 3 22:45:28 2008 From: cgalisteo en k-rolus.net (Carlos) Date: Thu, 3 Jul 2008 22:45:28 +0200 Subject: Comparar archivos (y si son mp3 mejor) XD In-Reply-To: <13a83ada0807031337p671da981kb7bda7a5516e0ea3@mail.gmail.com> References: <13a83ada0807031337p671da981kb7bda7a5516e0ea3@mail.gmail.com> Message-ID: 2008/7/3 Antonio Gómez : > La cosa más o menos me cuadra juntando un poco de cada una de las opciones. > ¿se os ocurre algún parámetro más a comparar? La opción definitiva sería calcular el hash md5. Ese valor es exactamente el mismo siempre que los ficheros sean idénticos (sea cual sea el tipo de archivos). Puedes echarle un ojo en [1]. Y si te surge alguna duda al implementarlo vuelve a preguntar. > (y creo que eso es así, a capricho del que 'comprime' el archivito) Si, depende del humor del uqe editara los tags originalmente, ese dato no es demasiado fiable. [1]http://www.python.org/doc/current/lib/module-md5.html -- --- Carlos Galisteo http://blog.k-rolus.net 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 urizev en gmail.com Fri Jul 4 00:43:32 2008 From: urizev en gmail.com (Urizev) Date: Fri, 4 Jul 2008 00:43:32 +0200 Subject: =?iso-8859-1?q?Problemas_con_implementaci=F3n_del_si?= =?iso-8859-1?q?ngleton?= Message-ID: Hola a todos, Tengo una implementación del patrón singleton, pero por alguna extraña razón no siempre se comporta asi. Adjunto los dos ficheros con el código. La salida que obtengo es la siguiente Executing main new MySet object No singleton instance New singleton: <__main__.Singleton instance at 0x2b98be474a70> new MySet object There is a singlenton instance new Member new MySet object No singleton instance New singleton: new Member new MySet object There is a singlenton instance new Member new MySet object There is a singlenton instance En el programa se crean dos instancias del singleton. ¿Alguién sabe porqué? -- Saludos Juan Carlos "¡¡Viva lo rancio!!" _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From urizev en gmail.com Fri Jul 4 00:52:41 2008 From: urizev en gmail.com (Urizev) Date: Fri, 4 Jul 2008 00:52:41 +0200 Subject: =?iso-8859-1?q?Re=3A_Problemas_con_implementaci=F3n_?= =?iso-8859-1?q?del_singleton?= In-Reply-To: References: Message-ID: Olvide el código 2008/7/4 Urizev : > Hola a todos, > > Tengo una implementación del patrón singleton, pero por alguna extraña > razón no siempre se comporta asi. Adjunto los dos ficheros con el > código. > > La salida que obtengo es la siguiente > > Executing main > new MySet object > No singleton instance > New singleton: > <__main__.Singleton instance at 0x2b98be474a70> > new MySet object > There is a singlenton instance > new Member > new MySet object > No singleton instance > New singleton: > > new Member > new MySet object > There is a singlenton instance > new Member > new MySet object > There is a singlenton instance > > En el programa se crean dos instancias del singleton. ¿Alguién sabe porqué? > -- > Saludos > > Juan Carlos > > "¡¡Viva lo rancio!!" > -- Saludos Juan Carlos "¡¡Viva lo rancio!!" ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From denis en cfg.etecsa.cu Fri Jul 4 03:46:35 2008 From: denis en cfg.etecsa.cu (denis) Date: Thu, 03 Jul 2008 20:46:35 -0500 Subject: [Probablemente Spam] Sobre cherrypy In-Reply-To: <678173.97332.qm@web32007.mail.mud.yahoo.com> References: <678173.97332.qm@web32007.mail.mud.yahoo.com> Message-ID: <486D80FB.2090600@cfg.etecsa.cu> Colegas: 1- Alguien tiene otra documentación buena de Cherrypy que no sean el libro y el tutorial que está en su sitio oficial ? 2- Alguien tiene algún enlace a repositorio de tools del cherrypy ? Algún sitio interesante ? Saludos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From cloudneozero en gmail.com Fri Jul 4 03:59:14 2008 From: cloudneozero en gmail.com (Ark) Date: Thu, 3 Jul 2008 20:59:14 -0500 Subject: =?ISO-8859-1?Q?Re:__Re:_Problemas_c?= =?ISO-8859-1?Q?on_implementaci=F3n_del_singleton?= In-Reply-To: References: Message-ID: <9dd22c9c0807031859leffd0e0l6aebb665605c3c03@mail.gmail.com> Y el código?. mmm, pues tal vez tengo una idea de lo que puede ser. Alguna vez trabajando con el patrón singleton tuve un problema que creo que tiene que ver con este. No estoy seguro si este se el caso, pero hay que mirar la diferencia entre estas dos lineas, en una el módulo es __main__ y en la otra es myset. <__main__.Singleton instance at 0x2b98be474a70> A mi me pasó lo siguiente. Yo tenía la clase singleton en el archivo principal (el __main__) que era un archivo principal.py. Si dentro de este instancio el singleton, obtendré una clase cuyo módulo es __main__. Si en este mismo archivo importo otro archivo (otro.py) que a su vez importa el archivo principal (principal.py) donde esta el singleton, e instancio el singleton nuevamente se instanciará principal.singleton y no __main__.singleton. Al parecer python se comportaba de una forma que yo desconocía. Si uno importa un módulo desde varios archivos, se obtiene la misma referencia desde todos, pero eso no es lo que pasa con el script principal. El que se ejecuta se llama __main__ y si se importa desde otro, no será el mismo __main__, sino que será uno con el nombre del archivo. Sin el código, pues no puedo saber si es el mismo problema, pero a juzgar por la salida pareciera que si. Para solucionar eso, lo que hice fue sacar la clase singleton del script principal y desde este lo importo, y desde el otro módulo también, de esa forma obtengo una referencia a la misma clase en el mismo módulo siempre. Ark _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From kronoss en kronoss.org Fri Jul 4 09:19:14 2008 From: kronoss en kronoss.org (Jaime Soriano Pastor) Date: Fri, 4 Jul 2008 09:19:14 +0200 Subject: Comparar archivos (y si son mp3 mejor) XD In-Reply-To: <13a83ada0807031337p671da981kb7bda7a5516e0ea3@mail.gmail.com> References: <13a83ada0807031337p671da981kb7bda7a5516e0ea3@mail.gmail.com> Message-ID: <9f5676eb0807040019h357c79c0kb7619a35369cfd30@mail.gmail.com> Hola, El día 3 de julio de 2008 22:37, Antonio Gómez escribió: > La cosa más o menos me cuadra juntando un poco de cada una de las opciones. > ¿se os ocurre algún parámetro más a comparar? > > Se me ocurrió concretar este programilla para un solo tipo de archivos, p. > ej. .mp3, y a la hora de meter mano a un mp3, pues me he encontrado algo des > orientado. > ¿como posdría comparar las tags? Cada mp3 parece de su padre y de su madre > (y creo que eso es así, a capricho del que 'comprime' el archivito) > Si lo quieres hacer comparando cadenas de texto, como el nombre de fichero o los tags del mp3, te recomiendo que uses algo basado en los algoritmos de distancia de Levenshtein [0], que da una puntuación a lo parecidas o diferentes que son dos cadenas, para la extracción de tags tienes varias librerías en python, como python-mutagen o eyeD3 Y ya si quieres tener en cuenta los archivos mal nombrados o mal etiquetados, échale un ojo a libtunepimp [1], es una librería que extrae una firma de un archivo de música por como suena (no depende por tanto de la compresión) y lo etiqueta automáticamente con la información de MusicBrainz. Tiene bindings para python. Un saludo. [0] - Distancia de Levensthein - http://es.wikipedia.org/wiki/Distancia_de_Levenshtein#Python [1] - libtuneimp - http://musicbrainz.org/doc/libtunepimp _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From the.blue.valkyrie en gmail.com Fri Jul 4 12:41:05 2008 From: the.blue.valkyrie en gmail.com (=?ISO-8859-1?Q?Cristina_Yenyxe_Gonz=E1lez_Garc=EDa?=) Date: Fri, 4 Jul 2008 12:41:05 +0200 Subject: =?ISO-8859-1?Q?Re:__Re:_Problemas_c?= =?ISO-8859-1?Q?on_implementaci=F3n_del_singleton?= In-Reply-To: <9dd22c9c0807031859leffd0e0l6aebb665605c3c03@mail.gmail.com> References: <9dd22c9c0807031859leffd0e0l6aebb665605c3c03@mail.gmail.com> Message-ID: Realmente, en Python tienes una forma muy cómoda de implementar el patrón Singleton, y es con módulos en lugar de clases. Como de un módulo no va a haber instancias duplicadas, no tienes que andar preocupándote de que se copie (y creo que el problema que comenta Ark también se solucionaría). Un saludo. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From florencio.cano en gmail.com Fri Jul 4 13:32:49 2008 From: florencio.cano en gmail.com (Florencio Cano) Date: Fri, 4 Jul 2008 13:32:49 +0200 Subject: Concatenar archivos de texto In-Reply-To: <486B82FD.9070100@diselpro.com> References: <237131.60429.qm@web51606.mail.re2.yahoo.com> <4869E53A.7010909@diselpro.com> <486A6808.6070601@gmail.com> <486B82FD.9070100@diselpro.com> Message-ID: Otra manera... f1 = open(file1, 'r') f2 = open(file2, 'r') print ''.join(f1.readlines()+f2.readlines()) ------------ 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 Fri Jul 4 16:06:40 2008 From: inf200468 en ucf.edu.cu (inf200468 en ucf.edu.cu) Date: Fri, 4 Jul 2008 10:06:40 -0400 (EDT) Subject: clase conexion Message-ID: <44285.10.14.17.145.1215180400.squirrel@correo> Hola estoy tratando de hacer una clase que se conecte a una bd en postgre, en el __init__ de mi clase, inicialice self.host self.user....etc, cada uno con valores y luego escribi una funcion def conex():      conn = psycopg2.connect("dbname=self.dbname user=self.user host=self.host    password=self.password"); pero no se conecta de esta forma, y si le pongo los valores directos dentro de connect si se conecta, como puedo arreglarlo. 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 jgomezdans en gmail.com Fri Jul 4 16:14:19 2008 From: jgomezdans en gmail.com (Jose Gomez-Dans) Date: Fri, 4 Jul 2008 15:14:19 +0100 Subject: Hosting para Django In-Reply-To: References: Message-ID: <91d218430807040714h58b753aes53d755f073fef40f@mail.gmail.com> Hola, 2008/7/3 pepitovadecurt : > Alguien sabe de un hosting gratuito para hacer pruebas de Django? > A lo mejor te sirve Google App Engine, que permite ejecutar Django: < http://code.google.com/appengine/articles/django.html> -- 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 fabiognome en gmail.com Fri Jul 4 16:27:34 2008 From: fabiognome en gmail.com (Fabio Duran Verdugo) Date: Fri, 04 Jul 2008 10:27:34 -0400 Subject: clase conexion In-Reply-To: <44285.10.14.17.145.1215180400.squirrel@correo> References: <44285.10.14.17.145.1215180400.squirrel@correo> Message-ID: <1215181654.12399.5.camel@localhost> no te vas a conectar nunca debido a que el connect recibe una cadena de caracteres y estas pasando a self.dbname, self.user, self.password y self.host como texto y no como variable. o sea la cadena que tu le estas entregando a connect es "dbname=self.dbname user=self.user host=self.host password=self.password", hazle un print a eso y te daras cuenta. para poder hacer eso debiese ser lo qur tu deseas seria algo como esto. ?psycopg2.connect("dbname=%s user=%s host=%s password=%s"? %(self.dbname, self.user, self.host, self.password)); prueba y suerte. El vie, 04-07-2008 a las 10:06 -0400, inf200468 en ucf.edu.cu escribió: > > Hola > estoy tratando de hacer una clase que se conecte a una bd en postgre, en el > __init__ de mi clase, inicialice > self.host > self.user....etc, cada uno con > valores y luego escribi una funcion > def conex(): > conn > = psycopg2.connect("dbname=self.dbname user=self.user > host=self.host password=self.password"); > pero no se conecta > de esta forma, y si le pongo los valores directos dentro de connect si se conecta, como > puedo arreglarlo. > 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 alexis.roda.villalonga en gmail.com Fri Jul 4 16:32:38 2008 From: alexis.roda.villalonga en gmail.com (Alexis Roda) Date: Fri, 04 Jul 2008 16:32:38 +0200 Subject: clase conexion In-Reply-To: <44285.10.14.17.145.1215180400.squirrel@correo> References: <44285.10.14.17.145.1215180400.squirrel@correo> Message-ID: <486E3486.4010604@gmail.com> En/na inf200468 en ucf.edu.cu ha escrit: > > Hola > estoy tratando de hacer una clase que se conecte a una bd en postgre, en el > __init__ de mi clase, inicialice > self.host > self.user....etc, cada uno con > valores y luego escribi una funcion > def conex(): > conn > = psycopg2.connect("dbname=self.dbname user=self.user > host=self.host password=self.password"); Tu ejemplo es parecido a: variable="mundo" print "hola variable" lógicamente imprime "hola variable". Si quieres que imprima "hola mundo" tienes varias opciones: print "hola", variable print "hola " + variable print "hola %s" % variable En tu caso particular la primera opción no sirve. Saludos ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From luis en luismedel.com Fri Jul 4 16:35:23 2008 From: luis en luismedel.com (=?ISO-8859-1?Q?Luis_Medel_C=E1ceres?=) Date: Fri, 4 Jul 2008 16:35:23 +0200 Subject: clase conexion In-Reply-To: <44285.10.14.17.145.1215180400.squirrel@correo> References: <44285.10.14.17.145.1215180400.squirrel@correo> Message-ID: On Fri, Jul 4, 2008 at 4:06 PM, wrote: > > > Hola > estoy tratando de hacer una clase que se conecte a una bd en postgre, en el > __init__ de mi clase, inicialice > self.host > self.user....etc, cada uno con > valores y luego escribi una funcion > def conex(): > ??? conn > = psycopg2.connect("dbname=self.dbname user=self.user > host=self.host?? password=self.password"); > pero no se conecta > de esta forma, y si le pongo los valores directos dentro de connect si se conecta, como > puedo arreglarlo. > 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 > Por algún motivo no veo bien el texto del correo pero creo que hay dos cosas... 1. Has entrecomillado los parámetros en la llamada a connect () y no estás pasando los valores de las variables, sino sus nombres. Nunca he usado psycopg2 pero, ¿puede ser así?: psycopg2.connect(dbname=self.dbname, user=self.user, host=self.host, password=self.password") En el caso de ser correcto lo que pones, yo interpolaría los valores psycopg2.connect("dbname=%s, user=%s, host=%s, password=%s" % (self.dbname, self.user, self.host, self.password)) ...y 2. La llamada a connect () termina en ";". ¿No te da ningún error de sintaxis? Un saludo. -- Luis Medel http://luismedel.com ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From luis en luismedel.com Fri Jul 4 16:37:46 2008 From: luis en luismedel.com (=?ISO-8859-1?Q?Luis_Medel_C=E1ceres?=) Date: Fri, 4 Jul 2008 16:37:46 +0200 Subject: clase conexion In-Reply-To: References: <44285.10.14.17.145.1215180400.squirrel@correo> Message-ID: 2008/7/4 Luis Medel Cáceres : > On Fri, Jul 4, 2008 at 4:06 PM, wrote: >> >> >> Hola >> estoy tratando de hacer una clase que se conecte a una bd en postgre, en el >> __init__ de mi clase, inicialice >> self.host >> self.user....etc, cada uno con >> valores y luego escribi una funcion >> def conex(): >> ??? conn >> = psycopg2.connect("dbname=self.dbname user=self.user >> host=self.host?? password=self.password"); >> pero no se conecta >> de esta forma, y si le pongo los valores directos dentro de connect si se conecta, como >> puedo arreglarlo. >> 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 >> > > Por algún motivo no veo bien el texto del correo pero creo que hay dos cosas... > > 1. Has entrecomillado los parámetros en la llamada a connect () y no > estás pasando los valores de las variables, sino sus nombres. Nunca he > usado psycopg2 pero, ¿puede ser así?: > > psycopg2.connect(dbname=self.dbname, user=self.user, host=self.host, > password=self.password") > > En el caso de ser correcto lo que pones, yo interpolaría los valores > > psycopg2.connect("dbname=%s, user=%s, host=%s, password=%s" % > (self.dbname, self.user, self.host, self.password)) > > ...y 2. La llamada a connect () termina en ";". ¿No te da ningún error > de sintaxis? > > Un saludo. > > -- > Luis Medel > http://luismedel.com > Ah! y me acabo de dar cuenta de que en la definición de la función no le has puesto la referencia. Probablemente *este* sea el error que te impide conectar :) def conex (self): [...] Un saludo -- Luis Medel http://luismedel.com ------------ 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 Fri Jul 4 17:07:03 2008 From: inf200468 en ucf.edu.cu (inf200468 en ucf.edu.cu) Date: Fri, 4 Jul 2008 11:07:03 -0400 (EDT) Subject: clase conexion In-Reply-To: <1215181654.12399.5.camel@localhost> References: <44285.10.14.17.145.1215180400.squirrel@correo> <1215181654.12399.5.camel@localhost> Message-ID: <46604.10.14.17.145.1215184023.squirrel@correo> verdad que ustedes son los mejores jajaja gracias > no te vas a conectar nunca debido a que el connect recibe una cadena de > caracteres y estas pasando a self.dbname, self.user, self.password y > self.host como texto y no como variable. o sea la cadena que tu le estas > entregando a connect es "dbname=self.dbname user=self.user > host=self.host password=self.password", hazle un print a eso y te daras > cuenta. > > para poder hacer eso debiese ser lo qur tu deseas seria algo como esto. > > psycopg2.connect("dbname=%s user=%s host=%s password=%s" > %(self.dbname, self.user, self.host, self.password)); > > prueba y suerte. > > El vie, 04-07-2008 a las 10:06 -0400, inf200468 en ucf.edu.cu escribió: >> >> Hola >> estoy tratando de hacer una clase que se conecte a una bd en postgre, en el >> __init__ de mi clase, inicialice >> self.host >> self.user....etc, cada uno con >> valores y luego escribi una funcion >> def conex(): >> conn >> = psycopg2.connect("dbname=self.dbname user=self.user >> host=self.host password=self.password"); >> pero no se conecta >> de esta forma, y si le pongo los valores directos dentro de connect si se conecta, >> como >> puedo arreglarlo. >> 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 -------------------------------- 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 chuelmo en montevideo.com.uy Fri Jul 4 17:07:41 2008 From: chuelmo en montevideo.com.uy (Christian Huelmo) Date: Fri, 04 Jul 2008 12:07:41 -0300 Subject: Concatenar archivos de texto In-Reply-To: <2c9fb0dd0807010418n204f6879n8a0d82badf1e5ca3@mail.gmail.com> References: <237131.60429.qm@web51606.mail.re2.yahoo.com> <2c9fb0dd0807010418n204f6879n8a0d82badf1e5ca3@mail.gmail.com> Message-ID: <486E3CBD.5000401@montevideo.com.uy> Chema Cortes escribió: > No entiendo bien si te parece mal la lectura línea por línea por algún > motivo, pero yo lo haría usando iteradores para así optimizar el uso > de la memoria: > > from itertools import chain > > file("resultado.txt","w").writelines(chain( > file("fichero1.txt"),file("fichero2.txt"),file("fichero3.txt") > )) > #!/bin/bash # Necesito concatenar todos los archivos de una carpeta # la cantidad y los nombres de los archivos varían archivos="cat " for i in *;do if [ $i != $0 ];then # para que no me agregue el propio script archivos=${archivos}" "$i fi done $archivos > marcas.txt No se nada de bash pero así lo tengo resuelto y me anda, usando python quiero resolver lo mismo en windows. Estoy mirando tu solución Chema y todavía no me doy idea como adaptarla. A ello voy... _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From cloudneozero en gmail.com Fri Jul 4 17:42:17 2008 From: cloudneozero en gmail.com (Ark) Date: Fri, 4 Jul 2008 10:42:17 -0500 Subject: =?ISO-8859-1?Q?Re:__Re:_Problemas_c?= =?ISO-8859-1?Q?on_implementaci=F3n_del_singleton?= In-Reply-To: References: <9dd22c9c0807031859leffd0e0l6aebb665605c3c03@mail.gmail.com> Message-ID: <9dd22c9c0807040842m609421ccvc84db35a9c50e6c9@mail.gmail.com> mmm, implementarlo como módulo es interesante, y es una alternativa para usar el patrón singleton. El problema que yo mencioné antes sucede porque al importar el script principal de otro módulo, se duplica el módulo. Uno llamado __main__ y el otro con el nombre normal que debería tener. 2008/7/4 Cristina Yenyxe González García : > Realmente, en Python tienes una forma muy cómoda de implementar el > patrón Singleton, y es con módulos en lugar de clases. Como de un > módulo no va a haber instancias duplicadas, no tienes que andar > preocupándote de que se copie (y creo que el problema que comenta Ark > también se solucionaría). > > Un saludo. > Ark _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From mlacunza en gmail.com Fri Jul 4 17:59:50 2008 From: mlacunza en gmail.com (Mario Lacunza) Date: Fri, 4 Jul 2008 10:59:50 -0500 Subject: PyTables Message-ID: <771741b20807040859n25fc67b3t28a7472a4f324d6e@mail.gmail.com> Holas, Alguien a usado esta libreria? [1] q tan rapida es? q volumen de datos puede manejar?? [1] http://www.pytables.org/moin -- Saludos / Best regards Mario Lacunza Consultor de Sistemas - Webmaster Email: mlacunza [AT] gmail [DOT] com Lima - Peru _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From minoztro en gmail.com Fri Jul 4 18:00:46 2008 From: minoztro en gmail.com (Milton Galo Patricio Inostroza Aguilera) Date: Fri, 4 Jul 2008 12:00:46 -0400 Subject: =?UTF-8?Q?Re:__Re:_Problemas_c?= =?UTF-8?Q?on_implementaci=C3=B3n_del_singleton?= In-Reply-To: <9dd22c9c0807040842m609421ccvc84db35a9c50e6c9@mail.gmail.com> References: <9dd22c9c0807031859leffd0e0l6aebb665605c3c03@mail.gmail.com> <9dd22c9c0807040842m609421ccvc84db35a9c50e6c9@mail.gmail.com> Message-ID: <172699c50807040900l3772702bjc5fcda8b755b41f9@mail.gmail.com> El día 4 de julio de 2008 11:42, Ark escribió: > mmm, implementarlo como módulo es interesante, y es una alternativa para > usar el patrón singleton. Mira esta web [1] y busca por patrón singleton [1] http://crysol.org/node/600 -- Milton Inostroza Aguilera ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From chuelmo en montevideo.com.uy Fri Jul 4 18:06:55 2008 From: chuelmo en montevideo.com.uy (Christian Huelmo) Date: Fri, 04 Jul 2008 13:06:55 -0300 Subject: Concatenar archivos de texto In-Reply-To: <486E3CBD.5000401@montevideo.com.uy> References: <237131.60429.qm@web51606.mail.re2.yahoo.com> <2c9fb0dd0807010418n204f6879n8a0d82badf1e5ca3@mail.gmail.com> <486E3CBD.5000401@montevideo.com.uy> Message-ID: <486E4A9F.3030801@montevideo.com.uy> > # Necesito concatenar todos los archivos de una carpeta > # la cantidad y los nombres de los archivos varían Ups, recién veo que Arnau ya había escrito la solución. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From julio.penarroche en etecsa.cu Fri Jul 4 20:49:40 2008 From: julio.penarroche en etecsa.cu (=?ISO-8859-1?Q?=22Ms=2EC=2E_Julio_Oscar_Pe=F1arroche_G=F3me?= =?ISO-8859-1?Q?z=22?=) Date: Fri, 04 Jul 2008 14:49:40 -0400 Subject: [Probablemente Spam] Sobre timer Message-ID: <486E70C4.7030301@etecsa.cu> Me estoy iniciando en python y necesito saber como programar un timer que me ejecute cada cierto tiempo un código determinado, he buscado en Internet y los ejemplos que he encontrado son con hilos que algunos me han funcionado, pero cuando pongo a correr mi código explota. Gracias _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pyarnau en gmail.com Fri Jul 4 21:17:36 2008 From: pyarnau en gmail.com (Arnau Sanchez) Date: Fri, 04 Jul 2008 21:17:36 +0200 Subject: Concatenar archivos de texto In-Reply-To: <486E3CBD.5000401@montevideo.com.uy> References: <237131.60429.qm@web51606.mail.re2.yahoo.com> <2c9fb0dd0807010418n204f6879n8a0d82badf1e5ca3@mail.gmail.com> <486E3CBD.5000401@montevideo.com.uy> Message-ID: <486E7750.6000008@gmail.com> Christian Huelmo escribió: > # Necesito concatenar todos los archivos de una carpeta > # la cantidad y los nombres de los archivos varían > > archivos="cat " > for i in *;do > if [ $i != $0 ];then # para que no me agregue el propio script > archivos=${archivos}" "$i > fi > done > $archivos > marcas.txt No es la forma más adecuada: el asterisco no te dará sólo los ficheros del directorio sino también los que están en directorios que cuelgan de él. Yo intentaría (no probado): find -maxdepth 1 -type f \! -name "$0" | xargs cat > marcas.txt Por otra parte, parece lógico que tanto el script como el fichero de salida estén fuera del directorio en cuestión. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From rolandojtorres en gmail.com Sat Jul 5 06:54:48 2008 From: rolandojtorres en gmail.com (=?UTF-8?Q?Rolando_Jos=C3=A9_Torres_S=C3=A1nchez?=) Date: Fri, 4 Jul 2008 23:54:48 -0500 Subject: PyTables In-Reply-To: <771741b20807040859n25fc67b3t28a7472a4f324d6e@mail.gmail.com> References: <771741b20807040859n25fc67b3t28a7472a4f324d6e@mail.gmail.com> Message-ID: <6a39a1d0807042154x2dbacc2t7dddb1473b06839f@mail.gmail.com> Es muy impresionante esta libreria, voy a implementarla y si puedo la comparo con mysql Sin embargo encontre este PDF que habla muy bien de pytables. Yo creo que ya lo has leido, pero sino, te doy el link para que lo revises. http://www.pytables.org/docs/EuroPython2003.pdf El día 4/07/08, Mario Lacunza escribió: > > Holas, > > Alguien a usado esta libreria? [1] q tan rapida es? q volumen de datos > puede > manejar?? > > > > [1] http://www.pytables.org/moin > > -- > Saludos / Best regards > > Mario Lacunza > Consultor de Sistemas - Webmaster > > Email: mlacunza [AT] gmail [DOT] com > Lima - Peru > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- Rolando José Torres Sánchez TCL/TK inside Python MSN:rolandojtorres en hotmail.com ------------ 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 Sat Jul 5 13:43:00 2008 From: jordi.f en ati.es (Jordi Funollet) Date: Sat, 5 Jul 2008 13:43:00 +0200 Subject: PyTables In-Reply-To: <771741b20807040859n25fc67b3t28a7472a4f324d6e@mail.gmail.com> References: <771741b20807040859n25fc67b3t28a7472a4f324d6e@mail.gmail.com> Message-ID: <200807051343.01333.jordi.f@ati.es> Mario Lacunza dixit: > Holas, > > Alguien a usado esta libreria? [1] q tan rapida es? q volumen de datos > puede manejar?? > > > > [1] http://www.pytables.org/moin "Alguien" de la lista python-es está haciendo algo más que usar la libreria. ;-) "PyTables is developed, maintained and supported by Francesc Altet, [...]" -- ############################## ### 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 diegososam en gmail.com Sat Jul 5 18:37:03 2008 From: diegososam en gmail.com (Diego Sosa) Date: Sat, 05 Jul 2008 14:37:03 -0200 Subject: Obtener el fullpath de programas en Windows,Mac In-Reply-To: <486C9099.8060703@gmail.com> References: <486C9099.8060703@gmail.com> Message-ID: En Thu, 03 Jul 2008 06:40:57 -0200, Iván García escribió: > Mi aplicación está hecha usando pyqt y quiero averiguar si el cliente > tiene instalado el reproductor VLC > > de momento para linux es muy facil. > > if platform.system() == "Linux": > status, path = commands.getstatusoutput("which vlc") > > En windows, cómo puedo averiguar el path para el vlc.exe ? Debo usar el > Registro de windows para ello? Y en Mac ? Yo probaría primero que nada con el directorio estándart de instalación del vlc. Si no encontrás ahí, probar con el registro de Windows. Tengo entendido que existen librerías para acceder a él... -- Saludos, Diego Sosa Montevideo, Uruguay Usando el revolucionario cliente de correo de Opera aka M2 ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From diegososam en gmail.com Sat Jul 5 18:39:19 2008 From: diegososam en gmail.com (Diego Sosa) Date: Sat, 05 Jul 2008 14:39:19 -0200 Subject: [Probablemente Spam] Sobre timer In-Reply-To: <486E70C4.7030301@etecsa.cu> References: <486E70C4.7030301@etecsa.cu> Message-ID: En Fri, 04 Jul 2008 16:49:40 -0200, Ms.C. Julio Oscar Peñarroche Gómez escribió: > Me estoy iniciando en python y necesito saber como programar un timer > que me ejecute cada cierto tiempo un código determinado, he buscado en > Internet y los ejemplos que he encontrado son con hilos que algunos me > han funcionado, pero cuando pongo a correr mi código explota. Los hilos no funcionan al ejecutar desde el IDLE... quizás sea eso lo que te pasó. http://wiki.python.org/moin/ThreadProgramming http://www.devshed.com/c/a/Python/Basic-Threading-in-Python/ -- Saludos, Diego Sosa Montevideo, Uruguay Usando el revolucionario cliente de correo de Opera aka M2 ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From capiscuas en gmail.com Sat Jul 5 20:08:24 2008 From: capiscuas en gmail.com (=?ISO-8859-15?Q?Iv=E1n_Garc=EDa?=) Date: Sun, 06 Jul 2008 02:08:24 +0800 Subject: Obtener el fullpath de programas en Windows,Mac In-Reply-To: References: <486C9099.8060703@gmail.com> Message-ID: <486FB898.8080507@gmail.com> Tenia pensado usar la libreria de QT para acceder al registro, porque es la mejor manera de saber donde se instaló el programa realmente. Si no, veo deficil como podria detectar el directorio C:\Program Files\ o C:\Archivos de Programa sin buscar en el registro. Gracias. Diego Sosa wrote: > En Thu, 03 Jul 2008 06:40:57 -0200, Iván García > escribió: > >> Mi aplicación está hecha usando pyqt y quiero averiguar si el cliente >> tiene instalado el reproductor VLC >> >> de momento para linux es muy facil. >> >> if platform.system() == "Linux": >> status, path = commands.getstatusoutput("which vlc") >> >> En windows, cómo puedo averiguar el path para el vlc.exe ? Debo usar >> el Registro de windows para ello? Y en Mac ? > > Yo probaría primero que nada con el directorio estándart de > instalación del vlc. Si no encontrás ahí, probar con el registro de > Windows. Tengo entendido que existen librerías para acceder a él... > > > ------------------------------------------------------------------------ > > _______________________________________________ > 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 lighther en gmail.com Sat Jul 5 21:55:31 2008 From: lighther en gmail.com (Juan Pablo Isler) Date: Sat, 5 Jul 2008 15:55:31 -0400 Subject: Como abrir puerto USB Message-ID: <93e969700807051255k7d231839w504c93a49de75b53@mail.gmail.com> Hola, resulta que tengo un GPS y encontré código para obtener las coordenadas y todo el asunto, el problema es que el código abre el puerto serial, pero no tengo tal puerto y debo obtener un adaptador USB-Serial, en tal caso debería abrir un puerto USB. Agradeceríacualquier ayuda :) _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From p0stm4n en gmail.com Sat Jul 5 23:12:56 2008 From: p0stm4n en gmail.com (Facon) Date: Sat, 5 Jul 2008 23:12:56 +0200 Subject: Dudas sobre manejo de archivos Message-ID: <1d15aa970807051412i29a71044g7dcf5b1394d12c93@mail.gmail.com> ¡Hola Comunidad!, soy nuevo aquí desde hace poco, y desde entonces he leído algunos digest, que se crean para los usuarios como resumen, algunos de los cuales me han resultado verdaderamente útiles para lo que estoy intentando desarrollar. De momento se poco de Python, pero poco a poco voy aprendiendo cositas, y si necesito algo suelo mirar la documentación o googlear, para encontrar una respuesta, sin embargo en esta ocasión estoy estantacado porque no se por donde tirar, estoy desarrollando un Cortador de Archivos que permita dividir un Archivo en varios trozos de tantos MBs, de forma que si por ejemplo tengo un archivo llamado "prueba.zip" de 3MB, el programa me crea: "prueba.zip.0", "prueba.zip.1" y "prueba.zip.2" de 1MB cada uno, hasta hay bien porque lo he conseguido, puedo trocear archivos de más de 6.69 GB (Es con el último archivo que probe). Mi problema consiste en que ha pesar de que puede con casi cualquier archivo en cuanto a tamaño se refiere, el problema es el tamaño de los trozos, que ha partir de 500 MB me da el error "Memory Error", debido a que es demasiado extenso los datos que añado al string, asi que decidi hacerlo por arrays (y me funciona), pero el problema es que para el último archivo con el seek(), tengo el problema de que cuando escribe en el último archivo, que me pone repetido. Funciona: $ python cortador.py archivo_origen tamaño destino El tamaño es en bytes. El código: cortador.py: # -*- coding: cp1252 -*- # Cortador by Facon # Gracias a Google y Documentación de Python # Agradecimientos a http://www.elhacker.net, en especial a Novlucker import string import os import sys ruta = sys.argv[1] # Archivo a dividir nombre_archivo = os.path.basename(ruta) # Obtener nombre real del archivo tamano_trozo = sys.argv[2] # Tamaño de los trozos (Bytes xDDDD) destino = sys.argv[3] # Destino de los Trozos destino2 = destino tamano_trozo = int(tamano_trozo) # Pasamos argumento de String a Integer tamano = os.path.getsize(ruta) # Tamaño del Archivo (Bytes) print "\nTamaño: " + repr(tamano) + " Bytes\n\nParticionando Archivo, por favor espere..." # Imprimir Tamaño del Archivo (Bytes) datos = ['', '', ''] # Datos del buffer posicion = 0 # Para posicionarse en los datos a leer i = 0 # Para Hacer .0, .1, .2, .3, .4, etc... f = open (ruta, 'rb') # Abrimos archivo while posicion <= tamano: # Creamos bucle que diga que si posicion menor o igual que tamaño hago lo que esta a continuación destino = destino + nombre_archivo + "." + repr(i) # Crear nombre del archivo prueba.jpg.0, prueba.jpg.1, prueba.jpg.* print "Creado: " + destino j = open (destino, 'ab') # Creamos el archivo prueba.jpg.* datos = ['', '', ''] if tamano_trozo >= 419430400: if i == 0: datos[0] = f.read(tamano_trozo/3) # Datos toma lo leido del buffer f.seek(tamano_trozo/3) datos[1] = f.read (tamano_trozo/3) # Datos toma lo leido del buffer f.seek(tamano_trozo/3) datos[2] = f.read (tamano_trozo/3) # Datos toma lo leido del buffer f.seek(tamano_trozo/3) j.write(datos[0]) # Escribimos en el archivo. j.write(datos[1]) j.write(datos[2]) j.close() # Cerramos archivo posicion = tamano_trozo # Metemos la posición siguiente en la integer i = i + 1 # Sumamos 1 a la variable integer else: f.seek (posicion) # Función que va al byte con el valor de posición datos[0] = f.read(tamano_trozo/3) # Poner datos (X bytes de info.) en la variable desde esa posición f.seek(tamano_trozo/3) az = f.seek(tamano_trozo/3) datos[1] = f.read(tamano_trozo/3) f.seek(tamano_trozo/3) ad = f.seek(tamano_trozo/3) datos[2] = f.read(tamano_trozo/3) f.seek(tamano_trozo/3) if az == tamano or ad == tamano: datos[1] = '' datos[2] = '' j.write(datos[0]) # Escribimos en archivo j.write(datos[1]) j.write(datos[2]) posicion = posicion + tamano_trozo # Vamos una posicion más avanzada j.close() # Cerramos archivo i = i + 1 # Sumamos 1 a la variable integer else: if i == 0: datos[0] = f.read(tamano_trozo) # Datos toma lo leido del buffer j.write(datos[0]) # Escribimos en el archivo. j.close() # Cerramos archivo posicion = tamano_trozo # Metemos la posición siguiente en la integer i = i + 1 # Sumamos 1 a la variable integer else: f.seek (posicion) # Función que va al byte con el valor de posición datos[0] = f.read(tamano_trozo) # Poner datos (X bytes de info.) en la variable desde esa posición j.write(datos[0]) # Escribimos en archivo posicion = posicion + tamano_trozo # Vamos una posicion más avanzada j.close() # Cerramos archivo i = i + 1 # Sumamos 1 a la variable integer destino = destino2 f.close() # Cerramos archivo principal x = open (destino2 + nombre_archivo + ".bat", 'w') # A partir de aquí creamos el .bat para pegar archivos x.write('copy /b "'+ nombre_archivo + '.0" "' + nombre_archivo + '"\n') z = 1 while z References: <9dd22c9c0807031859leffd0e0l6aebb665605c3c03@mail.gmail.com> <9dd22c9c0807040842m609421ccvc84db35a9c50e6c9@mail.gmail.com> <172699c50807040900l3772702bjc5fcda8b755b41f9@mail.gmail.com> Message-ID: Muchas gracias a todos por la cantidad de información. Me habéis resuelto muchas dudas. 2008/7/4 Milton Galo Patricio Inostroza Aguilera : > El día 4 de julio de 2008 11:42, Ark escribió: >> mmm, implementarlo como módulo es interesante, y es una alternativa para >> usar el patrón singleton. > > Mira esta web [1] y busca por patrón singleton > > [1] http://crysol.org/node/600 > -- > Milton Inostroza Aguilera > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- Saludos Juan Carlos "¡¡Viva lo rancio!!" _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From p0stm4n en gmail.com Sun Jul 6 01:57:37 2008 From: p0stm4n en gmail.com (Facon) Date: Sun, 6 Jul 2008 01:57:37 +0200 Subject: Dudas sobre manejo de archivos In-Reply-To: <1d15aa970807051412i29a71044g7dcf5b1394d12c93@mail.gmail.com> References: <1d15aa970807051412i29a71044g7dcf5b1394d12c93@mail.gmail.com> Message-ID: <1d15aa970807051657v2c0bf10alb288682ca5fd204a@mail.gmail.com> Sorry, ya me lo solucionaron con un pequeño script que simplifica y optimiza bastante mi código, además ahora pueden trocear con cualquier tamaño: # -*- coding: cp1252 -*- # Cortador by Shrick # Gracias a Google y Documentación de Python # Agradecimientos a http://www.elhacker.net, en especial a Novlucker import string import os import sys ruta = sys.argv[1] # Archivo a dividir nombre_archivo = os.path.basename(ruta) # Obtener nombre real del archivo tamano_trozo = sys.argv[2] # Tamaño de los trozos (Bytes xDDDD) destino = sys.argv[3] # Destino de los Trozos destino2 = destino tamano_trozo = int(tamano_trozo) # Pasamos argumento de String a Integer tamano = os.path.getsize(ruta) # Tamaño del Archivo (Bytes) print "\nTamaño: " + repr(tamano) + " Bytes\n\nParticionando Archivo, por favor espere..." # Imprimir Tamaño del Archivo (Bytes) datos = '' # Datos del buffer posicion = 0 # Para posicionarse en los datos a leer i = 0 # Para Hacer .0, .1, .2, .3, .4, etc... wrote = 0 trozo = 0 megabyte = 1048576 f = open (ruta, 'rb') # Abrimos archivo while wrote < tamano: # Creamos bucle que diga que si posicion menor o igual que tamaño hago lo que esta a continuación destino = destino + nombre_archivo + "." + repr(i) # Crear nombre del archivo prueba.jpg.0, prueba.jpg.1, prueba.jpg.* print "Creado: " + destino trozo = 0 j = open (destino, 'ab') # Creamos el archivo prueba.jpg.* while trozo escribió: > ¡Hola Comunidad!, soy nuevo aquí desde hace poco, y desde entonces he > leído algunos digest, que se crean para los usuarios como resumen, > algunos de los cuales me han resultado verdaderamente útiles para lo > que estoy intentando desarrollar. > > De momento se poco de Python, pero poco a poco voy aprendiendo > cositas, y si necesito algo suelo mirar la documentación o googlear, > para encontrar una respuesta, sin embargo en esta ocasión estoy > estantacado porque no se por donde tirar, estoy desarrollando un > Cortador de Archivos que permita dividir un Archivo en varios trozos > de tantos MBs, de forma que si por ejemplo tengo un archivo llamado > "prueba.zip" de 3MB, el programa me crea: "prueba.zip.0", > "prueba.zip.1" y "prueba.zip.2" de 1MB cada uno, hasta hay bien porque > lo he conseguido, puedo trocear archivos de más de 6.69 GB (Es con el > último archivo que probe). > > Mi problema consiste en que ha pesar de que puede con casi cualquier > archivo en cuanto a tamaño se refiere, el problema es el tamaño de los > trozos, que ha partir de 500 MB me da el error "Memory Error", debido > a que es demasiado extenso los datos que añado al string, asi que > decidi hacerlo por arrays (y me funciona), pero el problema es que > para el último archivo con el seek(), tengo el problema de que cuando > escribe en el último archivo, que me pone repetido. > > Funciona: > > $ python cortador.py archivo_origen tamaño destino > > El tamaño es en bytes. > > El código: > > cortador.py: > > # -*- coding: cp1252 -*- > # Cortador by Facon > # Gracias a Google y Documentación de Python > # Agradecimientos a http://www.elhacker.net, en especial a Novlucker > > import string > import os > import sys > > ruta = sys.argv[1] # Archivo a dividir > nombre_archivo = os.path.basename(ruta) # Obtener nombre real del archivo > tamano_trozo = sys.argv[2] # Tamaño de los trozos (Bytes xDDDD) > destino = sys.argv[3] # Destino de los Trozos > destino2 = destino > tamano_trozo = int(tamano_trozo) # Pasamos argumento de String a Integer > tamano = os.path.getsize(ruta) # Tamaño del Archivo (Bytes) > print "\nTamaño: " + repr(tamano) + " Bytes\n\nParticionando Archivo, > por favor espere..." # Imprimir Tamaño del Archivo (Bytes) > datos = ['', '', ''] # Datos del buffer > posicion = 0 # Para posicionarse en los datos a leer > i = 0 # Para Hacer .0, .1, .2, .3, .4, etc... > f = open (ruta, 'rb') # Abrimos archivo > while posicion <= tamano: # Creamos bucle que diga que si posicion > menor o igual que tamaño hago lo que esta a continuación > destino = destino + nombre_archivo + "." + repr(i) # Crear nombre > del archivo prueba.jpg.0, prueba.jpg.1, prueba.jpg.* > print "Creado: " + destino > j = open (destino, 'ab') # Creamos el archivo prueba.jpg.* > datos = ['', '', ''] > if tamano_trozo >= 419430400: > if i == 0: > datos[0] = f.read(tamano_trozo/3) # Datos toma lo leido del buffer > f.seek(tamano_trozo/3) > datos[1] = f.read (tamano_trozo/3) # Datos toma lo leido del buffer > f.seek(tamano_trozo/3) > datos[2] = f.read (tamano_trozo/3) # Datos toma lo leido del buffer > f.seek(tamano_trozo/3) > j.write(datos[0]) # Escribimos en el archivo. > j.write(datos[1]) > j.write(datos[2]) > j.close() # Cerramos archivo > posicion = tamano_trozo # Metemos la posición siguiente en > la integer > i = i + 1 # Sumamos 1 a la variable integer > else: > f.seek (posicion) # Función que va al byte con el valor de posición > datos[0] = f.read(tamano_trozo/3) # Poner datos (X bytes > de info.) en la variable desde esa posición > f.seek(tamano_trozo/3) > az = f.seek(tamano_trozo/3) > datos[1] = f.read(tamano_trozo/3) > f.seek(tamano_trozo/3) > ad = f.seek(tamano_trozo/3) > datos[2] = f.read(tamano_trozo/3) > f.seek(tamano_trozo/3) > if az == tamano or ad == tamano: > datos[1] = '' > datos[2] = '' > j.write(datos[0]) # Escribimos en archivo > j.write(datos[1]) > j.write(datos[2]) > posicion = posicion + tamano_trozo # Vamos una posicion más avanzada > j.close() # Cerramos archivo > i = i + 1 # Sumamos 1 a la variable integer > else: > if i == 0: > datos[0] = f.read(tamano_trozo) # Datos toma lo leido del buffer > j.write(datos[0]) # Escribimos en el archivo. > j.close() # Cerramos archivo > posicion = tamano_trozo # Metemos la posición siguiente en > la integer > i = i + 1 # Sumamos 1 a la variable integer > else: > f.seek (posicion) # Función que va al byte con el valor de posición > datos[0] = f.read(tamano_trozo) # Poner datos (X bytes de > info.) en la variable desde esa posición > j.write(datos[0]) # Escribimos en archivo > posicion = posicion + tamano_trozo # Vamos una posicion más avanzada > j.close() # Cerramos archivo > i = i + 1 # Sumamos 1 a la variable integer > destino = destino2 > f.close() # Cerramos archivo principal > > x = open (destino2 + nombre_archivo + ".bat", 'w') # A partir de aquí > creamos el .bat para pegar archivos > x.write('copy /b "'+ nombre_archivo + '.0" "' + nombre_archivo + '"\n') > z = 1 > while z x.write('copy /b "'+ nombre_archivo +'"+"'+ nombre_archivo +'.'+ > repr(z)+ '"\n') > z = z + 1 > x.close() > > # x = open ('pegador_linux', 'w') # Creamos el equivalente .bat para > Linux es decir para Bash > # x.write('#!/bin/bash\n') > > -- FIN CÓDIGO -- > > Pueden copiar como quiera, lo puse en > _http://code.google.com/p/pythonprogramas/ bajo GPL v3, para que hagan > lo que quieran con el código. > > Por favor ayudenme!. > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From qualopec en gmail.com Sun Jul 6 10:35:05 2008 From: qualopec en gmail.com (Javier Santana) Date: Sun, 6 Jul 2008 10:35:05 +0200 Subject: Como abrir puerto USB In-Reply-To: <93e969700807051255k7d231839w504c93a49de75b53@mail.gmail.com> References: <93e969700807051255k7d231839w504c93a49de75b53@mail.gmail.com> Message-ID: Lo normal es que los GPS tengan un interfaz serie ya que su protocolo (NMEA) está basado en el protocolo serie. Para conectarlos al PC por USB normalmente tienen interfaces USB-serie, ya sea interno (el propio GPS tiene el conversor) o externo (un cable aparte). En los dos casos, una vez instalas el driver del GPS, te aparece un nuevo puerto serie para comunicarte con el GPS. Así, basta con abrirlo y trabajar como si fuera un fichero más. Te hablo en windows, desconozco como funciona en linux, aunque me imagino que será muy similar Hace un tiempo escribí un tutorial que te puede ayudar: http://blep.blogspot.com/2008/05/manual-rpido-de-programacin-con-gps.html Un saludo On Sat, Jul 5, 2008 at 9:55 PM, Juan Pablo Isler wrote: > Hola, resulta que tengo un GPS y encontré código para obtener las > coordenadas y todo el asunto, el problema es que el código abre el puerto > serial, pero no tengo tal puerto y debo obtener un adaptador USB-Serial, en > tal caso debería abrir un puerto USB. Agradeceríacualquier 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 falted en pytables.org Sun Jul 6 12:29:41 2008 From: falted en pytables.org (Francesc Alted) Date: Sun, 6 Jul 2008 12:29:41 +0200 Subject: PyTables In-Reply-To: <200807051343.01333.jordi.f@ati.es> References: <771741b20807040859n25fc67b3t28a7472a4f324d6e@mail.gmail.com> <200807051343.01333.jordi.f@ati.es> Message-ID: <200807061229.41772.falted@pytables.org> A Saturday 05 July 2008, Jordi Funollet escrigué: > Mario Lacunza dixit: > > Holas, > > > > Alguien a usado esta libreria? [1] q tan rapida es? q volumen de > > datos puede manejar?? > > > > > > > > [1] http://www.pytables.org/moin > > "Alguien" de la lista python-es está haciendo algo más que usar la > libreria. ;-) > > "PyTables is developed, maintained and supported > by Francesc Altet, [...]" Pues si, me temo que ese soy yo ;-) Bueno, pues respecto a las preguntas originales, decir que PyTables intenta ser lo más rápido posible (vaya novedad!). Sin embargo, al revés que otras BBDD conocidas, PyTables hace ésto pensando en Python como lenguaje de uso principal (la mayoria están pensadas para ser rápidas en uso desde C). PyTables se basa en el formato/libreria HDF5 (hecha en C y pensada para gestión de catidades de datos extremadamente grandes) y NumPy, una libreria Python que pone a disposición del usuario unos contenedores de datos muy eficientes. Digamos que, en mi opinión, la 'virtud' de PyTables reside en conjuntar el rápido acceso a la información en disco de HDF5, con los contenedores de datos de NumPy para lograr velocidades de escritura y lectura muy altas, sobretodo cuando se manejan cantidades de datos muy grandes (típicamente, mayor que la cantidad de memoria principal del sistema). El hecho que se soporte la compresión de datos de forma nativa ayuda mucho a conseguir estas altas prestaciones (ya sabeis que la distancia entre el acceso a disco y la velocidad de la CPU, y con ello la velocidad de descompressión, está aumentando constantemente). Sin embargo, hay que decir que hay que pagar un precio por acceder a esta optimización en velocidad, y es que PyTables no trae de serie ninguna capacidad de corrección de errores, integridad referencial u otras características de seguridad típicas en BBDD relacionales (por cierto, PyTables tampoco es relacional). Aún así, hay un campo bastante grande de aplicabilidad para PyTables, sobretodo en aquellos entornos donde se tengan que tratar cantidades immensas de datos cuya fiabilidad no sea crítica (por ejemplo, no es apto para gestión de cuentas bancarias). Como ejemplo, PyTables es ideal para la gestión de logs, datos procedentes de satélite, de sensores empresariales, de entornos financieros, etc... Bueno, y voy a parar por que se nota demasiado que es mi 'criatura' ;-) Si alguien tiene preguntas adicionales las puede hacer en esta misma lista, pues la consulto con cierta frecuencia. Saludos, -- Francesc Alted _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From qualopec en gmail.com Sun Jul 6 12:54:38 2008 From: qualopec en gmail.com (Javier Santana) Date: Sun, 6 Jul 2008 12:54:38 +0200 Subject: PyTables In-Reply-To: <200807061229.41772.falted@pytables.org> References: <771741b20807040859n25fc67b3t28a7472a4f324d6e@mail.gmail.com> <200807051343.01333.jordi.f@ati.es> <200807061229.41772.falted@pytables.org> Message-ID: Por curiosidad, por qué surgió hacer el pytables y para qué lo estás usando? (me lo puedo imaginar viendo un poco tu bio) Un saludo 2008/7/6 Francesc Alted : > A Saturday 05 July 2008, Jordi Funollet escrigué: >> Mario Lacunza dixit: >> > Holas, >> > >> > Alguien a usado esta libreria? [1] q tan rapida es? q volumen de >> > datos puede manejar?? >> > >> > >> > >> > [1] http://www.pytables.org/moin >> >> "Alguien" de la lista python-es está haciendo algo más que usar la >> libreria. ;-) >> >> "PyTables is developed, maintained and supported >> by Francesc Altet, [...]" > > Pues si, me temo que ese soy yo ;-) > > Bueno, pues respecto a las preguntas originales, decir que PyTables > intenta ser lo más rápido posible (vaya novedad!). Sin embargo, al > revés que otras BBDD conocidas, PyTables hace ésto pensando en Python > como lenguaje de uso principal (la mayoria están pensadas para ser > rápidas en uso desde C). PyTables se basa en el formato/libreria HDF5 > (hecha en C y pensada para gestión de catidades de datos extremadamente > grandes) y NumPy, una libreria Python que pone a disposición del > usuario unos contenedores de datos muy eficientes. Digamos que, en mi > opinión, la 'virtud' de PyTables reside en conjuntar el rápido acceso a > la información en disco de HDF5, con los contenedores de datos de NumPy > para lograr velocidades de escritura y lectura muy altas, sobretodo > cuando se manejan cantidades de datos muy grandes (típicamente, mayor > que la cantidad de memoria principal del sistema). El hecho que se > soporte la compresión de datos de forma nativa ayuda mucho a conseguir > estas altas prestaciones (ya sabeis que la distancia entre el acceso a > disco y la velocidad de la CPU, y con ello la velocidad de > descompressión, está aumentando constantemente). > > Sin embargo, hay que decir que hay que pagar un precio por acceder a > esta optimización en velocidad, y es que PyTables no trae de serie > ninguna capacidad de corrección de errores, integridad referencial u > otras características de seguridad típicas en BBDD relacionales (por > cierto, PyTables tampoco es relacional). Aún así, hay un campo > bastante grande de aplicabilidad para PyTables, sobretodo en aquellos > entornos donde se tengan que tratar cantidades immensas de datos cuya > fiabilidad no sea crítica (por ejemplo, no es apto para gestión de > cuentas bancarias). Como ejemplo, PyTables es ideal para la gestión de > logs, datos procedentes de satélite, de sensores empresariales, de > entornos financieros, etc... > > Bueno, y voy a parar por que se nota demasiado que es mi 'criatura' ;-) > Si alguien tiene preguntas adicionales las puede hacer en esta misma > lista, pues la consulto con cierta frecuencia. > > Saludos, > > -- > Francesc Alted > _______________________________________________ > 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 falted en pytables.org Sun Jul 6 13:24:41 2008 From: falted en pytables.org (Francesc Alted) Date: Sun, 6 Jul 2008 13:24:41 +0200 Subject: PyTables In-Reply-To: References: <771741b20807040859n25fc67b3t28a7472a4f324d6e@mail.gmail.com> <200807061229.41772.falted@pytables.org> Message-ID: <200807061324.41628.falted@pytables.org> A Sunday 06 July 2008, Javier Santana escrigué: > Por curiosidad, por qué surgió hacer el pytables y para qué lo estás > usando? (me lo puedo imaginar viendo un poco tu bio) Bueno, respecto a la primera pregunta, es una FAQ: http://www.pytables.org/moin/FAQ#head-85edb6d0b422a451ded8e4cfacea3d08950b6c44 Respecto a la segunda, ahora mismo lo estoy usando para... bueno, para nada en especial. De hecho, estuvimos intentado durante unos años montar un negocio a su alrededor, pero sin éxito (www.carabos.com). Ahora tengo a PyTables como proyecto 'mascota': me gusta continuar desarrollándolo y manteniéndolo. Además, gracias a él de vez en cuando salen trabajitos (no es que pueda vivir de él, pero bueno, como me decia un amigo, la libertad tiene un precio ;). Un saludo, -- Francesc Alted _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From sergiogomez en tostado.com.ar Sun Jul 6 16:11:23 2008 From: sergiogomez en tostado.com.ar (Sergio Daniel Gomez) Date: Sun, 06 Jul 2008 11:11:23 -0300 Subject: Como abrir puerto USB In-Reply-To: <93e969700807051255k7d231839w504c93a49de75b53@mail.gmail.com> References: <93e969700807051255k7d231839w504c93a49de75b53@mail.gmail.com> Message-ID: <4870D28B.9050703@tostado.com.ar> Juan Pablo Isler escribió: > Hola, resulta que tengo un GPS y encontré código para obtener las > coordenadas y todo el asunto, el problema es que el código abre el puerto > serial, pero no tengo tal puerto y debo obtener un adaptador USB-Serial, en > tal caso debería abrir un puerto USB. Agradeceríacualquier ayuda :) > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > > Con pyserial solucionás tu problema, es multiplataforma y al puerto hacés referencia por el número de puerto ttySX en linux o comX en windows. Pyserial se encarga del manejo del puerto serie sin necesidad de que te compliques si está en un adaptador usb o directamente en la pc. No es complicado, te lo digo porque lo usé y tengo muy poca experiencia con python. Espero te sirva mi comentario. Suerte. Sergio D. Gómez Tostado (SF) _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From claudio0085 en hotmail.com Sun Jul 6 18:25:38 2008 From: claudio0085 en hotmail.com (claudio ivan barrios) Date: Sun, 6 Jul 2008 16:25:38 +0000 Subject: problemas para ver imagenes con pil Message-ID: HOLA tengo un problema para abrir imagenes de una sola banda en python con la libreria pil (con imagenes de tres bandas no tengo problemas )me muestra el siguiente mensaje de error raceback (most recent call last): File "C:\Documents and Settings\Administrador\Escritorio\pruebas\mostrarImagen.py", line 7, in f1=Image.open("C:\Documents and Settings\Administrador\Escritorio\rosa.jpg") File "C:\Python25\Lib\site-packages\PIL\Image.py", line 1888, in open fp = __builtin__.open(fp, "rb")IOError: [Errno 2] No such file or directory: 'C:\\Documents and Settings\\Administrador\\Escritorio\rosa.jpg'>>> alguien me puede dar la solucion a este problema? gracias por su tiempo _________________________________________________________________ Get your fix of news, sports, entertainment and more on MSN Mobile http://www.msnmobilefix.com/Default.aspx_______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From victoredier en yahoo.com Mon Jul 7 04:31:03 2008 From: victoredier en yahoo.com (Victor Edier) Date: Sun, 6 Jul 2008 19:31:03 -0700 (PDT) Subject: problemas para ver imagenes con pil Message-ID: <469159.82148.qm@web30804.mail.mud.yahoo.com> Según el problema que pones ahí no tiene nada que ver con lo que mencionas respecto a las bandas, lo que te puedo decir es que tengas cuidado con el ultimo back-slash ( \ ) el que esta antes de la palabra rosa.jpg los demás tienen el back-slash de espape excepto este, revizalo y nos comentas. ¡¡¡¡¡¡¡¡¡Good luck for every body!!!!!!!!! ----- Mensaje original ---- De: claudio ivan barrios Para: python-es en aditel.org Enviado: domingo, 6 de julio, 2008 11:25:38 Asunto: [Python-es] problemas para ver imagenes con pil HOLA tengo un problema para abrir imagenes de una sola banda en python con la libreria pil (con imagenes de tres bandas no tengo problemas )me muestra el siguiente mensaje de error raceback (most recent call last): File "C:\Documents and Settings\Administrador\Escritorio\pruebas\mostrarImagen.py", line 7, in f1=Image.open("C:\Documents and Settings\Administrador\Escritorio\rosa.jpg") File "C:\Python25\Lib\site-packages\PIL\Image.py", line 1888, in open fp = __builtin__.open(fp, "rb")IOError: [Errno 2] No such file or directory: 'C:\\Documents and Settings\\Administrador\\Escritorio\rosa.jpg'>>> alguien me puede dar la solucion a este problema? gracias por su tiempo _________________________________________________________________ Get your fix of news, sports, entertainment and more on MSN Mobile http://www.msnmobilefix.com/Default.aspx_______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes __________________________________________________ Correo Yahoo! Espacio para todos tus mensajes, antivirus y antispam ¡gratis! Regístrate ya - http://correo.espanol.yahoo.com/ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From lighther en gmail.com Mon Jul 7 05:38:51 2008 From: lighther en gmail.com (Juan Pablo Isler) Date: Sun, 6 Jul 2008 23:38:51 -0400 Subject: Como abrir puerto USB Message-ID: <93e969700807062038u6e02448bw84d84c60ba7dcba9@mail.gmail.com> Waaaa, gracias, creeme que había visto tu página :P, pero pensé que podría haber otro módulo para manejar específicamente un puerto USB, veré que puedo hacer, cualquier cosa escribo por acá ajajaja Saludos y muchas gracias por las dos respuestas :) _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ematus en gmail.com Mon Jul 7 06:00:00 2008 From: ematus en gmail.com (Eduardo Matus) Date: Mon, 7 Jul 2008 00:00:00 -0400 Subject: Comparar archivos (y si son mp3 mejor) XD In-Reply-To: <9f5676eb0807040019h357c79c0kb7619a35369cfd30@mail.gmail.com> References: <13a83ada0807031337p671da981kb7bda7a5516e0ea3@mail.gmail.com> <9f5676eb0807040019h357c79c0kb7619a35369cfd30@mail.gmail.com> Message-ID: <984ad6a0807062100j6af9a32ah53e1e5f33febd2e@mail.gmail.com> Para comparar si son iguales, yo compararia los hash de cada uno, si son iguales quiere decir que son el mismo archivo. 2008/7/4 Jaime Soriano Pastor : > Hola, > > El día 3 de julio de 2008 22:37, Antonio Gómez > escribió: > > La cosa más o menos me cuadra juntando un poco de cada una de las > opciones. > > ¿se os ocurre algún parámetro más a comparar? > > > > Se me ocurrió concretar este programilla para un solo tipo de archivos, > p. > > ej. .mp3, y a la hora de meter mano a un mp3, pues me he encontrado algo > des > > orientado. > > ¿como posdría comparar las tags? Cada mp3 parece de su padre y de su > madre > > (y creo que eso es así, a capricho del que 'comprime' el archivito) > > > > Si lo quieres hacer comparando cadenas de texto, como el nombre de > fichero o los tags del mp3, te recomiendo que uses algo basado en los > algoritmos de distancia de Levenshtein [0], que da una puntuación a lo > parecidas o diferentes que son dos cadenas, para la extracción de tags > tienes varias librerías en python, como python-mutagen o eyeD3 > > Y ya si quieres tener en cuenta los archivos mal nombrados o mal > etiquetados, échale un ojo a libtunepimp [1], es una librería que > extrae una firma de un archivo de música por como suena (no depende > por tanto de la compresión) y lo etiqueta automáticamente con la > información de MusicBrainz. Tiene bindings para python. > > Un saludo. > > [0] - Distancia de Levensthein - > http://es.wikipedia.org/wiki/Distancia_de_Levenshtein#Python > [1] - libtuneimp - http://musicbrainz.org/doc/libtunepimp > _______________________________________________ > 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 jordi.f en ati.es Mon Jul 7 10:35:48 2008 From: jordi.f en ati.es (Jordi Funollet) Date: Mon, 7 Jul 2008 10:35:48 +0200 Subject: Concatenar archivos de texto In-Reply-To: <237131.60429.qm@web51606.mail.re2.yahoo.com> References: <237131.60429.qm@web51606.mail.re2.yahoo.com> Message-ID: <200807071035.48552.jordi.f@ati.es> No tengo ni idea de si es eficiente, pero para mi gusto "fileinput" es la que requiere menos esfuerzo. # -------------------------------------------- import fileinput filenames = ["a", "b"] for line in fileinput.input(filenames): print line, # -------------------------------------------- -- ############################## ### 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 pepe en diselpro.com Mon Jul 7 10:25:28 2008 From: pepe en diselpro.com (Pepe Aracil) Date: Mon, 07 Jul 2008 10:25:28 +0200 Subject: Concatenar archivos de texto In-Reply-To: References: <237131.60429.qm@web51606.mail.re2.yahoo.com> <4869E53A.7010909@diselpro.com> <486A6808.6070601@gmail.com> <486B82FD.9070100@diselpro.com> Message-ID: <4871D2F8.1020309@diselpro.com> Florencio Cano escribió: > Otra manera... > > f1 = open(file1, 'r') > f2 = open(file2, 'r') > print ''.join(f1.readlines()+f2.readlines()) Y otra sin el join: sys.stdout.writelines(file(file1, 'r')) sys.stdout.writelines(file(file2, 'r')) :) > > > ------------------------------------------------------------------------ > > _______________________________________________ > 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 joan.pallares en gmail.com Mon Jul 7 11:32:22 2008 From: joan.pallares en gmail.com (=?ISO-8859-1?Q?Joan_Pallar=E8s?=) Date: Mon, 7 Jul 2008 11:32:22 +0200 Subject: =?iso-8859-1?q?Re=3A_Asignaci=F3n_de_eventos_en_Pyth?= =?iso-8859-1?q?on?= In-Reply-To: References: Message-ID: Hola, Estoy desarrollando una aplicación en Python para asignar árbitros a partidos de fútbol dependiendo de un filtros (no puede repetir partido, etc) Ahora solo calculo la primera opción válida. Me gustaría calcular todas las posibles opciones, (o ser capaz de calcularlas si el usuario lo quisiera). Por ejemplo: el usuario obtiene un resultado que pasa todos los filtros pero no le gusta y quiere ver la siguiente posibilidad Estoy buscando algoritmos que me permitan calcular todas las opciones pero no encuentro. He encontrado "Búsqueda Tabu" pero no me sirve para este caso Sería un algoritmo para relaciones entre conjuntos o algo por el estilo, no? ¿Alguna idea? Saludos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pych3m4 en gmail.com Mon Jul 7 13:57:22 2008 From: pych3m4 en gmail.com (Chema Cortes) Date: Mon, 7 Jul 2008 13:57:22 +0200 Subject: Concatenar archivos de texto In-Reply-To: <486E3CBD.5000401@montevideo.com.uy> References: <237131.60429.qm@web51606.mail.re2.yahoo.com> <2c9fb0dd0807010418n204f6879n8a0d82badf1e5ca3@mail.gmail.com> <486E3CBD.5000401@montevideo.com.uy> Message-ID: <2c9fb0dd0807070457l7c15865fi8fba74a708e86d1b@mail.gmail.com> El día 4 de julio de 2008 17:07, Christian Huelmo escribió: > Chema Cortes escribió: >> >> No entiendo bien si te parece mal la lectura línea por línea por algún >> motivo, pero yo lo haría usando iteradores para así optimizar el uso >> de la memoria: >> >> from itertools import chain >> >> file("resultado.txt","w").writelines(chain( >> file("fichero1.txt"),file("fichero2.txt"),file("fichero3.txt") >> )) >> > > #!/bin/bash > # Necesito concatenar todos los archivos de una carpeta > # la cantidad y los nombres de los archivos varían > > archivos="cat " > for i in *;do > if [ $i != $0 ];then # para que no me agregue el propio script > archivos=${archivos}" "$i > fi > done > $archivos > marcas.txt > > No se nada de bash pero así lo tengo resuelto y me anda, > usando python quiero resolver lo mismo en windows. > Estoy mirando tu solución Chema y todavía no me doy idea > como adaptarla. Entiendo que buscas una solución para windows. Antes de complicarnos más, deberías considerar una solución "clásica": TYPE * > RESULTADO.TXT Para hacerlo con python, y combinando varias de las propuestas que se han visto ya, aquí va una más: import sys from glob import iglob from fileinput import fileinput ficheros=(fich for fich in iglob("*") if fich<>sys.argv[0]) file("resultado.txt","w").writelines(fileinput.input(ficheros)) En iglob se puede filtrar para, por ejemplo, sólo considerar algún tipo de fichero (eg: iglob("*.txt") ) _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pych3m4 en gmail.com Mon Jul 7 14:50:35 2008 From: pych3m4 en gmail.com (Chema Cortes) Date: Mon, 7 Jul 2008 14:50:35 +0200 Subject: =?ISO-8859-1?Q?Re:__Variable_entre?= =?ISO-8859-1?Q?_clases_o_soluci=F3n_equivalente?= In-Reply-To: <1215112140.9205.4.camel@DrEaMeREW.ZONE> References: <1215112140.9205.4.camel@DrEaMeREW.ZONE> Message-ID: <2c9fb0dd0807070550h6d90c3f3tee858d760070bced@mail.gmail.com> El día 3 de julio de 2008 21:09, Ignacio Quezada escribió: > Hola!! > Necesito pasar de una clase a otra una variable. El problema es que la > clase secundaria tiene que devolverle una lista a la primera, pero no es > indispensable para su funcionamiento. Me explico, es wxpython y la > primera clase es el MainFrame, la segunda clase es una para conseguir > drag and drop, y consiguiendo una lista en la segunda clase, necesito > "procesarla" en la primera clase, necesito escribir en varios TextCtrl > según los valores de la lista y un MyFrame.TextCtrlX.SetValue(Y[0]) > falla diciendo que MyFrame no tiene ese atributo :S. No entiendo bien porqué te falla, ya que deberías haber añadido algo de código para que evite estos errores. Sin ver el código, no puedo decirte más. Yo emplearía una estrategia de tipo "Listeners". La primera clase está a la escucha esperando información desde las otras clases para actuar. La idea es que entre la clase principal y la secundaria haya total desacople (la clase primaria puede "vivir" sin la secundaria, tal y como afirmas en el postulado). _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From yourpadre en gmail.com Mon Jul 7 16:07:10 2008 From: yourpadre en gmail.com (Miguel Beltran R.) Date: Mon, 7 Jul 2008 09:07:10 -0500 Subject: Obtener el fullpath de programas en Windows,Mac In-Reply-To: <486FB898.8080507@gmail.com> References: <486C9099.8060703@gmail.com> <486FB898.8080507@gmail.com> Message-ID: para eso existen variables de entorno. en una ventana de MSDOS pon el comando set para que veas cuales tienes para accesarlas con el comando os.environ("programfiles") El día 5 de julio de 2008 13:08, Iván García escribió: > Tenia pensado usar la libreria de QT para acceder al registro, porque es la > mejor manera de saber donde se instaló el programa realmente. > > Si no, veo deficil como podria detectar el directorio C:\Program Files\ o > C:\Archivos de Programa sin buscar en el registro. > > Gracias. > > Diego Sosa wrote: >> >> En Thu, 03 Jul 2008 06:40:57 -0200, Iván García >> escribió: >> >>> Mi aplicación está hecha usando pyqt y quiero averiguar si el cliente >>> tiene instalado el reproductor VLC >>> >>> de momento para linux es muy facil. >>> >>> if platform.system() == "Linux": >>> status, path = commands.getstatusoutput("which vlc") >>> >>> En windows, cómo puedo averiguar el path para el vlc.exe ? Debo usar el >>> Registro de windows para ello? Y en Mac ? >> >> Yo probaría primero que nada con el directorio estándart de instalación >> del vlc. Si no encontrás ahí, probar con el registro de Windows. Tengo >> entendido que existen librerías para acceder a él... >> >> >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> 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 Mon Jul 7 16:17:43 2008 From: inf200468 en ucf.edu.cu (inf200468 en ucf.edu.cu) Date: Mon, 7 Jul 2008 10:17:43 -0400 (EDT) Subject: problemas con herencia (de programacion claro) Message-ID: <39340.10.14.17.145.1215440263.squirrel@correo> Hola:            para que una clase herede de otra , en su declaracion pongo  class Miclase(Padre): , pero esto me da error , y tengo ambas clases definidas en el mismo fichero .py , y desde la clase hija quiero tener acceso a metodos y atributos de la clase padre...y si alguien puede explicar como puedo reprogramar un metodo que ya esta definido en la clase padre. Saludos y muchas 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 cdocarmo en adinet.com.uy Mon Jul 7 16:27:20 2008 From: cdocarmo en adinet.com.uy (Carlos Do Carmo) Date: Mon, 7 Jul 2008 11:27:20 -0300 Subject: Realizar Graficas In-Reply-To: <2c9fb0dd0807070457l7c15865fi8fba74a708e86d1b@mail.gmail.com> References: <237131.60429.qm@web51606.mail.re2.yahoo.com> <2c9fb0dd0807010418n204f6879n8a0d82badf1e5ca3@mail.gmail.com> <486E3CBD.5000401@montevideo.com.uy> <2c9fb0dd0807070457l7c15865fi8fba74a708e86d1b@mail.gmail.com> Message-ID: <002301c8e03d$944a66f0$bcdf34d0$@com.uy> Buenas como estan? Estoy realizando un sistema con Python y wxpython, y me gustaría usar algún tipo de graficas en algunas consultas. Me pueden indicar si es posible esto y donde puedo encontrar documentación al respecto Gracias Saludos Carlos Do Carmo _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From alexis.roda.villalonga en gmail.com Mon Jul 7 16:35:15 2008 From: alexis.roda.villalonga en gmail.com (Alexis Roda) Date: Mon, 07 Jul 2008 16:35:15 +0200 Subject: problemas con herencia (de programacion claro) In-Reply-To: <39340.10.14.17.145.1215440263.squirrel@correo> References: <39340.10.14.17.145.1215440263.squirrel@correo> Message-ID: <487229A3.9060907@gmail.com> En/na inf200468 en ucf.edu.cu ha escrit: > > Hola: > ?????????? para que una > clase herede de otra , en su declaracion pongo? class Miclase(Padre): , pero esto > me da error , que error ? > y tengo ambas clases definidas en el mismo fichero .py , y desde la clase > hija quiero tener acceso a metodos y atributos de la clase padre...y si alguien puede > explicar como puedo reprogramar un metodo que ya esta definido en la clase padre. Simplemente redefinelo en la clase hijo: class Padre : def foo(self) : print "padre" class Hijo(Padre) : def foo(self) : print "hijo" Para más información échale un vistazo a: http://pyspanishdoc.sourceforge.net/tut/node11.html (en castellano) http://docs.python.org/tut/node11.html (en inglés) Saludos ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From capiscuas en gmail.com Mon Jul 7 16:37:59 2008 From: capiscuas en gmail.com (=?ISO-8859-1?Q?Iv=E1n_Garc=EDa?=) Date: Mon, 07 Jul 2008 22:37:59 +0800 Subject: Obtener el fullpath de programas en Windows,Mac In-Reply-To: References: <486C9099.8060703@gmail.com> <486FB898.8080507@gmail.com> Message-ID: <48722A47.9020604@gmail.com> Gracias Miguel, pero no recuerdo que Mplayer o VLC pongan ningun tipo de variable de entorno en WINDOWS, me decanto por la solucion de mirar el registro. Miguel Beltran R. wrote: > para eso existen variables de entorno. > > en una ventana de MSDOS pon el comando set para que veas cuales tienes > para accesarlas con el comando os.environ("programfiles") > > El día 5 de julio de 2008 13:08, Iván García escribió: > >> Tenia pensado usar la libreria de QT para acceder al registro, porque es la >> mejor manera de saber donde se instaló el programa realmente. >> >> Si no, veo deficil como podria detectar el directorio C:\Program Files\ o >> C:\Archivos de Programa sin buscar en el registro. >> >> Gracias. >> >> Diego Sosa wrote: >> >>> En Thu, 03 Jul 2008 06:40:57 -0200, Iván García >>> escribió: >>> >>> >>>> Mi aplicación está hecha usando pyqt y quiero averiguar si el cliente >>>> tiene instalado el reproductor VLC >>>> >>>> de momento para linux es muy facil. >>>> >>>> if platform.system() == "Linux": >>>> status, path = commands.getstatusoutput("which vlc") >>>> >>>> En windows, cómo puedo averiguar el path para el vlc.exe ? Debo usar el >>>> Registro de windows para ello? Y en Mac ? >>>> >>> Yo probaría primero que nada con el directorio estándart de instalación >>> del vlc. Si no encontrás ahí, probar con el registro de Windows. Tengo >>> entendido que existen librerías para acceder a él... >>> >>> >>> ------------------------------------------------------------------------ >>> >>> _______________________________________________ >>> 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 packo en assamita.net Mon Jul 7 16:49:51 2008 From: packo en assamita.net (Paco Moreno) Date: Mon, 7 Jul 2008 16:49:51 +0200 Subject: Realizar Graficas In-Reply-To: <002301c8e03d$944a66f0$bcdf34d0$@com.uy> References: <237131.60429.qm@web51606.mail.re2.yahoo.com> <2c9fb0dd0807010418n204f6879n8a0d82badf1e5ca3@mail.gmail.com> <486E3CBD.5000401@montevideo.com.uy> <2c9fb0dd0807070457l7c15865fi8fba74a708e86d1b@mail.gmail.com> <002301c8e03d$944a66f0$bcdf34d0$@com.uy> Message-ID: Mira http://oss.oetiker.ch/rrdtool/ , tiene version python: http://sourceforge.net/projects/py-rrdtool/ lo usamos en el trabajo porque es sencillo y puede quedar muy bien en cuanto a elegancia y claridad. Un saludo. 2008/7/7 Carlos Do Carmo : > Buenas como estan? > > Estoy realizando un sistema con Python y wxpython, y me gustaría > usar algún tipo de graficas en algunas consultas. Me pueden indicar si es > posible esto y donde puedo encontrar documentación al respecto > > Gracias > Saludos > > Carlos Do Carmo > > > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- |Paco Moreno |web: http://www.assamita.net |blog: http://blog.assamita.net |correo: packo en assamita punto net |jabber: packo en assamita.net _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From falted en pytables.org Mon Jul 7 16:55:45 2008 From: falted en pytables.org (Francesc Alted) Date: Mon, 7 Jul 2008 16:55:45 +0200 Subject: Realizar Graficas In-Reply-To: <002301c8e03d$944a66f0$bcdf34d0$@com.uy> References: <237131.60429.qm@web51606.mail.re2.yahoo.com> <2c9fb0dd0807070457l7c15865fi8fba74a708e86d1b@mail.gmail.com> <002301c8e03d$944a66f0$bcdf34d0$@com.uy> Message-ID: <200807071655.45854.falted@pytables.org> A Monday 07 July 2008, Carlos Do Carmo escrigué: > Buenas como estan? > > Estoy realizando un sistema con Python y wxpython, y me gustaría > usar algún tipo de graficas en algunas consultas. Me pueden indicar > si es posible esto y donde puedo encontrar documentación al respecto Mi experiencia con matplotlib es muy buena: http://matplotlib.sourceforge.net/ Por cierto, intenta abrir un hilo de discusión nuevo cada vez que preguntes (si no lo haces así, despistas a la gente que está habituada a leer el correo con un cliente que agrupa los mensajes por hilos de discusión). Saludos, -- Francesc Alted _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From yourpadre en gmail.com Mon Jul 7 17:12:38 2008 From: yourpadre en gmail.com (Miguel Beltran R.) Date: Mon, 7 Jul 2008 10:12:38 -0500 Subject: Obtener el fullpath de programas en Windows,Mac In-Reply-To: <48722A47.9020604@gmail.com> References: <486C9099.8060703@gmail.com> <486FB898.8080507@gmail.com> <48722A47.9020604@gmail.com> Message-ID: Lo que digo es para combinarlo con la recomendación de Diego programfiles = os.envieron("programfiles") vlcpath=programfiles + "\vlc\vlc.exe" ya casi no uso python (ya olvide muchas cosas) pero me gusta seguier leyendo la lista. si lo quieres hacer checando el registro de windows, solo una sugerencia: cuando le pongan la opcion de que "abra" la llave del registro hazlo como lectura porque ya me a pasado que varios programas lo quieren abrir con "FULL ACCESS" y cuando quiero abrir el programa con mi usuario mortal (osea sin permisos de administrador) me marca error y no se abre. Esto me paso con un programa de HP para escanear. El día 7 de julio de 2008 9:37, Iván García escribió: > Gracias Miguel, > > pero no recuerdo que Mplayer o VLC pongan ningun tipo de variable de entorno > en WINDOWS, > me decanto por la solucion de mirar el registro. > > Miguel Beltran R. wrote: >> >> para eso existen variables de entorno. >> >> en una ventana de MSDOS pon el comando set para que veas cuales tienes >> para accesarlas con el comando os.environ("programfiles") >> >> El día 5 de julio de 2008 13:08, Iván García >> escribió: >> >>> >>> Tenia pensado usar la libreria de QT para acceder al registro, porque es >>> la >>> mejor manera de saber donde se instaló el programa realmente. >>> >>> Si no, veo deficil como podria detectar el directorio C:\Program Files\ o >>> C:\Archivos de Programa sin buscar en el registro. >>> >>> Gracias. >>> >>> Diego Sosa wrote: >>> >>>> >>>> En Thu, 03 Jul 2008 06:40:57 -0200, Iván García >>>> escribió: >>>> >>>> >>>>> >>>>> Mi aplicación está hecha usando pyqt y quiero averiguar si el cliente >>>>> tiene instalado el reproductor VLC >>>>> >>>>> de momento para linux es muy facil. >>>>> >>>>> if platform.system() == "Linux": >>>>> status, path = commands.getstatusoutput("which vlc") >>>>> >>>>> En windows, cómo puedo averiguar el path para el vlc.exe ? Debo usar el >>>>> Registro de windows para ello? Y en Mac ? >>>>> >>>> >>>> Yo probaría primero que nada con el directorio estándart de instalación >>>> del vlc. Si no encontrás ahí, probar con el registro de Windows. Tengo >>>> entendido que existen librerías para acceder a él... >>>> >>>> >>>> ------------------------------------------------------------------------ >>>> >>>> _______________________________________________ >>>> 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 > -- ________________________________________ 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 julio.penarroche en etecsa.cu Mon Jul 7 17:41:01 2008 From: julio.penarroche en etecsa.cu (=?ISO-8859-1?Q?=22Ms=2EC=2E_Julio_Oscar_Pe=F1arroche_G=F3me?= =?ISO-8859-1?Q?z=22?=) Date: Mon, 07 Jul 2008 11:41:01 -0400 Subject: [Probablemente Spam] Sobre timer In-Reply-To: References: <486E70C4.7030301@etecsa.cu> Message-ID: <4872390D.1010909@etecsa.cu> Hola, es posible que no me explicara bien, lo que yo deseo es poder ejecutar un código determinado cada x tiempo, el ejemplo a lo mejor no es el más correcto debido a que me inicio en el python y la programación en software libre pero el error que me da es el siguiente: Fatal Python error: deallocating None Cancelado el código es: #!/usr/bin/env python from parport import ParallelPort #"parport" es una libreria en python encontrada en #http://devpower.blogsite.org/ import threading p = ParallelPort(0x378) p.write(0) def escribe(): p.write(255) print 'Escribe 1 en el puerto ' repite() def repite(): t = threading.Timer(3.0, escribe) t.start() repite() Gracias Diego Sosa wrote: > En Fri, 04 Jul 2008 16:49:40 -0200, Ms.C. Julio Oscar Peñarroche Gómez > escribió: > >> Me estoy iniciando en python y necesito saber como programar un timer >> que me ejecute cada cierto tiempo un código determinado, he buscado >> en Internet y los ejemplos que he encontrado son con hilos que >> algunos me han funcionado, pero cuando pongo a correr mi código explota. > > Los hilos no funcionan al ejecutar desde el IDLE... quizás sea eso lo > que te pasó. > > http://wiki.python.org/moin/ThreadProgramming > http://www.devshed.com/c/a/Python/Basic-Threading-in-Python/ > > > ------------------------------------------------------------------------ > > _______________________________________________ > 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 reynaldomic en gmail.com Mon Jul 7 17:55:35 2008 From: reynaldomic en gmail.com (Reynaldo) Date: Mon, 07 Jul 2008 10:55:35 -0500 Subject: [Probablemente Spam] Sobre timer In-Reply-To: <4872390D.1010909@etecsa.cu> References: <486E70C4.7030301@etecsa.cu> <4872390D.1010909@etecsa.cu> Message-ID: <48723C77.3040401@gmail.com> Hola Julio, Ms.C. Julio Oscar Peñarroche Gómez escribió: > Hola, es posible que no me explicara bien, lo que yo deseo es poder > ejecutar un código determinado cada x tiempo, el ejemplo a lo mejor no > es el más correcto debido a que me inicio en el python y la > programación en software libre pero el error que me da es el siguiente: > > Fatal Python error: deallocating None > Cancelado > No es necesario utilizar hilos para lo que quieres.. import time from parport import ParallelPort def main(): p = ParallelPort('0x378') p.write(0) while 1: p.write(255) print 'Escribe 1 en el puerto' time.sleep(3) main() Saludos, Reynaldo > > Gracias > > Diego Sosa wrote: >> En Fri, 04 Jul 2008 16:49:40 -0200, Ms.C. Julio Oscar Peñarroche >> Gómez escribió: >> >>> Me estoy iniciando en python y necesito saber como programar un >>> timer que me ejecute cada cierto tiempo un código determinado, he >>> buscado en Internet y los ejemplos que he encontrado son con hilos >>> que algunos me han funcionado, pero cuando pongo a correr mi código >>> explota. >> >> Los hilos no funcionan al ejecutar desde el IDLE... quizás sea eso lo >> que te pasó. >> >> http://wiki.python.org/moin/ThreadProgramming >> http://www.devshed.com/c/a/Python/Basic-Threading-in-Python/ >> >> >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> 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 jcaballero.hep en gmail.com Mon Jul 7 17:52:07 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Mon, 7 Jul 2008 11:52:07 -0400 Subject: [Probablemente Spam] Sobre timer In-Reply-To: <4872390D.1010909@etecsa.cu> References: <486E70C4.7030301@etecsa.cu> <4872390D.1010909@etecsa.cu> Message-ID: Hola, una pregunta sobre tu código. Veo que dentro de repite(), Timer llama a la función escribe(). Pero a su vez la función escribe() llama a repite(). ¿Estás seguro de que eso es lo que quieres? Normalmente ese tipo de códigos con loops infinitos dan un error tipo "RuntimeError: maximum recursion depth exceeded" o cosas similares. Saludos, Jose El día 7 de julio de 2008 11:41, "Ms.C. Julio Oscar Peñarroche Gómez" < julio.penarroche en etecsa.cu> escribió: > Hola, es posible que no me explicara bien, lo que yo deseo es poder > ejecutar un código determinado cada x tiempo, el ejemplo a lo mejor no es el > más correcto debido a que me inicio en el python y la programación en > software libre pero el error que me da es el siguiente: > > Fatal Python error: deallocating None > Cancelado > > el código es: > > #!/usr/bin/env python > from parport import ParallelPort #"parport" es una libreria en python > encontrada en > #http://devpower.blogsite.org/ > import threading > p = ParallelPort(0x378) > p.write(0) > def escribe(): > p.write(255) > print 'Escribe 1 en el puerto ' > repite() > > def repite(): > t = threading.Timer(3.0, escribe) > t.start() > repite() > > Gracias > > Diego Sosa wrote: > >> En Fri, 04 Jul 2008 16:49:40 -0200, Ms.C. Julio Oscar Peñarroche Gómez < >> julio.penarroche en etecsa.cu> escribió: >> >> Me estoy iniciando en python y necesito saber como programar un timer que >>> me ejecute cada cierto tiempo un código determinado, he buscado en Internet >>> y los ejemplos que he encontrado son con hilos que algunos me han >>> funcionado, pero cuando pongo a correr mi código explota. >>> >> >> Los hilos no funcionan al ejecutar desde el IDLE... quizás sea eso lo que >> te pasó. >> >> http://wiki.python.org/moin/ThreadProgramming >> http://www.devshed.com/c/a/Python/Basic-Threading-in-Python/ >> >> >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> 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 inf200468 en ucf.edu.cu Mon Jul 7 17:50:23 2008 From: inf200468 en ucf.edu.cu (inf200468 en ucf.edu.cu) Date: Mon, 7 Jul 2008 11:50:23 -0400 (EDT) Subject: como enviar correo Message-ID: <2094.10.14.19.34.1215445823.squirrel@correo> Hola:       saben de algun modulo que permita enviar correos por lotes, es decir a varios usuarios -------------------------------- 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 erjorge en gmail.com Mon Jul 7 18:15:00 2008 From: erjorge en gmail.com (Jorge Gant Ballesteros) Date: Mon, 7 Jul 2008 18:15:00 +0200 Subject: Traducir archivos html para crear otros. Message-ID: <3041714f0807070915v735b4086h90889ec83245e3b6@mail.gmail.com> Hola a todos, Tengo varios archivos html en ingles y me gustaría mediante python recorrer uno a uno y traducirlos creandome archivos html gemelos en castellano. Lo único que me queda es qué diccionario usar y cómo. En la web?, offline? Cómo paso mi cadena? Gracias _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From lgs en sicem.biz Mon Jul 7 18:35:47 2008 From: lgs en sicem.biz (Lorenzo Gil =?ISO-8859-1?Q?S=E1nchez?=) Date: Mon, 07 Jul 2008 18:35:47 +0200 Subject: Realizar Graficas In-Reply-To: <002301c8e03d$944a66f0$bcdf34d0$@com.uy> References: <237131.60429.qm@web51606.mail.re2.yahoo.com> <2c9fb0dd0807010418n204f6879n8a0d82badf1e5ca3@mail.gmail.com> <486E3CBD.5000401@montevideo.com.uy> <2c9fb0dd0807070457l7c15865fi8fba74a708e86d1b@mail.gmail.com> <002301c8e03d$944a66f0$bcdf34d0$@com.uy> Message-ID: <1215448547.2962.1.camel@yog-sothoth.lorenzogil.com> También puedes probar con PyCha: http://www.lorenzogil.com/projects/pycha cuya principal virtud es la simplicidad y sencillez de uso. Un saludo Lorenzo El lun, 07-07-2008 a las 11:27 -0300, Carlos Do Carmo escribió: > Buenas como estan? > > Estoy realizando un sistema con Python y wxpython, y me gustaría > usar algún tipo de graficas en algunas consultas. Me pueden indicar si es > posible esto y donde puedo encontrar documentación al respecto > > Gracias > Saludos > > Carlos Do Carmo > > > > _______________________________________________ > 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 julio.penarroche en etecsa.cu Mon Jul 7 19:29:12 2008 From: julio.penarroche en etecsa.cu (=?ISO-8859-1?Q?=22Ms=2EC=2E_Julio_Oscar_Pe=F1arroche_G=F3me?= =?ISO-8859-1?Q?z=22?=) Date: Mon, 07 Jul 2008 13:29:12 -0400 Subject: [Probablemente Spam] Sobre timer In-Reply-To: <48723C77.3040401@gmail.com> References: <486E70C4.7030301@etecsa.cu> <4872390D.1010909@etecsa.cu> <48723C77.3040401@gmail.com> Message-ID: <48725268.4090004@etecsa.cu> Gracias a todos los que me han respondido, Reynaldo estuve probando el código que enviastes y me sigue dando el mismo error cuando lleva un tiempo ejecutandoce *Fatal Python error: deallocating None Cancelado *Que quiero lograr yo exactamente, provengo de la programación en windows y he trabajado con delphi, .net entre otros, en estos lenguajes que son visuales existen componentes timer que uno le define el tiempo que quiere que se ejecute y este lo hace, mi interés es escribir cada cierto tiempo el dato 255 en el puerto paralelo, en delphi me funciona sin problemas. Julio Reynaldo wrote: > Hola Julio, > Ms.C. Julio Oscar Peñarroche Gómez escribió: >> Hola, es posible que no me explicara bien, lo que yo deseo es poder >> ejecutar un código determinado cada x tiempo, el ejemplo a lo mejor >> no es el más correcto debido a que me inicio en el python y la >> programación en software libre pero el error que me da es el siguiente: >> >> Fatal Python error: deallocating None >> Cancelado >> > No es necesario utilizar hilos para lo que quieres.. > > import time > from parport import ParallelPort > > def main(): > p = ParallelPort('0x378') > p.write(0) > while 1: > p.write(255) > print 'Escribe 1 en el puerto' > time.sleep(3) > > main() > > Saludos, > Reynaldo >> >> Gracias >> >> Diego Sosa wrote: >>> En Fri, 04 Jul 2008 16:49:40 -0200, Ms.C. Julio Oscar Peñarroche >>> Gómez escribió: >>> >>>> Me estoy iniciando en python y necesito saber como programar un >>>> timer que me ejecute cada cierto tiempo un código determinado, he >>>> buscado en Internet y los ejemplos que he encontrado son con hilos >>>> que algunos me han funcionado, pero cuando pongo a correr mi código >>>> explota. >>> >>> Los hilos no funcionan al ejecutar desde el IDLE... quizás sea eso >>> lo que te pasó. >>> >>> http://wiki.python.org/moin/ThreadProgramming >>> http://www.devshed.com/c/a/Python/Basic-Threading-in-Python/ >>> >>> >>> ------------------------------------------------------------------------ >>> >>> >>> _______________________________________________ >>> 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 jcaballero.hep en gmail.com Mon Jul 7 19:40:26 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Mon, 7 Jul 2008 13:40:26 -0400 Subject: [Probablemente Spam] Sobre timer In-Reply-To: <48725268.4090004@etecsa.cu> References: <486E70C4.7030301@etecsa.cu> <4872390D.1010909@etecsa.cu> <48723C77.3040401@gmail.com> <48725268.4090004@etecsa.cu> Message-ID: Hola de nuevo. Sigo pensando que la forma recursiva de tu programa no es buena. Pero bueno, si te gusta, no tengo inconveniente. Por otro lado, ¿estás seguro de que el puerto se pasa como una cadena de caracteres y no como un entero? Veo en tu código p = ParallelPort('0x378') donde '0x378' es un string, no un entero. ¿Es así? Saludos, Jose El día 7 de julio de 2008 13:29, "Ms.C. Julio Oscar Peñarroche Gómez" < julio.penarroche en etecsa.cu> escribió: > Gracias a todos los que me han respondido, Reynaldo estuve probando el > código que enviastes y me sigue dando el mismo error cuando lleva un tiempo > ejecutandoce > > *Fatal Python error: deallocating None > Cancelado > > *Que quiero lograr yo exactamente, provengo de la programación en windows y > he trabajado con delphi, .net entre otros, en estos lenguajes que son > visuales existen componentes timer que uno le define el tiempo que quiere > que se ejecute y este lo hace, mi interés es escribir cada cierto tiempo el > dato 255 en el puerto paralelo, en delphi me funciona sin problemas. > > Julio > > > Reynaldo wrote: > >> Hola Julio, >> Ms.C. Julio Oscar Peñarroche Gómez escribió: >> >>> Hola, es posible que no me explicara bien, lo que yo deseo es poder >>> ejecutar un código determinado cada x tiempo, el ejemplo a lo mejor no es el >>> más correcto debido a que me inicio en el python y la programación en >>> software libre pero el error que me da es el siguiente: >>> >>> Fatal Python error: deallocating None >>> Cancelado >>> >>> No es necesario utilizar hilos para lo que quieres.. >> >> import time >> from parport import ParallelPort >> >> def main(): >> p = ParallelPort('0x378') >> p.write(0) >> while 1: >> p.write(255) >> print 'Escribe 1 en el puerto' >> time.sleep(3) >> >> main() >> >> Saludos, >> Reynaldo >> >>> >>> Gracias >>> >>> Diego Sosa wrote: >>> >>>> En Fri, 04 Jul 2008 16:49:40 -0200, Ms.C. Julio Oscar Peñarroche Gómez < >>>> julio.penarroche en etecsa.cu> escribió: >>>> >>>> Me estoy iniciando en python y necesito saber como programar un timer >>>>> que me ejecute cada cierto tiempo un código determinado, he buscado en >>>>> Internet y los ejemplos que he encontrado son con hilos que algunos me han >>>>> funcionado, pero cuando pongo a correr mi código explota. >>>>> >>>> >>>> Los hilos no funcionan al ejecutar desde el IDLE... quizás sea eso lo >>>> que te pasó. >>>> >>>> http://wiki.python.org/moin/ThreadProgramming >>>> http://www.devshed.com/c/a/Python/Basic-Threading-in-Python/ >>>> >>>> >>>> ------------------------------------------------------------------------ >>>> >>>> >>>> _______________________________________________ >>>> 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 jcaballero.hep en gmail.com Mon Jul 7 19:48:37 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Mon, 7 Jul 2008 13:48:37 -0400 Subject: [Probablemente Spam] Sobre timer In-Reply-To: References: <486E70C4.7030301@etecsa.cu> <4872390D.1010909@etecsa.cu> <48723C77.3040401@gmail.com> <48725268.4090004@etecsa.cu> Message-ID: Mil disculpas. No es cierto que en el código original el puerto se pasa como un string. Eso lo he visto en el ejemplo de Reynaldo. Me disculpo públicamente por el error. Saludos. El día 7 de julio de 2008 13:40, Jose Caballero escribió: > Hola de nuevo. > > Sigo pensando que la forma recursiva de tu programa no es buena. Pero > bueno, si te gusta, no tengo inconveniente. > Por otro lado, ¿estás seguro de que el puerto se pasa como una cadena de > caracteres y no como un entero? Veo en tu código > > p = ParallelPort('0x378') > > donde '0x378' es un string, no un entero. ¿Es así? > > > Saludos, > Jose > > > > > > El día 7 de julio de 2008 13:29, "Ms.C. Julio Oscar Peñarroche Gómez" < > julio.penarroche en etecsa.cu> escribió: > > Gracias a todos los que me han respondido, Reynaldo estuve probando el >> código que enviastes y me sigue dando el mismo error cuando lleva un tiempo >> ejecutandoce >> >> *Fatal Python error: deallocating None >> Cancelado >> >> *Que quiero lograr yo exactamente, provengo de la programación en windows >> y he trabajado con delphi, .net entre otros, en estos lenguajes que son >> visuales existen componentes timer que uno le define el tiempo que quiere >> que se ejecute y este lo hace, mi interés es escribir cada cierto tiempo el >> dato 255 en el puerto paralelo, en delphi me funciona sin problemas. >> >> Julio >> >> >> Reynaldo wrote: >> >>> Hola Julio, >>> Ms.C. Julio Oscar Peñarroche Gómez escribió: >>> >>>> Hola, es posible que no me explicara bien, lo que yo deseo es poder >>>> ejecutar un código determinado cada x tiempo, el ejemplo a lo mejor no es el >>>> más correcto debido a que me inicio en el python y la programación en >>>> software libre pero el error que me da es el siguiente: >>>> >>>> Fatal Python error: deallocating None >>>> Cancelado >>>> >>>> No es necesario utilizar hilos para lo que quieres.. >>> >>> import time >>> from parport import ParallelPort >>> >>> def main(): >>> p = ParallelPort('0x378') >>> p.write(0) >>> while 1: >>> p.write(255) >>> print 'Escribe 1 en el puerto' >>> time.sleep(3) >>> >>> main() >>> >>> Saludos, >>> Reynaldo >>> >>>> >>>> Gracias >>>> >>>> Diego Sosa wrote: >>>> >>>>> En Fri, 04 Jul 2008 16:49:40 -0200, Ms.C. Julio Oscar Peñarroche Gómez >>>>> escribió: >>>>> >>>>> Me estoy iniciando en python y necesito saber como programar un timer >>>>>> que me ejecute cada cierto tiempo un código determinado, he buscado en >>>>>> Internet y los ejemplos que he encontrado son con hilos que algunos me han >>>>>> funcionado, pero cuando pongo a correr mi código explota. >>>>>> >>>>> >>>>> Los hilos no funcionan al ejecutar desde el IDLE... quizás sea eso lo >>>>> que te pasó. >>>>> >>>>> http://wiki.python.org/moin/ThreadProgramming >>>>> http://www.devshed.com/c/a/Python/Basic-Threading-in-Python/ >>>>> >>>>> >>>>> ------------------------------------------------------------------------ >>>>> >>>>> >>>>> _______________________________________________ >>>>> 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 julio.penarroche en etecsa.cu Mon Jul 7 20:21:26 2008 From: julio.penarroche en etecsa.cu (=?ISO-8859-1?Q?=22Ms=2EC=2E_Julio_Oscar_Pe=F1arroche_G=F3me?= =?ISO-8859-1?Q?z=22?=) Date: Mon, 07 Jul 2008 14:21:26 -0400 Subject: [Probablemente Spam] Sobre timer In-Reply-To: References: <486E70C4.7030301@etecsa.cu> <4872390D.1010909@etecsa.cu> <48723C77.3040401@gmail.com> <48725268.4090004@etecsa.cu> Message-ID: <48725EA6.4080809@etecsa.cu> Hola Jose, disculpa si no te contesté, realmente la forma recursiva no es la que voy a emplear y el puerto no es una cadena es un número, como dije en el mensaje anterior en lenguajes sobre windows tengo bastante experiencia y en el manejo del puerto también. Solo quiero lograr que se escriba el valor 255 repetidamente cada cierto tiempo en el puerto, cosa esta que lograba de forma fácil en windows. Julio Jose Caballero wrote: > Hola de nuevo. > > Sigo pensando que la forma recursiva de tu programa no es buena. Pero bueno, > si te gusta, no tengo inconveniente. > Por otro lado, ¿estás seguro de que el puerto se pasa como una cadena de > caracteres y no como un entero? Veo en tu código > > p = ParallelPort('0x378') > > donde '0x378' es un string, no un entero. ¿Es así? > > > Saludos, > Jose > > > > > > El día 7 de julio de 2008 13:29, "Ms.C. Julio Oscar Peñarroche Gómez" < > julio.penarroche en etecsa.cu> escribió: > > >> Gracias a todos los que me han respondido, Reynaldo estuve probando el >> código que enviastes y me sigue dando el mismo error cuando lleva un tiempo >> ejecutandoce >> >> *Fatal Python error: deallocating None >> Cancelado >> >> *Que quiero lograr yo exactamente, provengo de la programación en windows y >> he trabajado con delphi, .net entre otros, en estos lenguajes que son >> visuales existen componentes timer que uno le define el tiempo que quiere >> que se ejecute y este lo hace, mi interés es escribir cada cierto tiempo el >> dato 255 en el puerto paralelo, en delphi me funciona sin problemas. >> >> Julio >> >> >> Reynaldo wrote: >> >> >>> Hola Julio, >>> Ms.C. Julio Oscar Peñarroche Gómez escribió: >>> >>> >>>> Hola, es posible que no me explicara bien, lo que yo deseo es poder >>>> ejecutar un código determinado cada x tiempo, el ejemplo a lo mejor no es el >>>> más correcto debido a que me inicio en el python y la programación en >>>> software libre pero el error que me da es el siguiente: >>>> >>>> Fatal Python error: deallocating None >>>> Cancelado >>>> >>>> No es necesario utilizar hilos para lo que quieres.. >>>> >>> import time >>> from parport import ParallelPort >>> >>> def main(): >>> p = ParallelPort('0x378') >>> p.write(0) >>> while 1: >>> p.write(255) >>> print 'Escribe 1 en el puerto' >>> time.sleep(3) >>> >>> main() >>> >>> Saludos, >>> Reynaldo >>> >>> >>>> Gracias >>>> >>>> Diego Sosa wrote: >>>> >>>> >>>>> En Fri, 04 Jul 2008 16:49:40 -0200, Ms.C. Julio Oscar Peñarroche Gómez < >>>>> julio.penarroche en etecsa.cu> escribió: >>>>> >>>>> Me estoy iniciando en python y necesito saber como programar un timer >>>>> >>>>>> que me ejecute cada cierto tiempo un código determinado, he buscado en >>>>>> Internet y los ejemplos que he encontrado son con hilos que algunos me han >>>>>> funcionado, pero cuando pongo a correr mi código explota. >>>>>> >>>>>> >>>>> Los hilos no funcionan al ejecutar desde el IDLE... quizás sea eso lo >>>>> que te pasó. >>>>> >>>>> http://wiki.python.org/moin/ThreadProgramming >>>>> http://www.devshed.com/c/a/Python/Basic-Threading-in-Python/ >>>>> >>>>> >>>>> ------------------------------------------------------------------------ >>>>> >>>>> >>>>> _______________________________________________ >>>>> 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 jcaballero.hep en gmail.com Mon Jul 7 20:27:59 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Mon, 7 Jul 2008 14:27:59 -0400 Subject: [Probablemente Spam] Sobre timer In-Reply-To: <48725EA6.4080809@etecsa.cu> References: <486E70C4.7030301@etecsa.cu> <4872390D.1010909@etecsa.cu> <48723C77.3040401@gmail.com> <48725268.4090004@etecsa.cu> <48725EA6.4080809@etecsa.cu> Message-ID: En mi opinión, la forma que apunta Reynaldo es (o debería ser) la más fácil... bastante parecida a algún ejemplo que he visto buscando en google. El día 7 de julio de 2008 14:21, "Ms.C. Julio Oscar Peñarroche Gómez" < julio.penarroche en etecsa.cu> escribió: > Hola Jose, disculpa si no te contesté, realmente la forma recursiva no es > la que voy a emplear y el puerto no es una cadena es un número, como dije en > el mensaje anterior en lenguajes sobre windows tengo bastante experiencia y > en el manejo del puerto también. Solo quiero lograr que se escriba el valor > 255 repetidamente cada cierto tiempo en el puerto, cosa esta que lograba de > forma fácil en windows. > > Julio > > > Jose Caballero wrote: > >> Hola de nuevo. >> >> Sigo pensando que la forma recursiva de tu programa no es buena. Pero >> bueno, >> si te gusta, no tengo inconveniente. >> Por otro lado, ¿estás seguro de que el puerto se pasa como una cadena de >> caracteres y no como un entero? Veo en tu código >> >> p = ParallelPort('0x378') >> >> donde '0x378' es un string, no un entero. ¿Es así? >> >> >> Saludos, >> Jose >> >> >> >> >> >> El día 7 de julio de 2008 13:29, "Ms.C. Julio Oscar Peñarroche Gómez" < >> julio.penarroche en etecsa.cu> escribió: >> >> >> >>> Gracias a todos los que me han respondido, Reynaldo estuve probando el >>> código que enviastes y me sigue dando el mismo error cuando lleva un >>> tiempo >>> ejecutandoce >>> >>> *Fatal Python error: deallocating None >>> Cancelado >>> >>> *Que quiero lograr yo exactamente, provengo de la programación en windows >>> y >>> he trabajado con delphi, .net entre otros, en estos lenguajes que son >>> visuales existen componentes timer que uno le define el tiempo que quiere >>> que se ejecute y este lo hace, mi interés es escribir cada cierto tiempo >>> el >>> dato 255 en el puerto paralelo, en delphi me funciona sin problemas. >>> >>> Julio >>> >>> >>> Reynaldo wrote: >>> >>> >>> >>>> Hola Julio, >>>> Ms.C. Julio Oscar Peñarroche Gómez escribió: >>>> >>>> >>>> >>>>> Hola, es posible que no me explicara bien, lo que yo deseo es poder >>>>> ejecutar un código determinado cada x tiempo, el ejemplo a lo mejor no >>>>> es el >>>>> más correcto debido a que me inicio en el python y la programación en >>>>> software libre pero el error que me da es el siguiente: >>>>> >>>>> Fatal Python error: deallocating None >>>>> Cancelado >>>>> >>>>> No es necesario utilizar hilos para lo que quieres.. >>>>> >>>>> >>>> import time >>>> from parport import ParallelPort >>>> >>>> def main(): >>>> p = ParallelPort('0x378') >>>> p.write(0) >>>> while 1: >>>> p.write(255) >>>> print 'Escribe 1 en el puerto' >>>> time.sleep(3) >>>> >>>> main() >>>> >>>> Saludos, >>>> Reynaldo >>>> >>>> >>>> >>>>> Gracias >>>>> >>>>> Diego Sosa wrote: >>>>> >>>>> >>>>> >>>>>> En Fri, 04 Jul 2008 16:49:40 -0200, Ms.C. Julio Oscar Peñarroche Gómez >>>>>> < >>>>>> julio.penarroche en etecsa.cu> escribió: >>>>>> >>>>>> Me estoy iniciando en python y necesito saber como programar un timer >>>>>> >>>>>> >>>>>>> que me ejecute cada cierto tiempo un código determinado, he buscado >>>>>>> en >>>>>>> Internet y los ejemplos que he encontrado son con hilos que algunos >>>>>>> me han >>>>>>> funcionado, pero cuando pongo a correr mi código explota. >>>>>>> >>>>>>> >>>>>>> >>>>>> Los hilos no funcionan al ejecutar desde el IDLE... quizás sea eso lo >>>>>> que te pasó. >>>>>> >>>>>> http://wiki.python.org/moin/ThreadProgramming >>>>>> http://www.devshed.com/c/a/Python/Basic-Threading-in-Python/ >>>>>> >>>>>> >>>>>> >>>>>> ------------------------------------------------------------------------ >>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> 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 > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From julio.penarroche en etecsa.cu Mon Jul 7 20:31:58 2008 From: julio.penarroche en etecsa.cu (=?ISO-8859-1?Q?=22Ms=2EC=2E_Julio_Oscar_Pe=F1arroche_G=F3me?= =?ISO-8859-1?Q?z=22?=) Date: Mon, 07 Jul 2008 14:31:58 -0400 Subject: [Probablemente Spam] Sobre timer In-Reply-To: References: <486E70C4.7030301@etecsa.cu> <4872390D.1010909@etecsa.cu> <48723C77.3040401@gmail.com> <48725268.4090004@etecsa.cu> <48725EA6.4080809@etecsa.cu> Message-ID: <4872611E.5050104@etecsa.cu> Estoy de acuerdo pero me sigue dando el mismo error. *Fatal Python error: deallocating None Cancelado * Porque no se Julio Jose Caballero wrote: > En mi opinión, la forma que apunta Reynaldo es (o debería ser) la más > fácil... bastante parecida a algún ejemplo que he visto buscando en google. > > > > El día 7 de julio de 2008 14:21, "Ms.C. Julio Oscar Peñarroche Gómez" < > julio.penarroche en etecsa.cu> escribió: > > >> Hola Jose, disculpa si no te contesté, realmente la forma recursiva no es >> la que voy a emplear y el puerto no es una cadena es un número, como dije en >> el mensaje anterior en lenguajes sobre windows tengo bastante experiencia y >> en el manejo del puerto también. Solo quiero lograr que se escriba el valor >> 255 repetidamente cada cierto tiempo en el puerto, cosa esta que lograba de >> forma fácil en windows. >> >> Julio >> >> >> Jose Caballero wrote: >> >> >>> Hola de nuevo. >>> >>> Sigo pensando que la forma recursiva de tu programa no es buena. Pero >>> bueno, >>> si te gusta, no tengo inconveniente. >>> Por otro lado, ¿estás seguro de que el puerto se pasa como una cadena de >>> caracteres y no como un entero? Veo en tu código >>> >>> p = ParallelPort('0x378') >>> >>> donde '0x378' es un string, no un entero. ¿Es así? >>> >>> >>> Saludos, >>> Jose >>> >>> >>> >>> >>> >>> El día 7 de julio de 2008 13:29, "Ms.C. Julio Oscar Peñarroche Gómez" < >>> julio.penarroche en etecsa.cu> escribió: >>> >>> >>> >>> >>>> Gracias a todos los que me han respondido, Reynaldo estuve probando el >>>> código que enviastes y me sigue dando el mismo error cuando lleva un >>>> tiempo >>>> ejecutandoce >>>> >>>> *Fatal Python error: deallocating None >>>> Cancelado >>>> >>>> *Que quiero lograr yo exactamente, provengo de la programación en windows >>>> y >>>> he trabajado con delphi, .net entre otros, en estos lenguajes que son >>>> visuales existen componentes timer que uno le define el tiempo que quiere >>>> que se ejecute y este lo hace, mi interés es escribir cada cierto tiempo >>>> el >>>> dato 255 en el puerto paralelo, en delphi me funciona sin problemas. >>>> >>>> Julio >>>> >>>> >>>> Reynaldo wrote: >>>> >>>> >>>> >>>> >>>>> Hola Julio, >>>>> Ms.C. Julio Oscar Peñarroche Gómez escribió: >>>>> >>>>> >>>>> >>>>> >>>>>> Hola, es posible que no me explicara bien, lo que yo deseo es poder >>>>>> ejecutar un código determinado cada x tiempo, el ejemplo a lo mejor no >>>>>> es el >>>>>> más correcto debido a que me inicio en el python y la programación en >>>>>> software libre pero el error que me da es el siguiente: >>>>>> >>>>>> Fatal Python error: deallocating None >>>>>> Cancelado >>>>>> >>>>>> No es necesario utilizar hilos para lo que quieres.. >>>>>> >>>>>> >>>>>> >>>>> import time >>>>> from parport import ParallelPort >>>>> >>>>> def main(): >>>>> p = ParallelPort('0x378') >>>>> p.write(0) >>>>> while 1: >>>>> p.write(255) >>>>> print 'Escribe 1 en el puerto' >>>>> time.sleep(3) >>>>> >>>>> main() >>>>> >>>>> Saludos, >>>>> Reynaldo >>>>> >>>>> >>>>> >>>>> >>>>>> Gracias >>>>>> >>>>>> Diego Sosa wrote: >>>>>> >>>>>> >>>>>> >>>>>> >>>>>>> En Fri, 04 Jul 2008 16:49:40 -0200, Ms.C. Julio Oscar Peñarroche Gómez >>>>>>> < >>>>>>> julio.penarroche en etecsa.cu> escribió: >>>>>>> >>>>>>> Me estoy iniciando en python y necesito saber como programar un timer >>>>>>> >>>>>>> >>>>>>> >>>>>>>> que me ejecute cada cierto tiempo un código determinado, he buscado >>>>>>>> en >>>>>>>> Internet y los ejemplos que he encontrado son con hilos que algunos >>>>>>>> me han >>>>>>>> funcionado, pero cuando pongo a correr mi código explota. >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> Los hilos no funcionan al ejecutar desde el IDLE... quizás sea eso lo >>>>>>> que te pasó. >>>>>>> >>>>>>> http://wiki.python.org/moin/ThreadProgramming >>>>>>> http://www.devshed.com/c/a/Python/Basic-Threading-in-Python/ >>>>>>> >>>>>>> >>>>>>> >>>>>>> ------------------------------------------------------------------------ >>>>>>> >>>>>>> >>>>>>> _______________________________________________ >>>>>>> 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 >> >> > _______________________________________________ > 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 jcaballero.hep en gmail.com Mon Jul 7 20:44:14 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Mon, 7 Jul 2008 14:44:14 -0400 Subject: [Probablemente Spam] Sobre timer In-Reply-To: <4872611E.5050104@etecsa.cu> References: <486E70C4.7030301@etecsa.cu> <4872390D.1010909@etecsa.cu> <48723C77.3040401@gmail.com> <48725268.4090004@etecsa.cu> <48725EA6.4080809@etecsa.cu> <4872611E.5050104@etecsa.cu> Message-ID: Te funciona el ejemplo que viene en este link? http://devpower.blogsite.org/index.php/blog/show/Python-Parport-Library.html El día 7 de julio de 2008 14:31, "Ms.C. Julio Oscar Peñarroche Gómez" < julio.penarroche en etecsa.cu> escribió: > Estoy de acuerdo pero me sigue dando el mismo error. > > *Fatal Python error: deallocating None > Cancelado > * > Porque no se > > Julio > > > Jose Caballero wrote: > >> En mi opinión, la forma que apunta Reynaldo es (o debería ser) la más >> fácil... bastante parecida a algún ejemplo que he visto buscando en >> google. >> >> >> >> El día 7 de julio de 2008 14:21, "Ms.C. Julio Oscar Peñarroche Gómez" < >> julio.penarroche en etecsa.cu> escribió: >> >> >> >>> Hola Jose, disculpa si no te contesté, realmente la forma recursiva no es >>> la que voy a emplear y el puerto no es una cadena es un número, como dije >>> en >>> el mensaje anterior en lenguajes sobre windows tengo bastante experiencia >>> y >>> en el manejo del puerto también. Solo quiero lograr que se escriba el >>> valor >>> 255 repetidamente cada cierto tiempo en el puerto, cosa esta que lograba >>> de >>> forma fácil en windows. >>> >>> Julio >>> >>> >>> Jose Caballero wrote: >>> >>> >>> >>>> Hola de nuevo. >>>> >>>> Sigo pensando que la forma recursiva de tu programa no es buena. Pero >>>> bueno, >>>> si te gusta, no tengo inconveniente. >>>> Por otro lado, ¿estás seguro de que el puerto se pasa como una cadena de >>>> caracteres y no como un entero? Veo en tu código >>>> >>>> p = ParallelPort('0x378') >>>> >>>> donde '0x378' es un string, no un entero. ¿Es así? >>>> >>>> >>>> Saludos, >>>> Jose >>>> >>>> >>>> >>>> >>>> >>>> El día 7 de julio de 2008 13:29, "Ms.C. Julio Oscar Peñarroche Gómez" < >>>> julio.penarroche en etecsa.cu> escribió: >>>> >>>> >>>> >>>> >>>> >>>>> Gracias a todos los que me han respondido, Reynaldo estuve probando el >>>>> código que enviastes y me sigue dando el mismo error cuando lleva un >>>>> tiempo >>>>> ejecutandoce >>>>> >>>>> *Fatal Python error: deallocating None >>>>> Cancelado >>>>> >>>>> *Que quiero lograr yo exactamente, provengo de la programación en >>>>> windows >>>>> y >>>>> he trabajado con delphi, .net entre otros, en estos lenguajes que son >>>>> visuales existen componentes timer que uno le define el tiempo que >>>>> quiere >>>>> que se ejecute y este lo hace, mi interés es escribir cada cierto >>>>> tiempo >>>>> el >>>>> dato 255 en el puerto paralelo, en delphi me funciona sin problemas. >>>>> >>>>> Julio >>>>> >>>>> >>>>> Reynaldo wrote: >>>>> >>>>> >>>>> >>>>> >>>>> >>>>>> Hola Julio, >>>>>> Ms.C. Julio Oscar Peñarroche Gómez escribió: >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>>> Hola, es posible que no me explicara bien, lo que yo deseo es poder >>>>>>> ejecutar un código determinado cada x tiempo, el ejemplo a lo mejor >>>>>>> no >>>>>>> es el >>>>>>> más correcto debido a que me inicio en el python y la programación en >>>>>>> software libre pero el error que me da es el siguiente: >>>>>>> >>>>>>> Fatal Python error: deallocating None >>>>>>> Cancelado >>>>>>> >>>>>>> No es necesario utilizar hilos para lo que quieres.. >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>> import time >>>>>> from parport import ParallelPort >>>>>> >>>>>> def main(): >>>>>> p = ParallelPort('0x378') >>>>>> p.write(0) >>>>>> while 1: >>>>>> p.write(255) >>>>>> print 'Escribe 1 en el puerto' >>>>>> time.sleep(3) >>>>>> >>>>>> main() >>>>>> >>>>>> Saludos, >>>>>> Reynaldo >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>>> Gracias >>>>>>> >>>>>>> Diego Sosa wrote: >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>>> En Fri, 04 Jul 2008 16:49:40 -0200, Ms.C. Julio Oscar Peñarroche >>>>>>>> Gómez >>>>>>>> < >>>>>>>> julio.penarroche en etecsa.cu> escribió: >>>>>>>> >>>>>>>> Me estoy iniciando en python y necesito saber como programar un >>>>>>>> timer >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> que me ejecute cada cierto tiempo un código determinado, he buscado >>>>>>>>> en >>>>>>>>> Internet y los ejemplos que he encontrado son con hilos que algunos >>>>>>>>> me han >>>>>>>>> funcionado, pero cuando pongo a correr mi código explota. >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>> Los hilos no funcionan al ejecutar desde el IDLE... quizás sea eso >>>>>>>> lo >>>>>>>> que te pasó. >>>>>>>> >>>>>>>> http://wiki.python.org/moin/ThreadProgramming >>>>>>>> http://www.devshed.com/c/a/Python/Basic-Threading-in-Python/ >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> ------------------------------------------------------------------------ >>>>>>>> >>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> 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 >>> >>> >>> >> _______________________________________________ >> 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 julio.penarroche en etecsa.cu Mon Jul 7 20:49:46 2008 From: julio.penarroche en etecsa.cu (=?ISO-8859-1?Q?=22Ms=2EC=2E_Julio_Oscar_Pe=F1arroche_G=F3me?= =?ISO-8859-1?Q?z=22?=) Date: Mon, 07 Jul 2008 14:49:46 -0400 Subject: [Probablemente Spam] Sobre timer In-Reply-To: References: <486E70C4.7030301@etecsa.cu> <4872390D.1010909@etecsa.cu> <48723C77.3040401@gmail.com> <48725268.4090004@etecsa.cu> <48725EA6.4080809@etecsa.cu> <4872611E.5050104@etecsa.cu> Message-ID: <4872654A.4040007@etecsa.cu> Si, realmente fue el ejemplo inicial que tomé y le hice alguna modificación, pero el problema ocurre cuando repito esto indefinidamente Julio Jose Caballero wrote: > Te funciona el ejemplo que viene en este link? > > http://devpower.blogsite.org/index.php/blog/show/Python-Parport-Library.html > > > > > > El día 7 de julio de 2008 14:31, "Ms.C. Julio Oscar Peñarroche Gómez" < > julio.penarroche en etecsa.cu> escribió: > > >> Estoy de acuerdo pero me sigue dando el mismo error. >> >> *Fatal Python error: deallocating None >> Cancelado >> * >> Porque no se >> >> Julio >> >> >> Jose Caballero wrote: >> >> >>> En mi opinión, la forma que apunta Reynaldo es (o debería ser) la más >>> fácil... bastante parecida a algún ejemplo que he visto buscando en >>> google. >>> >>> >>> >>> El día 7 de julio de 2008 14:21, "Ms.C. Julio Oscar Peñarroche Gómez" < >>> julio.penarroche en etecsa.cu> escribió: >>> >>> >>> >>> >>>> Hola Jose, disculpa si no te contesté, realmente la forma recursiva no es >>>> la que voy a emplear y el puerto no es una cadena es un número, como dije >>>> en >>>> el mensaje anterior en lenguajes sobre windows tengo bastante experiencia >>>> y >>>> en el manejo del puerto también. Solo quiero lograr que se escriba el >>>> valor >>>> 255 repetidamente cada cierto tiempo en el puerto, cosa esta que lograba >>>> de >>>> forma fácil en windows. >>>> >>>> Julio >>>> >>>> >>>> Jose Caballero wrote: >>>> >>>> >>>> >>>> >>>>> Hola de nuevo. >>>>> >>>>> Sigo pensando que la forma recursiva de tu programa no es buena. Pero >>>>> bueno, >>>>> si te gusta, no tengo inconveniente. >>>>> Por otro lado, ¿estás seguro de que el puerto se pasa como una cadena de >>>>> caracteres y no como un entero? Veo en tu código >>>>> >>>>> p = ParallelPort('0x378') >>>>> >>>>> donde '0x378' es un string, no un entero. ¿Es así? >>>>> >>>>> >>>>> Saludos, >>>>> Jose >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> El día 7 de julio de 2008 13:29, "Ms.C. Julio Oscar Peñarroche Gómez" < >>>>> julio.penarroche en etecsa.cu> escribió: >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>>> Gracias a todos los que me han respondido, Reynaldo estuve probando el >>>>>> código que enviastes y me sigue dando el mismo error cuando lleva un >>>>>> tiempo >>>>>> ejecutandoce >>>>>> >>>>>> *Fatal Python error: deallocating None >>>>>> Cancelado >>>>>> >>>>>> *Que quiero lograr yo exactamente, provengo de la programación en >>>>>> windows >>>>>> y >>>>>> he trabajado con delphi, .net entre otros, en estos lenguajes que son >>>>>> visuales existen componentes timer que uno le define el tiempo que >>>>>> quiere >>>>>> que se ejecute y este lo hace, mi interés es escribir cada cierto >>>>>> tiempo >>>>>> el >>>>>> dato 255 en el puerto paralelo, en delphi me funciona sin problemas. >>>>>> >>>>>> Julio >>>>>> >>>>>> >>>>>> Reynaldo wrote: >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>>> Hola Julio, >>>>>>> Ms.C. Julio Oscar Peñarroche Gómez escribió: >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>>> Hola, es posible que no me explicara bien, lo que yo deseo es poder >>>>>>>> ejecutar un código determinado cada x tiempo, el ejemplo a lo mejor >>>>>>>> no >>>>>>>> es el >>>>>>>> más correcto debido a que me inicio en el python y la programación en >>>>>>>> software libre pero el error que me da es el siguiente: >>>>>>>> >>>>>>>> Fatal Python error: deallocating None >>>>>>>> Cancelado >>>>>>>> >>>>>>>> No es necesario utilizar hilos para lo que quieres.. >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> import time >>>>>>> from parport import ParallelPort >>>>>>> >>>>>>> def main(): >>>>>>> p = ParallelPort('0x378') >>>>>>> p.write(0) >>>>>>> while 1: >>>>>>> p.write(255) >>>>>>> print 'Escribe 1 en el puerto' >>>>>>> time.sleep(3) >>>>>>> >>>>>>> main() >>>>>>> >>>>>>> Saludos, >>>>>>> Reynaldo >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>>> Gracias >>>>>>>> >>>>>>>> Diego Sosa wrote: >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> En Fri, 04 Jul 2008 16:49:40 -0200, Ms.C. Julio Oscar Peñarroche >>>>>>>>> Gómez >>>>>>>>> < >>>>>>>>> julio.penarroche en etecsa.cu> escribió: >>>>>>>>> >>>>>>>>> Me estoy iniciando en python y necesito saber como programar un >>>>>>>>> timer >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>>> que me ejecute cada cierto tiempo un código determinado, he buscado >>>>>>>>>> en >>>>>>>>>> Internet y los ejemplos que he encontrado son con hilos que algunos >>>>>>>>>> me han >>>>>>>>>> funcionado, pero cuando pongo a correr mi código explota. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>> Los hilos no funcionan al ejecutar desde el IDLE... quizás sea eso >>>>>>>>> lo >>>>>>>>> que te pasó. >>>>>>>>> >>>>>>>>> http://wiki.python.org/moin/ThreadProgramming >>>>>>>>> http://www.devshed.com/c/a/Python/Basic-Threading-in-Python/ >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> ------------------------------------------------------------------------ >>>>>>>>> >>>>>>>>> >>>>>>>>> _______________________________________________ >>>>>>>>> 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 >>>> >>>> >>>> >>>> >>> _______________________________________________ >>> 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 reynaldomic en gmail.com Mon Jul 7 20:48:59 2008 From: reynaldomic en gmail.com (Reynaldo) Date: Mon, 07 Jul 2008 13:48:59 -0500 Subject: [Probablemente Spam] Sobre timer In-Reply-To: <4872654A.4040007@etecsa.cu> References: <486E70C4.7030301@etecsa.cu> <4872390D.1010909@etecsa.cu> <48723C77.3040401@gmail.com> <48725268.4090004@etecsa.cu> <48725EA6.4080809@etecsa.cu> <4872611E.5050104@etecsa.cu> <4872654A.4040007@etecsa.cu> Message-ID: <4872651B.6030702@gmail.com> Ms.C. Julio Oscar Peñarroche Gómez escribió: > Si, realmente fue el ejemplo inicial que tomé y le hice alguna > modificación, pero el problema ocurre cuando repito esto indefinidamente Parece ser un error del módulo, en uno de los comentarios mencionan el mismo error cuando lo utilizan en un while. escribele al autor o prueba otra módulo[1] [1] http://pyserial.wiki.sourceforge.net/pyParallel Saludos, Reynaldo > > Julio > > Jose Caballero wrote: >> Te funciona el ejemplo que viene en este link? >> >> http://devpower.blogsite.org/index.php/blog/show/Python-Parport-Library.html >> >> >> >> >> >> >> El día 7 de julio de 2008 14:31, "Ms.C. Julio Oscar Peñarroche Gómez" < >> julio.penarroche en etecsa.cu> escribió: >> >> >>> Estoy de acuerdo pero me sigue dando el mismo error. >>> >>> *Fatal Python error: deallocating None >>> Cancelado >>> * >>> Porque no se >>> >>> Julio >>> >>> >>> Jose Caballero wrote: >>> >>> >>>> En mi opinión, la forma que apunta Reynaldo es (o debería ser) la más >>>> fácil... bastante parecida a algún ejemplo que he visto buscando en >>>> google. >>>> >>>> >>>> >>>> El día 7 de julio de 2008 14:21, "Ms.C. Julio Oscar Peñarroche >>>> Gómez" < >>>> julio.penarroche en etecsa.cu> escribió: >>>> >>>> >>>> >>>> >>>>> Hola Jose, disculpa si no te contesté, realmente la forma >>>>> recursiva no es >>>>> la que voy a emplear y el puerto no es una cadena es un número, >>>>> como dije >>>>> en >>>>> el mensaje anterior en lenguajes sobre windows tengo bastante >>>>> experiencia >>>>> y >>>>> en el manejo del puerto también. Solo quiero lograr que se >>>>> escriba el >>>>> valor >>>>> 255 repetidamente cada cierto tiempo en el puerto, cosa esta que >>>>> lograba >>>>> de >>>>> forma fácil en windows. >>>>> >>>>> Julio >>>>> >>>>> >>>>> Jose Caballero wrote: >>>>> >>>>> >>>>> >>>>> >>>>>> Hola de nuevo. >>>>>> >>>>>> Sigo pensando que la forma recursiva de tu programa no es buena. >>>>>> Pero >>>>>> bueno, >>>>>> si te gusta, no tengo inconveniente. >>>>>> Por otro lado, ¿estás seguro de que el puerto se pasa como una >>>>>> cadena de >>>>>> caracteres y no como un entero? Veo en tu código >>>>>> >>>>>> p = ParallelPort('0x378') >>>>>> >>>>>> donde '0x378' es un string, no un entero. ¿Es así? >>>>>> >>>>>> >>>>>> Saludos, >>>>>> Jose >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> El día 7 de julio de 2008 13:29, "Ms.C. Julio Oscar Peñarroche >>>>>> Gómez" < >>>>>> julio.penarroche en etecsa.cu> escribió: >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>>> Gracias a todos los que me han respondido, Reynaldo estuve >>>>>>> probando el >>>>>>> código que enviastes y me sigue dando el mismo error cuando >>>>>>> lleva un >>>>>>> tiempo >>>>>>> ejecutandoce >>>>>>> >>>>>>> *Fatal Python error: deallocating None >>>>>>> Cancelado >>>>>>> >>>>>>> *Que quiero lograr yo exactamente, provengo de la programación en >>>>>>> windows >>>>>>> y >>>>>>> he trabajado con delphi, .net entre otros, en estos lenguajes >>>>>>> que son >>>>>>> visuales existen componentes timer que uno le define el tiempo que >>>>>>> quiere >>>>>>> que se ejecute y este lo hace, mi interés es escribir cada cierto >>>>>>> tiempo >>>>>>> el >>>>>>> dato 255 en el puerto paralelo, en delphi me funciona sin >>>>>>> problemas. >>>>>>> >>>>>>> Julio >>>>>>> >>>>>>> >>>>>>> Reynaldo wrote: >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>>> Hola Julio, >>>>>>>> Ms.C. Julio Oscar Peñarroche Gómez escribió: >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> Hola, es posible que no me explicara bien, lo que yo deseo es >>>>>>>>> poder >>>>>>>>> ejecutar un código determinado cada x tiempo, el ejemplo a lo >>>>>>>>> mejor >>>>>>>>> no >>>>>>>>> es el >>>>>>>>> más correcto debido a que me inicio en el python y la >>>>>>>>> programación en >>>>>>>>> software libre pero el error que me da es el siguiente: >>>>>>>>> >>>>>>>>> Fatal Python error: deallocating None >>>>>>>>> Cancelado >>>>>>>>> >>>>>>>>> No es necesario utilizar hilos para lo que quieres.. >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>> import time >>>>>>>> from parport import ParallelPort >>>>>>>> >>>>>>>> def main(): >>>>>>>> p = ParallelPort('0x378') >>>>>>>> p.write(0) >>>>>>>> while 1: >>>>>>>> p.write(255) >>>>>>>> print 'Escribe 1 en el puerto' >>>>>>>> time.sleep(3) >>>>>>>> >>>>>>>> main() >>>>>>>> >>>>>>>> Saludos, >>>>>>>> Reynaldo >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> Gracias >>>>>>>>> >>>>>>>>> Diego Sosa wrote: >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>>> En Fri, 04 Jul 2008 16:49:40 -0200, Ms.C. Julio Oscar Peñarroche >>>>>>>>>> Gómez >>>>>>>>>> < >>>>>>>>>> julio.penarroche en etecsa.cu> escribió: >>>>>>>>>> >>>>>>>>>> Me estoy iniciando en python y necesito saber como programar un >>>>>>>>>> timer >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>>> que me ejecute cada cierto tiempo un código determinado, he >>>>>>>>>>> buscado >>>>>>>>>>> en >>>>>>>>>>> Internet y los ejemplos que he encontrado son con hilos que >>>>>>>>>>> algunos >>>>>>>>>>> me han >>>>>>>>>>> funcionado, pero cuando pongo a correr mi código explota. >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> Los hilos no funcionan al ejecutar desde el IDLE... quizás >>>>>>>>>> sea eso >>>>>>>>>> lo >>>>>>>>>> que te pasó. >>>>>>>>>> >>>>>>>>>> http://wiki.python.org/moin/ThreadProgramming >>>>>>>>>> http://www.devshed.com/c/a/Python/Basic-Threading-in-Python/ >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> ------------------------------------------------------------------------ >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> _______________________________________________ >>>>>>>>>> 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 >>>>> >>>>> >>>>> >>>>> >>>> _______________________________________________ >>>> 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 jcaballero.hep en gmail.com Mon Jul 7 20:52:38 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Mon, 7 Jul 2008 14:52:38 -0400 Subject: [Probablemente Spam] Sobre timer In-Reply-To: <4872654A.4040007@etecsa.cu> References: <486E70C4.7030301@etecsa.cu> <4872390D.1010909@etecsa.cu> <48723C77.3040401@gmail.com> <48725268.4090004@etecsa.cu> <48725EA6.4080809@etecsa.cu> <4872611E.5050104@etecsa.cu> <4872654A.4040007@etecsa.cu> Message-ID: indefinidamente o mas de una vez? Funciona si intentas escribir 2 veces? El día 7 de julio de 2008 14:49, "Ms.C. Julio Oscar Peñarroche Gómez" < julio.penarroche en etecsa.cu> escribió: > Si, realmente fue el ejemplo inicial que tomé y le hice alguna > modificación, pero el problema ocurre cuando repito esto indefinidamente > > Julio > > > Jose Caballero wrote: > >> Te funciona el ejemplo que viene en este link? >> >> >> http://devpower.blogsite.org/index.php/blog/show/Python-Parport-Library.html >> >> >> >> >> >> El día 7 de julio de 2008 14:31, "Ms.C. Julio Oscar Peñarroche Gómez" < >> julio.penarroche en etecsa.cu> escribió: >> >> >> >>> Estoy de acuerdo pero me sigue dando el mismo error. >>> >>> *Fatal Python error: deallocating None >>> Cancelado >>> * >>> Porque no se >>> >>> Julio >>> >>> >>> Jose Caballero wrote: >>> >>> >>> >>>> En mi opinión, la forma que apunta Reynaldo es (o debería ser) la más >>>> fácil... bastante parecida a algún ejemplo que he visto buscando en >>>> google. >>>> >>>> >>>> >>>> El día 7 de julio de 2008 14:21, "Ms.C. Julio Oscar Peñarroche Gómez" < >>>> julio.penarroche en etecsa.cu> escribió: >>>> >>>> >>>> >>>> >>>> >>>>> Hola Jose, disculpa si no te contesté, realmente la forma recursiva no >>>>> es >>>>> la que voy a emplear y el puerto no es una cadena es un número, como >>>>> dije >>>>> en >>>>> el mensaje anterior en lenguajes sobre windows tengo bastante >>>>> experiencia >>>>> y >>>>> en el manejo del puerto también. Solo quiero lograr que se escriba el >>>>> valor >>>>> 255 repetidamente cada cierto tiempo en el puerto, cosa esta que >>>>> lograba >>>>> de >>>>> forma fácil en windows. >>>>> >>>>> Julio >>>>> >>>>> >>>>> Jose Caballero wrote: >>>>> >>>>> >>>>> >>>>> >>>>> >>>>>> Hola de nuevo. >>>>>> >>>>>> Sigo pensando que la forma recursiva de tu programa no es buena. Pero >>>>>> bueno, >>>>>> si te gusta, no tengo inconveniente. >>>>>> Por otro lado, ¿estás seguro de que el puerto se pasa como una cadena >>>>>> de >>>>>> caracteres y no como un entero? Veo en tu código >>>>>> >>>>>> p = ParallelPort('0x378') >>>>>> >>>>>> donde '0x378' es un string, no un entero. ¿Es así? >>>>>> >>>>>> >>>>>> Saludos, >>>>>> Jose >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> El día 7 de julio de 2008 13:29, "Ms.C. Julio Oscar Peñarroche Gómez" >>>>>> < >>>>>> julio.penarroche en etecsa.cu> escribió: >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>>> Gracias a todos los que me han respondido, Reynaldo estuve probando >>>>>>> el >>>>>>> código que enviastes y me sigue dando el mismo error cuando lleva un >>>>>>> tiempo >>>>>>> ejecutandoce >>>>>>> >>>>>>> *Fatal Python error: deallocating None >>>>>>> Cancelado >>>>>>> >>>>>>> *Que quiero lograr yo exactamente, provengo de la programación en >>>>>>> windows >>>>>>> y >>>>>>> he trabajado con delphi, .net entre otros, en estos lenguajes que son >>>>>>> visuales existen componentes timer que uno le define el tiempo que >>>>>>> quiere >>>>>>> que se ejecute y este lo hace, mi interés es escribir cada cierto >>>>>>> tiempo >>>>>>> el >>>>>>> dato 255 en el puerto paralelo, en delphi me funciona sin problemas. >>>>>>> >>>>>>> Julio >>>>>>> >>>>>>> >>>>>>> Reynaldo wrote: >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>>> Hola Julio, >>>>>>>> Ms.C. Julio Oscar Peñarroche Gómez escribió: >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> Hola, es posible que no me explicara bien, lo que yo deseo es poder >>>>>>>>> ejecutar un código determinado cada x tiempo, el ejemplo a lo mejor >>>>>>>>> no >>>>>>>>> es el >>>>>>>>> más correcto debido a que me inicio en el python y la programación >>>>>>>>> en >>>>>>>>> software libre pero el error que me da es el siguiente: >>>>>>>>> >>>>>>>>> Fatal Python error: deallocating None >>>>>>>>> Cancelado >>>>>>>>> >>>>>>>>> No es necesario utilizar hilos para lo que quieres.. >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>> import time >>>>>>>> from parport import ParallelPort >>>>>>>> >>>>>>>> def main(): >>>>>>>> p = ParallelPort('0x378') >>>>>>>> p.write(0) >>>>>>>> while 1: >>>>>>>> p.write(255) >>>>>>>> print 'Escribe 1 en el puerto' >>>>>>>> time.sleep(3) >>>>>>>> >>>>>>>> main() >>>>>>>> >>>>>>>> Saludos, >>>>>>>> Reynaldo >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> Gracias >>>>>>>>> >>>>>>>>> Diego Sosa wrote: >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>>> En Fri, 04 Jul 2008 16:49:40 -0200, Ms.C. Julio Oscar Peñarroche >>>>>>>>>> Gómez >>>>>>>>>> < >>>>>>>>>> julio.penarroche en etecsa.cu> escribió: >>>>>>>>>> >>>>>>>>>> Me estoy iniciando en python y necesito saber como programar un >>>>>>>>>> timer >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>>> que me ejecute cada cierto tiempo un código determinado, he >>>>>>>>>>> buscado >>>>>>>>>>> en >>>>>>>>>>> Internet y los ejemplos que he encontrado son con hilos que >>>>>>>>>>> algunos >>>>>>>>>>> me han >>>>>>>>>>> funcionado, pero cuando pongo a correr mi código explota. >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> Los hilos no funcionan al ejecutar desde el IDLE... quizás sea eso >>>>>>>>>> lo >>>>>>>>>> que te pasó. >>>>>>>>>> >>>>>>>>>> http://wiki.python.org/moin/ThreadProgramming >>>>>>>>>> http://www.devshed.com/c/a/Python/Basic-Threading-in-Python/ >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> ------------------------------------------------------------------------ >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> _______________________________________________ >>>>>>>>>> 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 >>>>> >>>>> >>>>> >>>>> >>>>> >>>> _______________________________________________ >>>> 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 julio.penarroche en etecsa.cu Mon Jul 7 21:30:58 2008 From: julio.penarroche en etecsa.cu (=?ISO-8859-1?Q?=22Ms=2EC=2E_Julio_Oscar_Pe=F1arroche_G=F3me?= =?ISO-8859-1?Q?z=22?=) Date: Mon, 07 Jul 2008 15:30:58 -0400 Subject: [Probablemente Spam] Sobre timer In-Reply-To: References: <486E70C4.7030301@etecsa.cu> <4872390D.1010909@etecsa.cu> <48723C77.3040401@gmail.com> <48725268.4090004@etecsa.cu> <48725EA6.4080809@etecsa.cu> <4872611E.5050104@etecsa.cu> <4872654A.4040007@etecsa.cu> Message-ID: <48726EF2.8050304@etecsa.cu> si indefinidamente hasta que le de la orden de detenerce Julio Jose Caballero wrote: > indefinidamente o mas de una vez? > Funciona si intentas escribir 2 veces? > > > > El día 7 de julio de 2008 14:49, "Ms.C. Julio Oscar Peñarroche Gómez" < > julio.penarroche en etecsa.cu> escribió: > > >> Si, realmente fue el ejemplo inicial que tomé y le hice alguna >> modificación, pero el problema ocurre cuando repito esto indefinidamente >> >> Julio >> >> >> Jose Caballero wrote: >> >> >>> Te funciona el ejemplo que viene en este link? >>> >>> >>> http://devpower.blogsite.org/index.php/blog/show/Python-Parport-Library.html >>> >>> >>> >>> >>> >>> El día 7 de julio de 2008 14:31, "Ms.C. Julio Oscar Peñarroche Gómez" < >>> julio.penarroche en etecsa.cu> escribió: >>> >>> >>> >>> >>>> Estoy de acuerdo pero me sigue dando el mismo error. >>>> >>>> *Fatal Python error: deallocating None >>>> Cancelado >>>> * >>>> Porque no se >>>> >>>> Julio >>>> >>>> >>>> Jose Caballero wrote: >>>> >>>> >>>> >>>> >>>>> En mi opinión, la forma que apunta Reynaldo es (o debería ser) la más >>>>> fácil... bastante parecida a algún ejemplo que he visto buscando en >>>>> google. >>>>> >>>>> >>>>> >>>>> El día 7 de julio de 2008 14:21, "Ms.C. Julio Oscar Peñarroche Gómez" < >>>>> julio.penarroche en etecsa.cu> escribió: >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>>> Hola Jose, disculpa si no te contesté, realmente la forma recursiva no >>>>>> es >>>>>> la que voy a emplear y el puerto no es una cadena es un número, como >>>>>> dije >>>>>> en >>>>>> el mensaje anterior en lenguajes sobre windows tengo bastante >>>>>> experiencia >>>>>> y >>>>>> en el manejo del puerto también. Solo quiero lograr que se escriba el >>>>>> valor >>>>>> 255 repetidamente cada cierto tiempo en el puerto, cosa esta que >>>>>> lograba >>>>>> de >>>>>> forma fácil en windows. >>>>>> >>>>>> Julio >>>>>> >>>>>> >>>>>> Jose Caballero wrote: >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>>> Hola de nuevo. >>>>>>> >>>>>>> Sigo pensando que la forma recursiva de tu programa no es buena. Pero >>>>>>> bueno, >>>>>>> si te gusta, no tengo inconveniente. >>>>>>> Por otro lado, ¿estás seguro de que el puerto se pasa como una cadena >>>>>>> de >>>>>>> caracteres y no como un entero? Veo en tu código >>>>>>> >>>>>>> p = ParallelPort('0x378') >>>>>>> >>>>>>> donde '0x378' es un string, no un entero. ¿Es así? >>>>>>> >>>>>>> >>>>>>> Saludos, >>>>>>> Jose >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> El día 7 de julio de 2008 13:29, "Ms.C. Julio Oscar Peñarroche Gómez" >>>>>>> < >>>>>>> julio.penarroche en etecsa.cu> escribió: >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>>> Gracias a todos los que me han respondido, Reynaldo estuve probando >>>>>>>> el >>>>>>>> código que enviastes y me sigue dando el mismo error cuando lleva un >>>>>>>> tiempo >>>>>>>> ejecutandoce >>>>>>>> >>>>>>>> *Fatal Python error: deallocating None >>>>>>>> Cancelado >>>>>>>> >>>>>>>> *Que quiero lograr yo exactamente, provengo de la programación en >>>>>>>> windows >>>>>>>> y >>>>>>>> he trabajado con delphi, .net entre otros, en estos lenguajes que son >>>>>>>> visuales existen componentes timer que uno le define el tiempo que >>>>>>>> quiere >>>>>>>> que se ejecute y este lo hace, mi interés es escribir cada cierto >>>>>>>> tiempo >>>>>>>> el >>>>>>>> dato 255 en el puerto paralelo, en delphi me funciona sin problemas. >>>>>>>> >>>>>>>> Julio >>>>>>>> >>>>>>>> >>>>>>>> Reynaldo wrote: >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> Hola Julio, >>>>>>>>> Ms.C. Julio Oscar Peñarroche Gómez escribió: >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>>> Hola, es posible que no me explicara bien, lo que yo deseo es poder >>>>>>>>>> ejecutar un código determinado cada x tiempo, el ejemplo a lo mejor >>>>>>>>>> no >>>>>>>>>> es el >>>>>>>>>> más correcto debido a que me inicio en el python y la programación >>>>>>>>>> en >>>>>>>>>> software libre pero el error que me da es el siguiente: >>>>>>>>>> >>>>>>>>>> Fatal Python error: deallocating None >>>>>>>>>> Cancelado >>>>>>>>>> >>>>>>>>>> No es necesario utilizar hilos para lo que quieres.. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>> import time >>>>>>>>> from parport import ParallelPort >>>>>>>>> >>>>>>>>> def main(): >>>>>>>>> p = ParallelPort('0x378') >>>>>>>>> p.write(0) >>>>>>>>> while 1: >>>>>>>>> p.write(255) >>>>>>>>> print 'Escribe 1 en el puerto' >>>>>>>>> time.sleep(3) >>>>>>>>> >>>>>>>>> main() >>>>>>>>> >>>>>>>>> Saludos, >>>>>>>>> Reynaldo >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>>> Gracias >>>>>>>>>> >>>>>>>>>> Diego Sosa wrote: >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>>> En Fri, 04 Jul 2008 16:49:40 -0200, Ms.C. Julio Oscar Peñarroche >>>>>>>>>>> Gómez >>>>>>>>>>> < >>>>>>>>>>> julio.penarroche en etecsa.cu> escribió: >>>>>>>>>>> >>>>>>>>>>> Me estoy iniciando en python y necesito saber como programar un >>>>>>>>>>> timer >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>>> que me ejecute cada cierto tiempo un código determinado, he >>>>>>>>>>>> buscado >>>>>>>>>>>> en >>>>>>>>>>>> Internet y los ejemplos que he encontrado son con hilos que >>>>>>>>>>>> algunos >>>>>>>>>>>> me han >>>>>>>>>>>> funcionado, pero cuando pongo a correr mi código explota. >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>> Los hilos no funcionan al ejecutar desde el IDLE... quizás sea eso >>>>>>>>>>> lo >>>>>>>>>>> que te pasó. >>>>>>>>>>> >>>>>>>>>>> http://wiki.python.org/moin/ThreadProgramming >>>>>>>>>>> http://www.devshed.com/c/a/Python/Basic-Threading-in-Python/ >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> ------------------------------------------------------------------------ >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> _______________________________________________ >>>>>>>>>>> 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 >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>> _______________________________________________ >>>>> 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 julio.penarroche en etecsa.cu Mon Jul 7 21:33:28 2008 From: julio.penarroche en etecsa.cu (=?ISO-8859-1?Q?=22Ms=2EC=2E_Julio_Oscar_Pe=F1arroche_G=F3me?= =?ISO-8859-1?Q?z=22?=) Date: Mon, 07 Jul 2008 15:33:28 -0400 Subject: [Probablemente Spam] Sobre timer In-Reply-To: <4872651B.6030702@gmail.com> References: <486E70C4.7030301@etecsa.cu> <4872390D.1010909@etecsa.cu> <48723C77.3040401@gmail.com> <48725268.4090004@etecsa.cu> <48725EA6.4080809@etecsa.cu> <4872611E.5050104@etecsa.cu> <4872654A.4040007@etecsa.cu> <4872651B.6030702@gmail.com> Message-ID: <48726F88.4030704@etecsa.cu> Reynaldo Ya probé el otro módulo pero me dice que no encuentra el módulo con el nombre parallel Julio Reynaldo wrote: > Ms.C. Julio Oscar Peñarroche Gómez escribió: >> Si, realmente fue el ejemplo inicial que tomé y le hice alguna >> modificación, pero el problema ocurre cuando repito esto indefinidamente > > Parece ser un error del módulo, en uno de los comentarios mencionan el > mismo error cuando lo utilizan en un while. > escribele al autor o prueba otra módulo[1] > > [1] http://pyserial.wiki.sourceforge.net/pyParallel > > Saludos, > Reynaldo >> >> Julio >> >> Jose Caballero wrote: >>> Te funciona el ejemplo que viene en este link? >>> >>> http://devpower.blogsite.org/index.php/blog/show/Python-Parport-Library.html >>> >>> >>> >>> >>> >>> >>> El día 7 de julio de 2008 14:31, "Ms.C. Julio Oscar Peñarroche Gómez" < >>> julio.penarroche en etecsa.cu> escribió: >>> >>> >>>> Estoy de acuerdo pero me sigue dando el mismo error. >>>> >>>> *Fatal Python error: deallocating None >>>> Cancelado >>>> * >>>> Porque no se >>>> >>>> Julio >>>> >>>> >>>> Jose Caballero wrote: >>>> >>>> >>>>> En mi opinión, la forma que apunta Reynaldo es (o debería ser) la más >>>>> fácil... bastante parecida a algún ejemplo que he visto buscando en >>>>> google. >>>>> >>>>> >>>>> >>>>> El día 7 de julio de 2008 14:21, "Ms.C. Julio Oscar Peñarroche >>>>> Gómez" < >>>>> julio.penarroche en etecsa.cu> escribió: >>>>> >>>>> >>>>> >>>>> >>>>>> Hola Jose, disculpa si no te contesté, realmente la forma >>>>>> recursiva no es >>>>>> la que voy a emplear y el puerto no es una cadena es un número, >>>>>> como dije >>>>>> en >>>>>> el mensaje anterior en lenguajes sobre windows tengo bastante >>>>>> experiencia >>>>>> y >>>>>> en el manejo del puerto también. Solo quiero lograr que se >>>>>> escriba el >>>>>> valor >>>>>> 255 repetidamente cada cierto tiempo en el puerto, cosa esta que >>>>>> lograba >>>>>> de >>>>>> forma fácil en windows. >>>>>> >>>>>> Julio >>>>>> >>>>>> >>>>>> Jose Caballero wrote: >>>>>> >>>>>> >>>>>> >>>>>> >>>>>>> Hola de nuevo. >>>>>>> >>>>>>> Sigo pensando que la forma recursiva de tu programa no es buena. >>>>>>> Pero >>>>>>> bueno, >>>>>>> si te gusta, no tengo inconveniente. >>>>>>> Por otro lado, ¿estás seguro de que el puerto se pasa como una >>>>>>> cadena de >>>>>>> caracteres y no como un entero? Veo en tu código >>>>>>> >>>>>>> p = ParallelPort('0x378') >>>>>>> >>>>>>> donde '0x378' es un string, no un entero. ¿Es así? >>>>>>> >>>>>>> >>>>>>> Saludos, >>>>>>> Jose >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> El día 7 de julio de 2008 13:29, "Ms.C. Julio Oscar Peñarroche >>>>>>> Gómez" < >>>>>>> julio.penarroche en etecsa.cu> escribió: >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>>> Gracias a todos los que me han respondido, Reynaldo estuve >>>>>>>> probando el >>>>>>>> código que enviastes y me sigue dando el mismo error cuando >>>>>>>> lleva un >>>>>>>> tiempo >>>>>>>> ejecutandoce >>>>>>>> >>>>>>>> *Fatal Python error: deallocating None >>>>>>>> Cancelado >>>>>>>> >>>>>>>> *Que quiero lograr yo exactamente, provengo de la programación en >>>>>>>> windows >>>>>>>> y >>>>>>>> he trabajado con delphi, .net entre otros, en estos lenguajes >>>>>>>> que son >>>>>>>> visuales existen componentes timer que uno le define el tiempo que >>>>>>>> quiere >>>>>>>> que se ejecute y este lo hace, mi interés es escribir cada cierto >>>>>>>> tiempo >>>>>>>> el >>>>>>>> dato 255 en el puerto paralelo, en delphi me funciona sin >>>>>>>> problemas. >>>>>>>> >>>>>>>> Julio >>>>>>>> >>>>>>>> >>>>>>>> Reynaldo wrote: >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> Hola Julio, >>>>>>>>> Ms.C. Julio Oscar Peñarroche Gómez escribió: >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>>> Hola, es posible que no me explicara bien, lo que yo deseo es >>>>>>>>>> poder >>>>>>>>>> ejecutar un código determinado cada x tiempo, el ejemplo a lo >>>>>>>>>> mejor >>>>>>>>>> no >>>>>>>>>> es el >>>>>>>>>> más correcto debido a que me inicio en el python y la >>>>>>>>>> programación en >>>>>>>>>> software libre pero el error que me da es el siguiente: >>>>>>>>>> >>>>>>>>>> Fatal Python error: deallocating None >>>>>>>>>> Cancelado >>>>>>>>>> >>>>>>>>>> No es necesario utilizar hilos para lo que quieres.. >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>> import time >>>>>>>>> from parport import ParallelPort >>>>>>>>> >>>>>>>>> def main(): >>>>>>>>> p = ParallelPort('0x378') >>>>>>>>> p.write(0) >>>>>>>>> while 1: >>>>>>>>> p.write(255) >>>>>>>>> print 'Escribe 1 en el puerto' >>>>>>>>> time.sleep(3) >>>>>>>>> >>>>>>>>> main() >>>>>>>>> >>>>>>>>> Saludos, >>>>>>>>> Reynaldo >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>>> Gracias >>>>>>>>>> >>>>>>>>>> Diego Sosa wrote: >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>>> En Fri, 04 Jul 2008 16:49:40 -0200, Ms.C. Julio Oscar >>>>>>>>>>> Peñarroche >>>>>>>>>>> Gómez >>>>>>>>>>> < >>>>>>>>>>> julio.penarroche en etecsa.cu> escribió: >>>>>>>>>>> >>>>>>>>>>> Me estoy iniciando en python y necesito saber como >>>>>>>>>>> programar un >>>>>>>>>>> timer >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>>> que me ejecute cada cierto tiempo un código determinado, he >>>>>>>>>>>> buscado >>>>>>>>>>>> en >>>>>>>>>>>> Internet y los ejemplos que he encontrado son con hilos que >>>>>>>>>>>> algunos >>>>>>>>>>>> me han >>>>>>>>>>>> funcionado, pero cuando pongo a correr mi código explota. >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>> Los hilos no funcionan al ejecutar desde el IDLE... quizás >>>>>>>>>>> sea eso >>>>>>>>>>> lo >>>>>>>>>>> que te pasó. >>>>>>>>>>> >>>>>>>>>>> http://wiki.python.org/moin/ThreadProgramming >>>>>>>>>>> http://www.devshed.com/c/a/Python/Basic-Threading-in-Python/ >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> ------------------------------------------------------------------------ >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> _______________________________________________ >>>>>>>>>>> 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 >>>>>> >>>>>> >>>>>> >>>>>> >>>>> _______________________________________________ >>>>> 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 jcaballero.hep en gmail.com Mon Jul 7 22:35:12 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Mon, 7 Jul 2008 16:35:12 -0400 Subject: duda sobre django: al leer una base de datos me devuelve una lista vacia Message-ID: Hola, estoy intentado seguir la documentación de los capítulos 5 y 16 del libro de django, pero me he atascado. Quiero poder leer la información contenida en una base de datos que ya existe. Los pasos que he ejecutado han sido: 1) editar el fichero settings.py para especficar usuario, password, nombre de la base de datos y host. Lo he verificado ejecutando $ python manage.py shell from django.db import connection cursor = connection.cursor() y no pasó nada (según el libro, eso significa que todo está bien configurado) 2) python manage.py startapp test1 3) para crear el contenido del fichero model.py he usado el comando python manage.py inspectdb > test1/modes.py esto me ha creado un fichero con una réplica de la estructura de la base de datos. He borrado todo excepto la primera clase (para leer solo una tabla). 4) Intento lo siguiente [1]: $ python manage.py shell from test1.models import TableName list = TableName.objects.all() list el resultado es una lista vacía. La DB no está vacía. De hecho, he probado con éxito a hacer lo siguiente: $ python import MySQLdb db = MySQLdb.connect(user='el_usuario', passwd='el_passwd', db='la_db', host='el_host')' cursor = db.cursor() cursor.execute('SELECT * FROM TableName') list = [row[0] for row in cursor.fetchall()] list y me devuelve todo el contenido de la primera columna en esa tabla. Esto me asegura que la DB no está vacía. Bueno, el nombre de la tabla (que he escrito como TableName en ambos casos) varía ligeramente porque django crea su propio nombre, bastante parecido pero no igual. Pero si entiendo bien la documentación, eso no importa pues la clase incluye la definición de una metaclase con el nombre real de la tabla en la DB. ¿Estoy en lo cierto? ¿Por qué obtengo una lista vacía con django? ¿Me he saltado alguna línea importante en el paso [1]? Cualquier ayuda será más que agradecida. Saludos, Jose _______________________________________________ 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 Jul 7 22:45:24 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Mon, 7 Jul 2008 16:45:24 -0400 Subject: duda sobre django: al leer una base de datos me devuelve una lista vacia In-Reply-To: References: Message-ID: Olvidé mencionar que la configuración del fichero settings.py la he verificado también con el comando python manage.py validate. El error no parece estar en los ficheros de configuración. El día 7 de julio de 2008 16:35, Jose Caballero escribió: > Hola, > > estoy intentado seguir la documentación de los capítulos 5 y 16 del libro > de django, pero me he atascado. Quiero poder leer la información contenida > en una base de datos que ya existe. > Los pasos que he ejecutado han sido: > > 1) editar el fichero settings.py para especficar usuario, password, nombre > de la base de datos y host. > Lo he verificado ejecutando > > $ python manage.py shell > from django.db import connection > cursor = connection.cursor() > > y no pasó nada (según el libro, eso significa que todo está bien > configurado) > > 2) python manage.py startapp test1 > > 3) para crear el contenido del fichero model.py he usado el comando > > python manage.py inspectdb > test1/modes.py > > esto me ha creado un fichero con una réplica de la estructura de la base de > datos. He borrado todo excepto la primera clase (para leer solo una tabla). > > 4) Intento lo siguiente [1]: > > $ python manage.py shell > from test1.models import TableName > list = TableName.objects.all() > list > > > el resultado es una lista vacía. La DB no está vacía. De hecho, he probado > con éxito a hacer lo siguiente: > > $ python > import MySQLdb > db = MySQLdb.connect(user='el_usuario', passwd='el_passwd', db='la_db', > host='el_host')' > cursor = db.cursor() > cursor.execute('SELECT * FROM TableName') > list = [row[0] for row in cursor.fetchall()] > list > > y me devuelve todo el contenido de la primera columna en esa tabla. Esto me > asegura que la DB no está vacía. > Bueno, el nombre de la tabla (que he escrito como TableName en ambos casos) > varía ligeramente porque django crea su propio nombre, bastante parecido > pero no igual. > Pero si entiendo bien la documentación, eso no importa pues la clase > incluye la definición de una metaclase con el nombre real de la tabla en la > DB. ¿Estoy en lo cierto? > > ¿Por qué obtengo una lista vacía con django? ¿Me he saltado alguna línea > importante en el paso [1]? > > > > > Cualquier ayuda será más que agradecida. > > Saludos, > Jose > > > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jcaballero.hep en gmail.com Tue Jul 8 00:10:51 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Mon, 7 Jul 2008 18:10:51 -0400 Subject: [Probablemente Spam] Sobre timer In-Reply-To: <48726EF2.8050304@etecsa.cu> References: <486E70C4.7030301@etecsa.cu> <48725268.4090004@etecsa.cu> <48725EA6.4080809@etecsa.cu> <4872611E.5050104@etecsa.cu> <4872654A.4040007@etecsa.cu> <48726EF2.8050304@etecsa.cu> Message-ID: mi pregunta era: has probado a escribir en el puerto 2 veces (y solo 2 veces) y funciona? El día 7 de julio de 2008 15:30, "Ms.C. Julio Oscar Peñarroche Gómez" < julio.penarroche en etecsa.cu> escribió: > si indefinidamente hasta que le de la orden de detenerce > > Julio > > > Jose Caballero wrote: > >> indefinidamente o mas de una vez? >> Funciona si intentas escribir 2 veces? >> >> >> >> El día 7 de julio de 2008 14:49, "Ms.C. Julio Oscar Peñarroche Gómez" < >> julio.penarroche en etecsa.cu> escribió: >> >> >> >>> Si, realmente fue el ejemplo inicial que tomé y le hice alguna >>> modificación, pero el problema ocurre cuando repito esto indefinidamente >>> >>> Julio >>> >>> >>> Jose Caballero wrote: >>> >>> >>> >>>> Te funciona el ejemplo que viene en este link? >>>> >>>> >>>> >>>> http://devpower.blogsite.org/index.php/blog/show/Python-Parport-Library.html >>>> >>>> >>>> >>>> >>>> >>>> El día 7 de julio de 2008 14:31, "Ms.C. Julio Oscar Peñarroche Gómez" < >>>> julio.penarroche en etecsa.cu> escribió: >>>> >>>> >>>> >>>> >>>> >>>>> Estoy de acuerdo pero me sigue dando el mismo error. >>>>> >>>>> *Fatal Python error: deallocating None >>>>> Cancelado >>>>> * >>>>> Porque no se >>>>> >>>>> Julio >>>>> >>>>> >>>>> Jose Caballero wrote: >>>>> >>>>> >>>>> >>>>> >>>>> >>>>>> En mi opinión, la forma que apunta Reynaldo es (o debería ser) la más >>>>>> fácil... bastante parecida a algún ejemplo que he visto buscando en >>>>>> google. >>>>>> >>>>>> >>>>>> >>>>>> El día 7 de julio de 2008 14:21, "Ms.C. Julio Oscar Peñarroche Gómez" >>>>>> < >>>>>> julio.penarroche en etecsa.cu> escribió: >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>>> Hola Jose, disculpa si no te contesté, realmente la forma recursiva >>>>>>> no >>>>>>> es >>>>>>> la que voy a emplear y el puerto no es una cadena es un número, como >>>>>>> dije >>>>>>> en >>>>>>> el mensaje anterior en lenguajes sobre windows tengo bastante >>>>>>> experiencia >>>>>>> y >>>>>>> en el manejo del puerto también. Solo quiero lograr que se escriba >>>>>>> el >>>>>>> valor >>>>>>> 255 repetidamente cada cierto tiempo en el puerto, cosa esta que >>>>>>> lograba >>>>>>> de >>>>>>> forma fácil en windows. >>>>>>> >>>>>>> Julio >>>>>>> >>>>>>> >>>>>>> Jose Caballero wrote: >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>>> Hola de nuevo. >>>>>>>> >>>>>>>> Sigo pensando que la forma recursiva de tu programa no es buena. >>>>>>>> Pero >>>>>>>> bueno, >>>>>>>> si te gusta, no tengo inconveniente. >>>>>>>> Por otro lado, ¿estás seguro de que el puerto se pasa como una >>>>>>>> cadena >>>>>>>> de >>>>>>>> caracteres y no como un entero? Veo en tu código >>>>>>>> >>>>>>>> p = ParallelPort('0x378') >>>>>>>> >>>>>>>> donde '0x378' es un string, no un entero. ¿Es así? >>>>>>>> >>>>>>>> >>>>>>>> Saludos, >>>>>>>> Jose >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> El día 7 de julio de 2008 13:29, "Ms.C. Julio Oscar Peñarroche >>>>>>>> Gómez" >>>>>>>> < >>>>>>>> julio.penarroche en etecsa.cu> escribió: >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> Gracias a todos los que me han respondido, Reynaldo estuve probando >>>>>>>>> el >>>>>>>>> código que enviastes y me sigue dando el mismo error cuando lleva >>>>>>>>> un >>>>>>>>> tiempo >>>>>>>>> ejecutandoce >>>>>>>>> >>>>>>>>> *Fatal Python error: deallocating None >>>>>>>>> Cancelado >>>>>>>>> >>>>>>>>> *Que quiero lograr yo exactamente, provengo de la programación en >>>>>>>>> windows >>>>>>>>> y >>>>>>>>> he trabajado con delphi, .net entre otros, en estos lenguajes que >>>>>>>>> son >>>>>>>>> visuales existen componentes timer que uno le define el tiempo que >>>>>>>>> quiere >>>>>>>>> que se ejecute y este lo hace, mi interés es escribir cada cierto >>>>>>>>> tiempo >>>>>>>>> el >>>>>>>>> dato 255 en el puerto paralelo, en delphi me funciona sin >>>>>>>>> problemas. >>>>>>>>> >>>>>>>>> Julio >>>>>>>>> >>>>>>>>> >>>>>>>>> Reynaldo wrote: >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>>> Hola Julio, >>>>>>>>>> Ms.C. Julio Oscar Peñarroche Gómez escribió: >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>>> Hola, es posible que no me explicara bien, lo que yo deseo es >>>>>>>>>>> poder >>>>>>>>>>> ejecutar un código determinado cada x tiempo, el ejemplo a lo >>>>>>>>>>> mejor >>>>>>>>>>> no >>>>>>>>>>> es el >>>>>>>>>>> más correcto debido a que me inicio en el python y la >>>>>>>>>>> programación >>>>>>>>>>> en >>>>>>>>>>> software libre pero el error que me da es el siguiente: >>>>>>>>>>> >>>>>>>>>>> Fatal Python error: deallocating None >>>>>>>>>>> Cancelado >>>>>>>>>>> >>>>>>>>>>> No es necesario utilizar hilos para lo que quieres.. >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> import time >>>>>>>>>> from parport import ParallelPort >>>>>>>>>> >>>>>>>>>> def main(): >>>>>>>>>> p = ParallelPort('0x378') >>>>>>>>>> p.write(0) >>>>>>>>>> while 1: >>>>>>>>>> p.write(255) >>>>>>>>>> print 'Escribe 1 en el puerto' >>>>>>>>>> time.sleep(3) >>>>>>>>>> >>>>>>>>>> main() >>>>>>>>>> >>>>>>>>>> Saludos, >>>>>>>>>> Reynaldo >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>>> Gracias >>>>>>>>>>> >>>>>>>>>>> Diego Sosa wrote: >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>>> En Fri, 04 Jul 2008 16:49:40 -0200, Ms.C. Julio Oscar Peñarroche >>>>>>>>>>>> Gómez >>>>>>>>>>>> < >>>>>>>>>>>> julio.penarroche en etecsa.cu> escribió: >>>>>>>>>>>> >>>>>>>>>>>> Me estoy iniciando en python y necesito saber como programar un >>>>>>>>>>>> timer >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>>> que me ejecute cada cierto tiempo un código determinado, he >>>>>>>>>>>>> buscado >>>>>>>>>>>>> en >>>>>>>>>>>>> Internet y los ejemplos que he encontrado son con hilos que >>>>>>>>>>>>> algunos >>>>>>>>>>>>> me han >>>>>>>>>>>>> funcionado, pero cuando pongo a correr mi código explota. >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>> Los hilos no funcionan al ejecutar desde el IDLE... quizás sea >>>>>>>>>>>> eso >>>>>>>>>>>> lo >>>>>>>>>>>> que te pasó. >>>>>>>>>>>> >>>>>>>>>>>> http://wiki.python.org/moin/ThreadProgramming >>>>>>>>>>>> http://www.devshed.com/c/a/Python/Basic-Threading-in-Python/ >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> ------------------------------------------------------------------------ >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> _______________________________________________ >>>>>>>>>>>> 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 >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>> _______________________________________________ >>>>>> 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 > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jnempu en gmail.com Tue Jul 8 01:18:06 2008 From: jnempu en gmail.com (Joksan Nempu Fernandez) Date: Mon, 7 Jul 2008 19:18:06 -0400 Subject: Como puedo abrir el adobe reader con un documento pdf desde python Message-ID: Hola lista: Necesito saber como puedo correr el adobe reader mas un documento pdf desde python. -- Joksan Nempu Fernandez Estudiante Ingeniería Civil en Computación e Informática. Encargado del Laboratorio de Sistemas Distribuidos. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From claudio0085 en hotmail.com Tue Jul 8 04:51:08 2008 From: claudio0085 en hotmail.com (claudio ivan barrios) Date: Tue, 8 Jul 2008 02:51:08 +0000 Subject: problemas para ver imagenes con pil In-Reply-To: <469159.82148.qm@web30804.mail.mud.yahoo.com> References: <469159.82148.qm@web30804.mail.mud.yahoo.com> Message-ID: Hola mira este es el codigo import Imagef1=Image.open("C:\Documents and Settings\Administrador\Escritorio\rosa.jpg")f1.show() la direccion esa es la exacta de la imagen pero cambie lo q me dijiste le agregue otro (\) e ironicamente anda de 10 OSEA: f1=Image.open("C:\Documents and Settings\Administrador\Escritorio\\rosa.jpg") MUCHAS GARCIAS POR SOLUCIONARME EL PROBLEMA victoredier en yahoo.comSALUDOS> Date: Sun, 6 Jul 2008 19:31:03 -0700> From: victoredier en yahoo.com> Subject: Re: [Python-es] problemas para ver imagenes con pil> To: python-es en aditel.org> > Según el problema que pones ahí no tiene nada que ver con lo que mencionas respecto a las bandas, lo que te puedo decir es que tengas cuidado con el ultimo back-slash ( \ ) el que esta antes de la palabra rosa.jpg los demás tienen el back-slash de espape excepto este, revizalo y nos comentas.> > ¡¡¡¡¡¡¡¡¡Good luck for every body!!!!!!!!!> > > > ----- Mensaje original ----> De: claudio ivan barrios > Para: python-es en aditel.org> Enviado: domingo, 6 de julio, 2008 11:25:38> Asunto: [Python-es] problemas para ver imagenes con pil> > > HOLA> tengo un problema para abrir imagenes de una sola banda en python con la libreria pil (con imagenes de tres bandas no tengo problemas )me muestra el siguiente mensaje de error> raceback (most recent call last):> File "C:\Documents and Settings\Administrador\Escritorio\pruebas\mostrarImagen.py", line 7, in f1=Image.open("C:\Documents and Settings\Administrador\Escritorio\rosa.jpg") File "C:\Python25\Lib\site-packages\PIL\Image.py", line 1888, in open fp = __builtin__.open(fp, "rb")IOError: [Errno 2] No such file or directory: 'C:\\Documents and Settings\\Administrador\\Escritorio\rosa.jpg'>>> > > alguien me puede dar la solucion a este problema?> gracias por su tiempo> _________________________________________________________________> Get your fix of news, sports, entertainment and more on MSN Mobile> http://www.msnmobilefix.com/Default.aspx_______________________________________________> Lista de correo Python-es> http://listas.aditel.org/listinfo/python-es> FAQ: http://listas.aditel.org/faqpyes> > > __________________________________________________> Correo Yahoo!> Espacio para todos tus mensajes, antivirus y antispam ¡gratis! > Regístrate ya - http://correo.espanol.yahoo.com/ > _______________________________________________> Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es> FAQ: http://listas.aditel.org/faqpyes _________________________________________________________________ Get your fix of news, sports, entertainment and more on MSN Mobile http://www.msnmobilefix.com/Default.aspx_______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From dejhanx en esdebian.org Tue Jul 8 08:06:01 2008 From: dejhanx en esdebian.org (Dennis Xiloj) Date: Tue, 8 Jul 2008 00:06:01 -0600 Subject: [Probablemente Spam] Sobre timer In-Reply-To: <48725268.4090004@etecsa.cu> References: <486E70C4.7030301@etecsa.cu> <48723C77.3040401@gmail.com> <48725268.4090004@etecsa.cu> Message-ID: <200807080006.01704.dejhanx@esdebian.org> On Monday 07 July 2008 11:29:12 Ms.C. Julio Oscar Peñarroche Gómez wrote: > Gracias a todos los que me han respondido, Reynaldo estuve probando el > código que enviastes y me sigue dando el mismo error cuando lleva un > tiempo ejecutandoce > > *Fatal Python error: deallocating None > Cancelado > > *Que quiero lograr yo exactamente, provengo de la programación en > windows y he trabajado con delphi, .net entre otros, en estos lenguajes > que son visuales existen componentes timer que uno le define el tiempo > que quiere que se ejecute y este lo hace, mi interés es escribir cada > cierto tiempo el dato 255 en el puerto paralelo, en delphi me funciona > sin problemas. > > Julio > Es posible que lo que te esté fallando sea el parport, ¿estás programando en linux no es así?, si es así a mí me ha funcionado bastante bien el pyparallel http://pyserial.wiki.sourceforge.net/pyParallel Debería funcionar con el ejemplo que te han propuesto: import time, parallel def main(): p = parallel.Parallel() p.setData(0) while 1: p.setData(255) print 'Escribe 1 en el puerto' time.sleep(3) main() Para que pyparallel funcione bien tienes que descargar el módulo lp y cargar el módulo ppdev en el kernel: # modprobe -r lp # modprobe ppdev Espero que te sirva. Saludos. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pych3m4 en gmail.com Tue Jul 8 09:24:04 2008 From: pych3m4 en gmail.com (Chema Cortes) Date: Tue, 8 Jul 2008 09:24:04 +0200 Subject: Traducir archivos html para crear otros. In-Reply-To: <3041714f0807070915v735b4086h90889ec83245e3b6@mail.gmail.com> References: <3041714f0807070915v735b4086h90889ec83245e3b6@mail.gmail.com> Message-ID: <2c9fb0dd0807080024p1a232792i6074f4a04e2b8348@mail.gmail.com> El 2008/7/7 Jorge Gant Ballesteros escribió: > Tengo varios archivos html en ingles y me gustaría mediante python > recorrer uno a uno y traducirlos creandome archivos html gemelos en > castellano. > > Lo único que me queda es qué diccionario usar y cómo. En la web?, > offline? Cómo paso mi cadena? Puede que te interese una de las ideas propuestas para el Google Summer 2008: http://translate.sourceforge.net/wiki/developers/gsoc2008_ideas Puedes utilizar http://translate.google.com y similares, según los idiomas que pretendas traducir. Para traducir palabras sueltas puede estar bien, de hecho hay traductores de interfaces gráficos; pero las traducciones automáticas de textos suelen ser impresentables sin una corrección manual. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From inigo_aldazabal en ehu.es Tue Jul 8 10:58:47 2008 From: inigo_aldazabal en ehu.es (Inigo Aldazabal Mensa) Date: Tue, 8 Jul 2008 10:58:47 +0200 Subject: Realizar Graficas In-Reply-To: <002301c8e03d$944a66f0$bcdf34d0$@com.uy> References: <237131.60429.qm@web51606.mail.re2.yahoo.com> <2c9fb0dd0807070457l7c15865fi8fba74a708e86d1b@mail.gmail.com> <002301c8e03d$944a66f0$bcdf34d0$@com.uy> Message-ID: <200807081058.47174.inigo_aldazabal@ehu.es> El Lunes, 7 de Julio de 2008 16:27, Carlos Do Carmo escribió: > Buenas como estan? > > Estoy realizando un sistema con Python y wxpython, y me gustaría > usar algún tipo de graficas en algunas consultas. Me pueden indicar si > es posible esto y donde puedo encontrar documentación al respecto > Además de las otra recomendaciones, puedes probar PyX[1] o PyXPlot[2], mas ligeros que por ejemplo matplotlib (por otro lado muy potente). Si usas gnuplot puedes usar Gnuplot.py[3]. [1] http://pyx.sourceforge.net/index [2] html http://www.pyxplot.org.uk/ [3] http://gnuplot-py.sourceforge.net/ > Gracias > Saludos > > Carlos Do Carmo > > > > _______________________________________________ > 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 alexis.roda.villalonga en gmail.com Tue Jul 8 12:40:37 2008 From: alexis.roda.villalonga en gmail.com (Alexis Roda) Date: Tue, 08 Jul 2008 12:40:37 +0200 Subject: =?ISO-8859-1?Q?Asignaci=F3n_de_eventos_?= =?ISO-8859-1?Q?en_Python?= In-Reply-To: References: Message-ID: <48734425.8090606@gmail.com> En/na Joan Pallarès ha escrit: > Hola, > > Estoy desarrollando una aplicación en Python para asignar árbitros a > partidos de fútbol dependiendo de un filtros (no puede repetir partido, etc) > > Ahora solo calculo la primera opción válida. Me gustaría calcular todas las > posibles opciones, (o ser capaz de calcularlas si el usuario lo quisiera). > > Por ejemplo: el usuario obtiene un resultado que pasa todos los filtros pero > no le gusta y quiere ver la siguiente posibilidad > > Estoy buscando algoritmos que me permitan calcular todas las opciones pero > no encuentro. No es muy eficiente, pero échale un vistazo al backtracking, este algoritmo te permite realizar exploraciones de todo el espacio de soluciones de un problema. En la wikipedia en castellano encontrarás un articulo: http://es.wikipedia.org/wiki/Backtracking Si buscas por "problemas de asignación" tal vez encuentres algoritmos más específicos y eficientes. Estos algoritmos se aplican generalmente a problemas de optimización. Un algoritmo de este tipo bastante sencillo es el método húngaro: http://es.wikipedia.org/wiki/Algoritmo_H%C3%BAngaro http://www.clapper.org/software/python/munkres/ Aunque parece que no es tu caso, puedes aplicar igualmente estos algoritmos de optimización asignando inicialmente el mismo coste a todas las asignaciones (partido, árbitro) y buscando las soluciones de coste mínimo. Si por algún motivo una asignación (partido, árbitro) no es satisfactoria puedes incrementar su coste, con lo que el algoritmo intentará buscar una solución alternativa de menor coste. Saludos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From damufo en gmail.com Tue Jul 8 14:08:51 2008 From: damufo en gmail.com (damufo) Date: Tue, 08 Jul 2008 14:08:51 +0200 Subject: como enviar correo In-Reply-To: <2094.10.14.19.34.1215445823.squirrel@correo> References: <2094.10.14.19.34.1215445823.squirrel@correo> Message-ID: <487358D3.6000502@gmail.com> smtplib inf200468 en ucf.edu.cu escribiu: > > Hola: > ????? saben de algun modulo que permita enviar > correos por lotes, es decir a varios usuarios > > > -------------------------------- > 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 damufo en gmail.com Tue Jul 8 14:10:29 2008 From: damufo en gmail.com (damufo) Date: Tue, 08 Jul 2008 14:10:29 +0200 Subject: Traducir archivos html para crear otros. In-Reply-To: <3041714f0807070915v735b4086h90889ec83245e3b6@mail.gmail.com> References: <3041714f0807070915v735b4086h90889ec83245e3b6@mail.gmail.com> Message-ID: <48735935.9010203@gmail.com> Has pensado en usar gettext? Jorge Gant Ballesteros escribiu: > Hola a todos, > > Tengo varios archivos html en ingles y me gustaría mediante python > recorrer uno a uno y traducirlos creandome archivos html gemelos en > castellano. > > Lo único que me queda es qué diccionario usar y cómo. En la web?, > offline? Cómo paso mi cadena? > > 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 From julio.penarroche en etecsa.cu Tue Jul 8 15:02:52 2008 From: julio.penarroche en etecsa.cu (=?ISO-8859-1?Q?=22Ms=2EC=2E_Julio_Oscar_Pe=F1arroche_G=F3me?= =?ISO-8859-1?Q?z=22?=) Date: Tue, 08 Jul 2008 09:02:52 -0400 Subject: [Probablemente Spam] Sobre timer In-Reply-To: References: <486E70C4.7030301@etecsa.cu> <48725268.4090004@etecsa.cu> <48725EA6.4080809@etecsa.cu> <4872611E.5050104@etecsa.cu> <4872654A.4040007@etecsa.cu> <48726EF2.8050304@etecsa.cu> Message-ID: <4873657C.70706@etecsa.cu> Si he escrito hasta 400 veces y funciona, solo que llega un momento en que me da el error Jose Caballero wrote: > mi pregunta era: has probado a escribir en el puerto 2 veces (y solo 2 > veces) y funciona? > > > > El día 7 de julio de 2008 15:30, "Ms.C. Julio Oscar Peñarroche Gómez" < > julio.penarroche en etecsa.cu> escribió: > > >> si indefinidamente hasta que le de la orden de detenerce >> >> Julio >> >> >> Jose Caballero wrote: >> >> >>> indefinidamente o mas de una vez? >>> Funciona si intentas escribir 2 veces? >>> >>> >>> >>> El día 7 de julio de 2008 14:49, "Ms.C. Julio Oscar Peñarroche Gómez" < >>> julio.penarroche en etecsa.cu> escribió: >>> >>> >>> >>> >>>> Si, realmente fue el ejemplo inicial que tomé y le hice alguna >>>> modificación, pero el problema ocurre cuando repito esto indefinidamente >>>> >>>> Julio >>>> >>>> >>>> Jose Caballero wrote: >>>> >>>> >>>> >>>> >>>>> Te funciona el ejemplo que viene en este link? >>>>> >>>>> >>>>> >>>>> http://devpower.blogsite.org/index.php/blog/show/Python-Parport-Library.html >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> El día 7 de julio de 2008 14:31, "Ms.C. Julio Oscar Peñarroche Gómez" < >>>>> julio.penarroche en etecsa.cu> escribió: >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>>> Estoy de acuerdo pero me sigue dando el mismo error. >>>>>> >>>>>> *Fatal Python error: deallocating None >>>>>> Cancelado >>>>>> * >>>>>> Porque no se >>>>>> >>>>>> Julio >>>>>> >>>>>> >>>>>> Jose Caballero wrote: >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>> >>>>>>> En mi opinión, la forma que apunta Reynaldo es (o debería ser) la más >>>>>>> fácil... bastante parecida a algún ejemplo que he visto buscando en >>>>>>> google. >>>>>>> >>>>>>> >>>>>>> >>>>>>> El día 7 de julio de 2008 14:21, "Ms.C. Julio Oscar Peñarroche Gómez" >>>>>>> < >>>>>>> julio.penarroche en etecsa.cu> escribió: >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>>> Hola Jose, disculpa si no te contesté, realmente la forma recursiva >>>>>>>> no >>>>>>>> es >>>>>>>> la que voy a emplear y el puerto no es una cadena es un número, como >>>>>>>> dije >>>>>>>> en >>>>>>>> el mensaje anterior en lenguajes sobre windows tengo bastante >>>>>>>> experiencia >>>>>>>> y >>>>>>>> en el manejo del puerto también. Solo quiero lograr que se escriba >>>>>>>> el >>>>>>>> valor >>>>>>>> 255 repetidamente cada cierto tiempo en el puerto, cosa esta que >>>>>>>> lograba >>>>>>>> de >>>>>>>> forma fácil en windows. >>>>>>>> >>>>>>>> Julio >>>>>>>> >>>>>>>> >>>>>>>> Jose Caballero wrote: >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> Hola de nuevo. >>>>>>>>> >>>>>>>>> Sigo pensando que la forma recursiva de tu programa no es buena. >>>>>>>>> Pero >>>>>>>>> bueno, >>>>>>>>> si te gusta, no tengo inconveniente. >>>>>>>>> Por otro lado, ¿estás seguro de que el puerto se pasa como una >>>>>>>>> cadena >>>>>>>>> de >>>>>>>>> caracteres y no como un entero? Veo en tu código >>>>>>>>> >>>>>>>>> p = ParallelPort('0x378') >>>>>>>>> >>>>>>>>> donde '0x378' es un string, no un entero. ¿Es así? >>>>>>>>> >>>>>>>>> >>>>>>>>> Saludos, >>>>>>>>> Jose >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> El día 7 de julio de 2008 13:29, "Ms.C. Julio Oscar Peñarroche >>>>>>>>> Gómez" >>>>>>>>> < >>>>>>>>> julio.penarroche en etecsa.cu> escribió: >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>>> Gracias a todos los que me han respondido, Reynaldo estuve probando >>>>>>>>>> el >>>>>>>>>> código que enviastes y me sigue dando el mismo error cuando lleva >>>>>>>>>> un >>>>>>>>>> tiempo >>>>>>>>>> ejecutandoce >>>>>>>>>> >>>>>>>>>> *Fatal Python error: deallocating None >>>>>>>>>> Cancelado >>>>>>>>>> >>>>>>>>>> *Que quiero lograr yo exactamente, provengo de la programación en >>>>>>>>>> windows >>>>>>>>>> y >>>>>>>>>> he trabajado con delphi, .net entre otros, en estos lenguajes que >>>>>>>>>> son >>>>>>>>>> visuales existen componentes timer que uno le define el tiempo que >>>>>>>>>> quiere >>>>>>>>>> que se ejecute y este lo hace, mi interés es escribir cada cierto >>>>>>>>>> tiempo >>>>>>>>>> el >>>>>>>>>> dato 255 en el puerto paralelo, en delphi me funciona sin >>>>>>>>>> problemas. >>>>>>>>>> >>>>>>>>>> Julio >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Reynaldo wrote: >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>>> Hola Julio, >>>>>>>>>>> Ms.C. Julio Oscar Peñarroche Gómez escribió: >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>>> Hola, es posible que no me explicara bien, lo que yo deseo es >>>>>>>>>>>> poder >>>>>>>>>>>> ejecutar un código determinado cada x tiempo, el ejemplo a lo >>>>>>>>>>>> mejor >>>>>>>>>>>> no >>>>>>>>>>>> es el >>>>>>>>>>>> más correcto debido a que me inicio en el python y la >>>>>>>>>>>> programación >>>>>>>>>>>> en >>>>>>>>>>>> software libre pero el error que me da es el siguiente: >>>>>>>>>>>> >>>>>>>>>>>> Fatal Python error: deallocating None >>>>>>>>>>>> Cancelado >>>>>>>>>>>> >>>>>>>>>>>> No es necesario utilizar hilos para lo que quieres.. >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>> import time >>>>>>>>>>> from parport import ParallelPort >>>>>>>>>>> >>>>>>>>>>> def main(): >>>>>>>>>>> p = ParallelPort('0x378') >>>>>>>>>>> p.write(0) >>>>>>>>>>> while 1: >>>>>>>>>>> p.write(255) >>>>>>>>>>> print 'Escribe 1 en el puerto' >>>>>>>>>>> time.sleep(3) >>>>>>>>>>> >>>>>>>>>>> main() >>>>>>>>>>> >>>>>>>>>>> Saludos, >>>>>>>>>>> Reynaldo >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>>> Gracias >>>>>>>>>>>> >>>>>>>>>>>> Diego Sosa wrote: >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>>> En Fri, 04 Jul 2008 16:49:40 -0200, Ms.C. Julio Oscar Peñarroche >>>>>>>>>>>>> Gómez >>>>>>>>>>>>> < >>>>>>>>>>>>> julio.penarroche en etecsa.cu> escribió: >>>>>>>>>>>>> >>>>>>>>>>>>> Me estoy iniciando en python y necesito saber como programar un >>>>>>>>>>>>> timer >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>>> que me ejecute cada cierto tiempo un código determinado, he >>>>>>>>>>>>>> buscado >>>>>>>>>>>>>> en >>>>>>>>>>>>>> Internet y los ejemplos que he encontrado son con hilos que >>>>>>>>>>>>>> algunos >>>>>>>>>>>>>> me han >>>>>>>>>>>>>> funcionado, pero cuando pongo a correr mi código explota. >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>> Los hilos no funcionan al ejecutar desde el IDLE... quizás sea >>>>>>>>>>>>> eso >>>>>>>>>>>>> lo >>>>>>>>>>>>> que te pasó. >>>>>>>>>>>>> >>>>>>>>>>>>> http://wiki.python.org/moin/ThreadProgramming >>>>>>>>>>>>> http://www.devshed.com/c/a/Python/Basic-Threading-in-Python/ >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> ------------------------------------------------------------------------ >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> _______________________________________________ >>>>>>>>>>>>> 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 >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>> _______________________________________________ >>>>>>> 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 >> >> > _______________________________________________ > 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 julio.penarroche en etecsa.cu Tue Jul 8 15:04:16 2008 From: julio.penarroche en etecsa.cu (=?ISO-8859-1?Q?=22Ms=2EC=2E_Julio_Oscar_Pe=F1arroche_G=F3me?= =?ISO-8859-1?Q?z=22?=) Date: Tue, 08 Jul 2008 09:04:16 -0400 Subject: [Probablemente Spam] Sobre timer In-Reply-To: <200807080006.01704.dejhanx@esdebian.org> References: <486E70C4.7030301@etecsa.cu> <48723C77.3040401@gmail.com> <48725268.4090004@etecsa.cu> <200807080006.01704.dejhanx@esdebian.org> Message-ID: <487365D0.6040407@etecsa.cu> Si estoy programando en linux Dennis Xiloj wrote: > On Monday 07 July 2008 11:29:12 Ms.C. Julio Oscar Peñarroche Gómez wrote: > >> Gracias a todos los que me han respondido, Reynaldo estuve probando el >> código que enviastes y me sigue dando el mismo error cuando lleva un >> tiempo ejecutandoce >> >> *Fatal Python error: deallocating None >> Cancelado >> >> *Que quiero lograr yo exactamente, provengo de la programación en >> windows y he trabajado con delphi, .net entre otros, en estos lenguajes >> que son visuales existen componentes timer que uno le define el tiempo >> que quiere que se ejecute y este lo hace, mi interés es escribir cada >> cierto tiempo el dato 255 en el puerto paralelo, en delphi me funciona >> sin problemas. >> >> Julio >> >> > > Es posible que lo que te esté fallando sea el parport, ¿estás programando en > linux no es así?, si es así a mí me ha funcionado bastante bien el pyparallel > http://pyserial.wiki.sourceforge.net/pyParallel > > Debería funcionar con el ejemplo que te han propuesto: > > import time, parallel > > def main(): > p = parallel.Parallel() > p.setData(0) > while 1: > p.setData(255) > print 'Escribe 1 en el puerto' > time.sleep(3) > > main() > > Para que pyparallel funcione bien tienes que descargar el módulo lp y cargar > el módulo ppdev en el kernel: > > # modprobe -r lp > # modprobe ppdev > > Espero que te sirva. > Saludos. > _______________________________________________ > 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 jemair en gmail.com Tue Jul 8 15:24:59 2008 From: jemair en gmail.com (Jesús Martínez) Date: Tue, 8 Jul 2008 15:24:59 +0200 Subject: Como puedo abrir el adobe reader con un documento pdfdesde python References: Message-ID: <200807081524576090943@gmail.com> os.startfile( fichpdf ) si los pdfs están asociados al adobe. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From minoztro en gmail.com Tue Jul 8 15:25:37 2008 From: minoztro en gmail.com (Milton Galo Patricio Inostroza Aguilera) Date: Tue, 8 Jul 2008 09:25:37 -0400 Subject: Como puedo abrir el adobe reader con un documento pdf desde python In-Reply-To: References: Message-ID: <172699c50807080625u6f63b738ga41f8c640c799ce3@mail.gmail.com> 2008/7/7 Joksan Nempu Fernandez : > Hola lista: Hola > > Necesito saber como puedo correr el adobe reader mas un documento pdf desde > python. yo utilizo el siguiente comando para abrir los documentos pdf's: os.spawnv(os.P_NOWAIT, '/usr/bin/xpdf', ['xpdf', arch]) xpdf lo puedes cambiar por el visor que necesites... > > -- > Joksan Nempu Fernandez > Estudiante Ingeniería Civil en Computación e Informática. > Encargado del Laboratorio de Sistemas Distribuidos. > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- Milton Inostroza Aguilera ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From francisco.palm en gmail.com Tue Jul 8 16:52:35 2008 From: francisco.palm en gmail.com (Francisco Palm) Date: Tue, 8 Jul 2008 10:52:35 -0400 Subject: =?ISO-8859-1?Q?Re:__Re:_Asignaci=F3n_de_eventos_en_Python?= In-Reply-To: References: Message-ID: [arbitro for arbitro in arbitros if X and Y and Z] Donde X, Y y Z son las condiciones, por ejemplo: not(arbitro.repetido) and not(arbitro.asignado) and not(arbitro.indeseado) Si das más información es posible atender tu consulta mejor... Escribo esto para que deduzcas que hay cosas que no se pueden conocer del problema con lo que has dicho. Saludos F. Palm On 7/7/08, Joan Pallarès wrote: > Hola, > > Estoy desarrollando una aplicación en Python para asignar árbitros a > partidos de fútbol dependiendo de un filtros (no puede repetir partido, etc) > > Ahora solo calculo la primera opción válida. Me gustaría calcular todas las > posibles opciones, (o ser capaz de calcularlas si el usuario lo quisiera). > > Por ejemplo: el usuario obtiene un resultado que pasa todos los filtros pero > no le gusta y quiere ver la siguiente posibilidad > > Estoy buscando algoritmos que me permitan calcular todas las opciones pero > no encuentro. > > He encontrado "Búsqueda Tabu" pero no me sirve para este caso > > Sería un algoritmo para relaciones entre conjuntos o algo por el estilo, no? > > ¿Alguna idea? > > Saludos > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- -------------------------------------- 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 jnempu en gmail.com Tue Jul 8 16:55:07 2008 From: jnempu en gmail.com (Joksan Nempu Fernandez) Date: Tue, 8 Jul 2008 10:55:07 -0400 Subject: Como puedo abrir el adobe reader con un documento pdf desde python In-Reply-To: <172699c50807080625u6f63b738ga41f8c640c799ce3@mail.gmail.com> References: <172699c50807080625u6f63b738ga41f8c640c799ce3@mail.gmail.com> Message-ID: gracias por sus respuestas El día 8 de julio de 2008 9:25, Milton Galo Patricio Inostroza Aguilera < minoztro en gmail.com> escribió: > 2008/7/7 Joksan Nempu Fernandez : > > Hola lista: > > Hola > > > > > Necesito saber como puedo correr el adobe reader mas un documento pdf > desde > > python. > > yo utilizo el siguiente comando para abrir los documentos pdf's: > > os.spawnv(os.P_NOWAIT, '/usr/bin/xpdf', ['xpdf', arch]) > > xpdf lo puedes cambiar por el visor que necesites... > > > > > > -- > > Joksan Nempu Fernandez > > Estudiante Ingeniería Civil en Computación e Informática. > > Encargado del Laboratorio de Sistemas Distribuidos. > > _______________________________________________ > > Lista de correo Python-es > > http://listas.aditel.org/listinfo/python-es > > FAQ: http://listas.aditel.org/faqpyes > > > > > > -- > Milton Inostroza Aguilera > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- Joksan Nempu Fernandez Estudiante Ingeniería Civil en Computación e Informática. Encargado del Laboratorio de Sistemas Distribuidos. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From inf200468 en ucf.edu.cu Tue Jul 8 17:26:43 2008 From: inf200468 en ucf.edu.cu (inf200468 en ucf.edu.cu) Date: Tue, 8 Jul 2008 11:26:43 -0400 (EDT) Subject: manipulando clases Message-ID: <1921.10.14.17.2.1215530803.squirrel@correo> Hola: sigo con algunas dudas con lo de la herencia, si yo declaro la clase padre y luego dentro de una funcion de la clase hija necesito llamar  a un metodo de la clase padre , tengo que instanciarla dentro del metodo o puedo llamar al metodo por su nombre___ otra duda es que si todas las clases tienen que tener declarado un metodo __init__ o tienen uno por defecto y la otra es que si tengo que tener todas las clases en un mismo script les envio lo que he hecho para si pueden me digan si esta bien orientado , porque lo que es funcionar , funciona import sys import psycopg2 import os class Conexion:     def __init__(self):         self.dbname="dbservicios"         self.user="postgres"         self.host="127.0.0.1"         self.password="pepe"     def conectar(self):         try:             conn = psycopg2.connect("dbname=%s user=%s host=%s password=%s"%    (self.dbname,self.user,self.host,self.password))         except:             print "Error de conexion"             sys.exit()        return conn       def Commit(self,conex):         conex.commit()       def EjecutarConsulta(self,conex,sql,params):         cursor = conex.cursor()         cursor.execute(sql,params) class AnalizadoraAccessApache(Conexion):     """Esta clase almacena en la bd el contenido del access.log de apache2"""     def FiltrarAccess(self):         if(os.path.exists('D://a.log')):             try:                 fichero = open('D://a.log','r')             except:                  print 'no se pudo abrir el fichero'                  sys.exit()             Conexion.__init__(self) #instanciando la clase conexion             conex = Conexion.conectar(self) # se conecta               linea = fichero.readline()             while (linea):                 pica = linea.split()                 self.ip_cliente=pica[0]# IP                 fecha = pica[3].split("[")                 fecha = fecha[1].split(":")                self.fecha=fecha[0]#fecha                self.hora=fecha[1]+":"+fecha[2]+":"+fecha[3]#hora                metodo = pica[5].split("\"")                self.metodo=metodo[1]# METODO                self.recurso=pica[6]# RECURSO                protocolo = pica[7].split("\"")                self.protocolo=protocolo[0] # PROTOCOLO                self.codigo_estado=pica[8] # CODIGO               url=pica[10].split("\"") # URL               self.url=url[1]              if(pica[9]=="-"): # TAMA?O                  pica[9]='0'             self.tamano=pica[9]             idlog='104'              params=(self.ip_cliente,self.fecha,self.hora,self.metodo,self.recurso,self.protocolo,self.codigo_estado,self.tamano,self.url,idlog)            sql="""insert into acceso_apache (ip_cliente,fecha,hora,metodo,recurso,protocolo,codigo_estado,tamano,url,id_log) values (%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)"""            Conexion.EjecutarConsulta(self,conex,sql,params)            Conexion.Commit(self,conex)            linea = fichero.readline()   #######################################################################################   s=AnalizadoraAccessApache() s.FiltrarAccess() -------------------------------- 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 willian.radicaled en gmail.com Tue Jul 8 18:14:58 2008 From: willian.radicaled en gmail.com (RadicalEd) Date: Tue, 8 Jul 2008 11:14:58 -0500 Subject: manipulando clases In-Reply-To: <1921.10.14.17.2.1215530803.squirrel@correo> References: <1921.10.14.17.2.1215530803.squirrel@correo> Message-ID: 1) No tienes que instanciar un nuevo método en la clase hija, si haces eso se llamaría sobrecarga de métodos y eso hace parte del polimorfismo. 2) El método __init__ es el constructor de la clase. 3) Nop, para eso puedes hacer un from tuarchivo import laclase On Tue, Jul 8, 2008 at 10:26 AM, wrote: > > > Hola: > sigo con algunas dudas con lo de la herencia, si yo declaro la clase padre > y > luego dentro de una funcion de la clase hija necesito llamar a un metodo > de la > clase padre , tengo que instanciarla dentro del metodo o puedo llamar al > metodo por su > nombre___ > otra duda es que si todas las clases tienen que tener declarado un metodo > __init__ o tienen uno por defecto > y la otra es que si tengo que tener todas las > clases en un mismo script > les envio lo que he hecho para si pueden me digan si esta > bien orientado , porque lo que es funcionar , funciona > > > import sys > > import psycopg2 > > import os > > class Conexion: > > ?? def __init__(self): > > ?????? self.dbname="dbservicios" > > ?????? self.user="postgres" > > ?????? self.host="127.0.0.1" > > ?????? self.password="pepe" > > ?? def conectar(self): > > ?????? try: > > ?????????? conn = > psycopg2.connect("dbname=%s user=%s host=%s password=%s"%?? > (self.dbname,self.user,self.host,self.password)) > > ?????? except: > > ?????????? print "Error > de conexion" > > ?????????? sys.exit() > > ????? return conn > > > > ?? def Commit(self,conex): > > ?????? conex.commit() > > > > ?? def EjecutarConsulta(self,conex,sql,params): > > ?????? cursor = conex.cursor() > > ?????? cursor.execute(sql,params) > > > > class AnalizadoraAccessApache(Conexion): > > ?? """Esta clase almacena en la bd el contenido del > access.log de apache2""" > > ?? def FiltrarAccess(self): > > ?????? if(os.path.exists('D://a.log')): > > ?????????? try: > > ?????????????? > fichero = open('D://a.log','r') > > ?????????? except: > > ??????????????? > print 'no se pudo abrir el fichero' > > ? > ???????????? > sys.exit() > > ?????????? > Conexion.__init__(self) #instanciando la clase conexion > > ???????? conex = > Conexion.conectar(self) # se conecta > > > > ?????????? linea = > fichero.readline() > > ?????????? while (linea): > > ?????????????? > pica = linea.split() > > ?????????????? > self.ip_cliente=pica[0]# IP > > ?????????????? > fecha = pica[3].split("[") > > ?????????????? > fecha = fecha[1].split(":") > > ????????????? > self.fecha=fecha[0]#fecha > > ????????????? > self.hora=fecha[1]+":"+fecha[2]+":"+fecha[3]#hora > > ????????????? > metodo = pica[5].split("\"") > > ????????????? > self.metodo=metodo[1]# METODO > > ????????????? > self.recurso=pica[6]# RECURSO > > ????????????? > protocolo = pica[7].split("\"") > > ?????????????? self.protocolo=protocolo[0] > # PROTOCOLO > > ????????????? > self.codigo_estado=pica[8] # CODIGO > > ???????????? > url=pica[10].split("\"") # URL > > ???????????? > self.url=url[1] > > ??????????? > if(pica[9]=="-"): # TAMA?O > > ??????????????? > pica[9]='0' > > ?????????? > self.tamano=pica[9] > > ?????????? idlog='104' > > > > ????????? > > params=(self.ip_cliente,self.fecha,self.hora,self.metodo,self.recurso,self.protocolo,self.codigo_estado,self.tamano,self.url,idlog) > > ????????? > sql="""insert into acceso_apache > (ip_cliente,fecha,hora,metodo,recurso,protocolo,codigo_estado,tamano,url,id_log) > values > (%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)""" > > ????????? > Conexion.EjecutarConsulta(self,conex,sql,params) > > ????????? > Conexion.Commit(self,conex) > > ????????? linea = > fichero.readline() > > > > > ####################################################################################### > > > > s=AnalizadoraAccessApache() > > s.FiltrarAccess() > > > > > -------------------------------- > 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 > -- The knowledge is the most dangerous weapon & SoloCodigo is the most important programing webforum. http://foros.solocodigo.com ------------ 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 Tue Jul 8 18:23:20 2008 From: inf200468 en ucf.edu.cu (inf200468 en ucf.edu.cu) Date: Tue, 8 Jul 2008 12:23:20 -0400 (EDT) Subject: manipulando clases In-Reply-To: References: <1921.10.14.17.2.1215530803.squirrel@correo> Message-ID: <3248.10.14.17.2.1215534200.squirrel@correo> entonces llamo al metodo de la clase padre , solo por su nombre, en la llamada tengo que pasarle el self??? > 1) No tienes que instanciar un nuevo método en la clase hija, si haces eso > se llamaría sobrecarga de métodos y eso hace parte del polimorfismo. > > 2) El método __init__ es el constructor de la clase. > > 3) Nop, para eso puedes hacer un from tuarchivo import laclase > > On Tue, Jul 8, 2008 at 10:26 AM, wrote: > >> >> >> Hola: >> sigo con algunas dudas con lo de la herencia, si yo declaro la clase padre >> y >> luego dentro de una funcion de la clase hija necesito llamar a un metodo >> de la >> clase padre , tengo que instanciarla dentro del metodo o puedo llamar al >> metodo por su >> nombre___ >> otra duda es que si todas las clases tienen que tener declarado un metodo >> __init__ o tienen uno por defecto >> y la otra es que si tengo que tener todas las >> clases en un mismo script >> les envio lo que he hecho para si pueden me digan si esta >> bien orientado , porque lo que es funcionar , funciona >> >> >> import sys >> >> import psycopg2 >> >> import os >> >> class Conexion: >> >> �� def __init__(self): >> >> ������ self.dbname="dbservicios" >> >> ������ self.user="postgres" >> >> ������ self.host="127.0.0.1" >> >> ������ self.password="pepe" >> >> �� def conectar(self): >> >> ������ try: >> >> ���������� conn = >> psycopg2.connect("dbname=%s user=%s host=%s password=%s"%�� >> (self.dbname,self.user,self.host,self.password)) >> >> ������ except: >> >> ���������� print "Error >> de conexion" >> >> ���������� sys.exit() >> >> ����� return conn >> >> >> >> �� def Commit(self,conex): >> >> ������ conex.commit() >> >> >> >> �� def EjecutarConsulta(self,conex,sql,params): >> >> ������ cursor = conex.cursor() >> >> ������ cursor.execute(sql,params) >> >> >> >> class AnalizadoraAccessApache(Conexion): >> >> �� """Esta clase almacena en la bd el contenido del >> access.log de apache2""" >> >> �� def FiltrarAccess(self): >> >> ������ if(os.path.exists('D://a.log')): >> >> ���������� try: >> >> �������������� >> fichero = open('D://a.log','r') >> >> ���������� except: >> >> ��������������� >> print 'no se pudo abrir el fichero' >> >> � >> ������������ >> sys.exit() >> >> ���������� >> Conexion.__init__(self) #instanciando la clase conexion >> >> �������� conex = >> Conexion.conectar(self) # se conecta >> >> >> >> ���������� linea = >> fichero.readline() >> >> ���������� while (linea): >> >> �������������� >> pica = linea.split() >> >> �������������� >> self.ip_cliente=pica[0]# IP >> >> �������������� >> fecha = pica[3].split("[") >> >> �������������� >> fecha = fecha[1].split(":") >> >> ������������� >> self.fecha=fecha[0]#fecha >> >> ������������� >> self.hora=fecha[1]+":"+fecha[2]+":"+fecha[3]#hora >> >> ������������� >> metodo = pica[5].split("\"") >> >> ������������� >> self.metodo=metodo[1]# METODO >> >> ������������� >> self.recurso=pica[6]# RECURSO >> >> ������������� >> protocolo = pica[7].split("\"") >> >> �������������� self.protocolo=protocolo[0] >> # PROTOCOLO >> >> ������������� >> self.codigo_estado=pica[8] # CODIGO >> >> ������������ >> url=pica[10].split("\"") # URL >> >> ������������ >> self.url=url[1] >> >> ����������� >> if(pica[9]=="-"): # TAMA?O >> >> ��������������� >> pica[9]='0' >> >> ���������� >> self.tamano=pica[9] >> >> ���������� idlog='104' >> >> >> >> ��������� >> >> params=(self.ip_cliente,self.fecha,self.hora,self.metodo,self.recurso,self.protocolo,self.codigo_estado,self.tamano,self.url,idlog) >> >> ��������� >> sql="""insert into acceso_apache >> (ip_cliente,fecha,hora,metodo,recurso,protocolo,codigo_estado,tamano,url,id_log) >> values >> (%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)""" >> >> ��������� >> Conexion.EjecutarConsulta(self,conex,sql,params) >> >> ��������� >> Conexion.Commit(self,conex) >> >> ��������� linea = >> fichero.readline() >> >> >> >> >> ####################################################################################### >> >> >> >> s=AnalizadoraAccessApache() >> >> s.FiltrarAccess() >> >> >> >> >> -------------------------------- >> 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 >> > > > > -- > The knowledge is the most dangerous > weapon & SoloCodigo is the most important programing webforum. > http://foros.solocodigo.com > _______________________________________________ > 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 reynaldomic en gmail.com Tue Jul 8 18:45:46 2008 From: reynaldomic en gmail.com (Reynaldo) Date: Tue, 08 Jul 2008 11:45:46 -0500 Subject: manipulando clases In-Reply-To: <3248.10.14.17.2.1215534200.squirrel@correo> References: <1921.10.14.17.2.1215530803.squirrel@correo> <3248.10.14.17.2.1215534200.squirrel@correo> Message-ID: <487399BA.4070108@gmail.com> inf200468 en ucf.edu.cu escribió: > entonces llamo al metodo de la clase padre , solo por su nombre, en la llamada tengo que > pasarle el self??? > > > http://effbot.org/pyfaq/how-do-i-call-a-method-defined-in-a-base-class-from-a-derived-class-that-overrides-it.htm >> 1) No tienes que instanciar un nuevo >> > m?todo en la clase hija, si haces eso > >> se llamar?a sobrecarga de >> > m?todos y eso hace parte del polimorfismo. > >> 2) El >> > m?todo __init__ es el constructor de la clase. > >> 3) Nop, para ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jorgericarte en gmail.com Tue Jul 8 19:03:16 2008 From: jorgericarte en gmail.com (Jorge Fco Ricarte Lopez) Date: Tue, 08 Jul 2008 11:03:16 -0600 Subject: Nombre de programa Message-ID: <48739DD4.3060000@gmail.com> Hola, Tengo un programa con funciones y quiero saber de que programa es llamada una funcion, existe algun metodo o funcion que me dija que programa esta llamando a la funcion? Saludos -- Jorge Fco Ricarte Lopez jorgericarte en gmail.com _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From szyszeja en gmail.com Tue Jul 8 19:09:32 2008 From: szyszeja en gmail.com (Leonidas Szyszeja) Date: Tue, 08 Jul 2008 14:09:32 -0300 Subject: manipulando clases In-Reply-To: <487399BA.4070108@gmail.com> References: <1921.10.14.17.2.1215530803.squirrel@correo> <3248.10.14.17.2.1215534200.squirrel@correo> <487399BA.4070108@gmail.com> Message-ID: <48739F4C.3030208@gmail.com> tal vez te serviría leer Dive into Python o algo parecido... http://almacen.gulic.org/diveintopython-5.4-es.14/download/diveintopython-pdf-es-5.4-es.10.pdf suerte!! ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From packo en assamita.net Tue Jul 8 21:07:52 2008 From: packo en assamita.net (Paco Moreno) Date: Tue, 8 Jul 2008 21:07:52 +0200 Subject: Realizar Graficas In-Reply-To: <200807081058.47174.inigo_aldazabal@ehu.es> References: <237131.60429.qm@web51606.mail.re2.yahoo.com> <2c9fb0dd0807070457l7c15865fi8fba74a708e86d1b@mail.gmail.com> <002301c8e03d$944a66f0$bcdf34d0$@com.uy> <200807081058.47174.inigo_aldazabal@ehu.es> Message-ID: Genial el pyCha, lo probaré pero promete mucho, lo desarrollas tú, no Lorenzo? 2008/7/8 Inigo Aldazabal Mensa : > El Lunes, 7 de Julio de 2008 16:27, Carlos Do Carmo escribió: > > Buenas como estan? > > > > Estoy realizando un sistema con Python y wxpython, y me gustaría > > usar algún tipo de graficas en algunas consultas. Me pueden indicar si > > es posible esto y donde puedo encontrar documentación al respecto > > > > Además de las otra recomendaciones, puedes probar PyX[1] o PyXPlot[2], mas > ligeros que por ejemplo matplotlib (por otro lado muy potente). Si usas > gnuplot puedes usar Gnuplot.py[3]. > > > [1] http://pyx.sourceforge.net/index > [2] html http://www.pyxplot.org.uk/ > [3] http://gnuplot-py.sourceforge.net/ > > > Gracias > > Saludos > > > > Carlos Do Carmo > > > > > > > > _______________________________________________ > > 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 > -- |Paco Moreno |web: http://www.assamita.net |blog: http://blog.assamita.net |correo: packo en assamita punto net |jabber: packo en assamita.net _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From lgs en sicem.biz Tue Jul 8 21:36:47 2008 From: lgs en sicem.biz (Lorenzo Gil =?ISO-8859-1?Q?S=E1nchez?=) Date: Tue, 08 Jul 2008 21:36:47 +0200 Subject: Realizar Graficas In-Reply-To: References: <237131.60429.qm@web51606.mail.re2.yahoo.com> <2c9fb0dd0807070457l7c15865fi8fba74a708e86d1b@mail.gmail.com> <002301c8e03d$944a66f0$bcdf34d0$@com.uy> <200807081058.47174.inigo_aldazabal@ehu.es> Message-ID: <1215545807.2960.1.camel@yog-sothoth.lorenzogil.com> Efectiviwonder. Espero que os sea útil a alguno :-) Lorenzo El mar, 08-07-2008 a las 21:07 +0200, Paco Moreno escribió: > Genial el pyCha, lo probaré pero promete mucho, lo desarrollas tú, no > Lorenzo? > > 2008/7/8 Inigo Aldazabal Mensa : > > > El Lunes, 7 de Julio de 2008 16:27, Carlos Do Carmo escribió: > > > Buenas como estan? > > > > > > Estoy realizando un sistema con Python y wxpython, y me gustaría > > > usar algún tipo de graficas en algunas consultas. Me pueden indicar si > > > es posible esto y donde puedo encontrar documentación al respecto > > > > > > > Además de las otra recomendaciones, puedes probar PyX[1] o PyXPlot[2], mas > > ligeros que por ejemplo matplotlib (por otro lado muy potente). Si usas > > gnuplot puedes usar Gnuplot.py[3]. > > > > > > [1] http://pyx.sourceforge.net/index > > [2] html http://www.pyxplot.org.uk/ > > [3] http://gnuplot-py.sourceforge.net/ > > > > > Gracias > > > Saludos > > > > > > Carlos Do Carmo > > > > > > > > > > > > _______________________________________________ > > > 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 jcaballero.hep en gmail.com Tue Jul 8 22:26:31 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Tue, 8 Jul 2008 16:26:31 -0400 Subject: duda sobre django: al leer una base de datos me devuelve una lista vacia In-Reply-To: References: Message-ID: Hola de nuevo. Este mensaje es para decir que he solucionado el problema, pero ahora tengo otro. 1) Respecto a mi pregunta anterior, parece que no había entendido la documentación. Creí entender que el modelo no podía contener ninguna clave primaria porque django la iba a añadir a posteriori. Supongo que lo entendí mal. He declarado como clave primaria la primera variable del modelo (que, por supuesto, corresponde a la clave primaria de la base de datos), y ahora me devuelve información cuando leo la DB en lugar de una lista vacía. 2) Pero sólo me devuelve información si hago algo como l = MyTable.objects.all()[0:5] si lo que intento es leer todas las entradas... l = MyTable.objects.all() obtengo una lista vacía como resultado. La DB que estoy leyendo es enorme. ¿Existe algún límite? No sé si, cuando intento leer demasiadas entradas, django no es capaz de manejar el resultado y da una lista vacía como output. ¿Alguien sabe si la cosa va por ahí? Muchas gracias. Jose El día 7 de julio de 2008 16:45, Jose Caballero escribió: > Olvidé mencionar que la configuración del fichero settings.py la he > verificado también con el comando python manage.py validate. > El error no parece estar en los ficheros de configuración. > > > El día 7 de julio de 2008 16:35, Jose Caballero > escribió: > > Hola, >> >> estoy intentado seguir la documentación de los capítulos 5 y 16 del libro >> de django, pero me he atascado. Quiero poder leer la información contenida >> en una base de datos que ya existe. >> Los pasos que he ejecutado han sido: >> >> 1) editar el fichero settings.py para especficar usuario, password, nombre >> de la base de datos y host. >> Lo he verificado ejecutando >> >> $ python manage.py shell >> from django.db import connection >> cursor = connection.cursor() >> >> y no pasó nada (según el libro, eso significa que todo está bien >> configurado) >> >> 2) python manage.py startapp test1 >> >> 3) para crear el contenido del fichero model.py he usado el comando >> >> python manage.py inspectdb > test1/modes.py >> >> esto me ha creado un fichero con una réplica de la estructura de la base >> de datos. He borrado todo excepto la primera clase (para leer solo una >> tabla). >> >> 4) Intento lo siguiente [1]: >> >> $ python manage.py shell >> from test1.models import TableName >> list = TableName.objects.all() >> list >> >> >> el resultado es una lista vacía. La DB no está vacía. De hecho, he probado >> con éxito a hacer lo siguiente: >> >> $ python >> import MySQLdb >> db = MySQLdb.connect(user='el_usuario', passwd='el_passwd', db='la_db', >> host='el_host')' >> cursor = db.cursor() >> cursor.execute('SELECT * FROM TableName') >> list = [row[0] for row in cursor.fetchall()] >> list >> >> y me devuelve todo el contenido de la primera columna en esa tabla. Esto >> me asegura que la DB no está vacía. >> Bueno, el nombre de la tabla (que he escrito como TableName en ambos >> casos) varía ligeramente porque django crea su propio nombre, bastante >> parecido pero no igual. >> Pero si entiendo bien la documentación, eso no importa pues la clase >> incluye la definición de una metaclase con el nombre real de la tabla en la >> DB. ¿Estoy en lo cierto? >> >> ¿Por qué obtengo una lista vacía con django? ¿Me he saltado alguna línea >> importante en el paso [1]? >> >> >> >> >> Cualquier ayuda será más que agradecida. >> >> Saludos, >> Jose >> >> >> > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From esteban en princesa.pri.sld.cu Wed Jul 9 07:23:01 2008 From: esteban en princesa.pri.sld.cu (Luis Esteban) Date: Tue, 08 Jul 2008 23:23:01 -0600 Subject: como enviar correo In-Reply-To: <2094.10.14.19.34.1215445823.squirrel@correo> References: <2094.10.14.19.34.1215445823.squirrel@correo> Message-ID: > saben de algun modulo que permita enviar > correos por lotes, es decir a varios usuarios Hola, he aquí un ejemplo sencillo para que te guíes. from smtplib import SMTP servidor = SMTP(?princesa.pri.sld.cu?) # Cambia la cadena por el nombre de tu servidor. remitente = ?esteban en princesa.pri.sld.cu? destinatario = ?otro en princesa.pri.sld.cu? mensaje = ?From: %s\nTo: %s\n\n? % (remitente, destinatario) mensaje += ?Hola.\n? mensaje += ?Hasta luego.\n? servidor.sendmail(remitente, destinatario, mensaje) -- Saludos, Luis esteban de Dios Núñez ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From joan.pallares en gmail.com Wed Jul 9 02:12:43 2008 From: joan.pallares en gmail.com (=?ISO-8859-1?Q?Joan_Pallar=E8s?=) Date: Wed, 9 Jul 2008 02:12:43 +0200 Subject: =?ISO-8859-1?Q?Re:__Re:_Asignaci=F3n_de_eventos_en_Python?= In-Reply-To: References: Message-ID: Hola, Muchas gracias por contestar, lo explicaré con más detalle: Tengo una *lista de partidos* y una *lista árbitros.* Hay más árbitros que partidos. Hay una *serie de filtros* que hacen que algunos árbitros no puedan hacer algunos partidos. Hasta ahora calculaba *una sola solución*, es decir, *una serie de asignaciones partido-arbitro donde se respetaban los filtros* Necesito cacular* todas las posibles soluciones* Para esto, antes de que me contestaráis el mail estuve investigando y pensé que mi problema tenía mucho que ver con la teoría de conjuntos. Tengo dos conjuntos (árbitros y partidos) y quiero todas su posibles combinaciones. Entonces descubrí el producto cartesiano ( http://es.wikipedia.org/wiki/Producto_cartesiano) y lo he aplicado de la siguiente manera: *[(partido,arbitro) for partido in partidos for arbitro in arbitros if self.pasaFiltros(partido,arbitro)]* Donde hago el mencionado producto cartesiano pero aplicando los filtros. Me funciona y ahora tengo una lista de parejas partido-árbitro con todas posibilidades. En el ejemplo que uso tengo 54 partidos y 70 árbitros, esto da 3780 (justo el producto) si aplico filtros se reduce esta cantidad. Para que os hagáis una idea de cómo es la lista, sería así: Partidos: 1, 2 ,3 Árbitros: a, b, c, d Lista: 1 a 1 b 1 d (no aparece el árbitro c porque ese dñia tiene fiesta) 2 a 2 b 2 c 2 d 3 a 3 b 3 c 3 d Mi problema ahora es como sacar de esta lista interminable las posibles asignaciones/jornadas. En el ejemplo serían posibles jornadas: 1a,2b,3c 1b,2a,3c Necesitaría sacarlas ordenadamente. Un posible usuario ve una jornada, no le gusta, pasa a la siguiente tampoco le gusta, vuelve a la anterior y se queda con ella. Navegar por las soluciones He pensado en "buscar en profundidad" parecido al DepthFirst de los árboles. Si usará el algoritmo este que iamino con el ejemplo quedaría: 1a 2b 3c 1a 2b 3d 1a 2c 3b No hay mas soluciones en el "tercer nivel" subo al "segundo nivel" 1a 2c 3d 1a 2d 3b ..... ¿os parece buena ida? ¿leeríais de otra forma lo obtenido mediantes el producto cartesiano? Lo haríais todo de otra manera? 2008/7/8 Francisco Palm : > [arbitro for arbitro in arbitros if X and Y and Z] > Donde X, Y y Z son las condiciones, por ejemplo: > not(arbitro.repetido) and not(arbitro.asignado) and not(arbitro.indeseado) > > Si das más información es posible atender tu consulta mejor... Escribo > esto para que deduzcas que hay cosas que no se pueden conocer del > problema con lo que has dicho. > > Saludos > > F. Palm > > On 7/7/08, Joan Pallarès wrote: > > Hola, > > > > Estoy desarrollando una aplicación en Python para asignar árbitros a > > partidos de fútbol dependiendo de un filtros (no puede repetir partido, > etc) > > > > Ahora solo calculo la primera opción válida. Me gustaría calcular todas > las > > posibles opciones, (o ser capaz de calcularlas si el usuario lo > quisiera). > > > > Por ejemplo: el usuario obtiene un resultado que pasa todos los filtros > pero > > no le gusta y quiere ver la siguiente posibilidad > > > > Estoy buscando algoritmos que me permitan calcular todas las opciones > pero > > no encuentro. > > > > He encontrado "Búsqueda Tabu" pero no me sirve para este caso > > > > Sería un algoritmo para relaciones entre conjuntos o algo por el estilo, > no? > > > > ¿Alguna idea? > > > > Saludos > > _______________________________________________ > > Lista de correo Python-es > > http://listas.aditel.org/listinfo/python-es > > FAQ: http://listas.aditel.org/faqpyes > > > > > -- > -------------------------------------- > 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 > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From the.blue.valkyrie en gmail.com Wed Jul 9 02:16:50 2008 From: the.blue.valkyrie en gmail.com (=?ISO-8859-1?Q?Cristina_Yenyxe_Gonz=E1lez_Garc=EDa?=) Date: Wed, 9 Jul 2008 02:16:50 +0200 Subject: Obtener MenuItem en wxPython Message-ID: Hola a todos: Estoy haciendo una interfaz con wxPython a la que he añadido una barra de menú, mediante la cual se puede cargar y guardar un fichero. Mi problema es que, en principio, la opción de guardar la muestro deshabilitada porque no hay ningún fichero cargado, y cuando se carga uno se habilitaría dicha opción. Sin embargo, no he conseguido obtener el MenuItem que la representa, como mucho he llegado a obtener su ID mediante XRCID, y así cualquiera modifica su estado :P Mirando en el wiki de wxPython dicen que no se puede utilizar XRCCTRL porque devuelve None, pero sin embargo no plantean una solución más allá de la aplicable al método Bind... Con el siguiente fragmento de código lo que obtengo es una excepción en la última sentencia, diciéndome que a XRCCTRL tengo que pasarle un string. def open(self, event): """ Open a file""" self.dirname = os.getenv('USERPROFILE') or os.getenv('HOME') open_dialog = wx.FileDialog(self.frame, 'Choose a file to debug', self.dirname, "", "*.py", wx.OPEN) if open_dialog.ShowModal() == wx.ID_OK: self.filename = open_dialog.GetFilename() self.dirname = open_dialog.GetDirectory() f = open(os.path.join(self.dirname, self.filename), 'r') print f.read() # DUMMY f.close() open_dialog.Destroy() save_id = xrc.XRCID('saveMenuItem') print "ID:", save_id # resultado = 102 save_menu_item = xrc.XRCCTRL(self.frame, save_id) ¿Alguien más experimentado podría aconsejarme? ¿O es que quizá estoy enfocándolo de otra forma a como se haría con wx? Un saludo y gracias por adelantado :) _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From the.blue.valkyrie en gmail.com Wed Jul 9 02:47:54 2008 From: the.blue.valkyrie en gmail.com (=?ISO-8859-1?Q?Cristina_Yenyxe_Gonz=E1lez_Garc=EDa?=) Date: Wed, 9 Jul 2008 02:47:54 +0200 Subject: Obtener MenuItem en wxPython In-Reply-To: References: Message-ID: Bueno, misterio resuelto: con utilizar la barra de menú como intermediario es suficiente. save_menu_item = self.frame.GetMenuBar().FindItemById(xrc.XRCID('saveMenuItem')) save_menu_item.Enable(True) _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ogutsua en gmail.com Wed Jul 9 05:47:02 2008 From: ogutsua en gmail.com (Oliver =?ISO-8859-1?Q?Gut=E9rrez?=) Date: Wed, 09 Jul 2008 04:47:02 +0100 Subject: Problemas con =?iso-8859-1?q?funci=F3n?= xml_new_from_buffer usando Glade Message-ID: <1215575222.2212.6.camel@azazel.evosistemas.com> ?Buenas a todos los de la lista Llevo intentando dilucidar por que está ocurriendo esto en PyGTK con Glade. El mismo fichero que estoy cargando desde la consola, lo cargo con gtk.glade.XML y me carga sin problemas. A alguien más le pasa? es un bug como pienso? Saludos y gracias a todos. Adjunto el código de demostración del error revil en azazel:~/Eclipse/EVOGTK/src$ python Python 2.5.2 (r252:60911, Apr 21 2008, 11:12:42) [GCC 4.2.3 (Ubuntu 4.2.3-2ubuntu7)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import gtk >>> from gtk import glade >>> fd=open('test.glade') >>> buf=fd.read() >>> fd.close() >>> glade.xml_new_from_buffer(buf,len(buf)) __main__:1: Warning: g_path_get_dirname: assertion `file_name != NULL' failed __main__:1: GtkWarning: gdk_pixbuf_new_from_file: assertion `filename != NULL' failed Fallo de segmentación ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From camontuyu en yahoo.es Wed Jul 9 08:17:02 2008 From: camontuyu en yahoo.es (Beni) Date: Wed, 9 Jul 2008 08:17:02 +0200 Subject: =?UTF-8?Q?Re:__Problemas_con_funci?= =?UTF-8?Q?=C3=B3n_xml=5Fnew=5Ffrom=5Fbuffer_usando_Glade?= In-Reply-To: <1215575222.2212.6.camel@azazel.evosistemas.com> References: <1215575222.2212.6.camel@azazel.evosistemas.com> Message-ID: <8a19bc7c0807082317m5643a8cbje03486728d41c863@mail.gmail.com> 2008/7/9 Oliver Gutérrez : > Buenas a todos los de la lista > > Llevo intentando dilucidar por que está ocurriendo esto en PyGTK con > Glade. El mismo fichero que estoy cargando desde la consola, lo cargo > con gtk.glade.XML y me carga sin problemas. > > A alguien más le pasa? es un bug como pienso? > > Saludos y gracias a todos. Adjunto el código de demostración del error > > revil en azazel:~/Eclipse/EVOGTK/src$ python > Python 2.5.2 (r252:60911, Apr 21 2008, 11:12:42) > [GCC 4.2.3 (Ubuntu 4.2.3-2ubuntu7)] on linux2 > Type "help", "copyright", "credits" or "license" for more information. > >>> import gtk > >>> from gtk import glade > >>> fd=open('test.glade') > >>> buf=fd.read() > >>> fd.close() > >>> glade.xml_new_from_buffer(buf,len(buf)) > __main__:1: Warning: g_path_get_dirname: assertion `file_name != NULL' > failed > __main__:1: GtkWarning: gdk_pixbuf_new_from_file: assertion `filename != > NULL' failed > Fallo de segmentación > Yo cargo mis archivos glade de esta forma, no se si te servirá: self.wTree = gtk.glade.XML("file.glade", 'app_main') self.wTree.signal_autoconnect(self) self.wTree.get_widget("app_main").show() app_main es la ventana principal de la aplicación. Luego hay que hacer una llamada: gtk.main() Saludos. -- Benito Rodríguez Arcos ------------ 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 Wed Jul 9 09:52:21 2008 From: cgalisteo en k-rolus.net (Carlos) Date: Wed, 9 Jul 2008 09:52:21 +0200 Subject: Nombre de programa In-Reply-To: <48739DD4.3060000@gmail.com> References: <48739DD4.3060000@gmail.com> Message-ID: 2008/7/8 Jorge Fco Ricarte Lopez : > Hola, Hola. > Tengo un programa con funciones y quiero saber de que programa es llamada > una funcion, existe algun metodo o funcion que me dija que programa esta > llamando a la funcion? Prueba con print sys.argv[0] -- --- 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 pych3m4 en gmail.com Wed Jul 9 11:46:32 2008 From: pych3m4 en gmail.com (Chema Cortes) Date: Wed, 9 Jul 2008 11:46:32 +0200 Subject: manipulando clases In-Reply-To: <1921.10.14.17.2.1215530803.squirrel@correo> References: <1921.10.14.17.2.1215530803.squirrel@correo> Message-ID: <2c9fb0dd0807090246r47ebedb5vccce796d1f5131c2@mail.gmail.com> El 2008/7/8 escribió: > sigo con algunas dudas con lo de la herencia, si yo declaro la clase padre y > luego dentro de una funcion de la clase hija necesito llamar a un metodo de la > clase padre , tengo que instanciarla dentro del metodo o puedo llamar al metodo por su > nombre___ La clase hija "hereda" todos los atributos y métodos del padre. A efectos prácticos, es como si los métodos fueran de la clase hija. > otra duda es que si todas las clases tienen que tener declarado un metodo > __init__ o tienen uno por defecto No es obligatorio. Si lo hay, heredado o no, se invocará al crear la instancia. Hay que tener cuidado para invocar "explícitamente" los métodos __init__ de las clases padre (mírate la documentación sobre el tema). Puede que esté ahí tu confusión. > y la otra es que si tengo que tener todas las > clases en un mismo script Puedes tener las definiciones donde quieras; la única condición es que estén definidas antes de ser usadas. Puedes referenciar una clase a través del nombre del módulo donde se encuentre definida (eg: class C(mimodulo.miclase) ) > les envio lo que he hecho para si pueden me digan si esta > bien orientado , porque lo que es funcionar , funciona Algunos comentarios sobre el código: > class Conexion: > > ?? def __init__(self): > ?????? self.dbname="dbservicios" > ?????? self.user="postgres" > ?????? self.host="127.0.0.1" > ?????? self.password="pepe" La primera pregunta sería ¿qué produce esta clase? Tu enfoque sigue siendo demasiado "funcional", usas las instancias de Conexión como si fueran biblioteca de funciones. Si tu clase crea "conexiones", la instancia debería ser una conexión, almacenando toda la información necesaria para ello, nunca se le tendría que pasar ningún parámetro "conex" como haces en otros métodos. Si quieres, añade un parámetro que indique si está establecida la conexión o no, o cualquier otra forma que se te ocurra como abrir y cerrar la conexión en cada consulta. Por otro lado, aunque no está mal colocar los parámetros de conexión dentro del código, la idea que debería primar es crear código "reutilizable". Harías bien en sacarlos de la definición de clase, aunque, en realidad, ¿hace falta esta clase para algo? > > ?? def conectar(self): > > ?????? try: > > ?????????? conn = > psycopg2.connect("dbname=%s user=%s host=%s password=%s"%?? > (self.dbname,self.user,self.host,self.password)) > > ?????? except: > > ?????????? print "Error > de conexion" > > ?????????? sys.exit() > > ????? return conn Cuando se intercepta un error, es porque se tiene la intención de recuperar la ejecución; de lo contrario, es mejor dejar pasar la excepción para que se pueda recuperar desde otro sitio. En este código estás considerando que todas las excepciones son errores de conexión, lo que incluye todos los "warnings" que no deberían cortar la ejecución. > ?????????? > Conexion.__init__(self) #instanciando la clase conexion La "instanciación" crea una instancia; aquí estás haciendo otra cosa: estás enviando una instancia de "AnalizadoraAccessApache" para que se "inicialize" con los atributos de "Conexion". Su lugar debería ser en un método "__init__" de "AnalizadoraAccessApache": def __init__(self): Conexion.__init__(self) Aquí podrías añadir atributos propios de la clase "AnalizadoraAccessApache". Si no existiera este método "__init__", se heredaría de "Conexion", por lo que no tienes que hacer nada especial si no vas a añadir más atributos. Revisa de nuevo la documentación, que todo ésto viene bastante bien explicado. ------------ 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 Jul 9 12:39:18 2008 From: jordi.f en ati.es (Jordi Funollet) Date: Wed, 9 Jul 2008 12:39:18 +0200 Subject: duda sobre django: al leer una base de datos me devuelve una lista vacia In-Reply-To: References: Message-ID: <200807091239.18237.jordi.f@ati.es> Jose Caballero dixit: > Hola de nuevo. > > Este mensaje es para decir que he solucionado el problema, pero ahora tengo > otro. > > 1) Respecto a mi pregunta anterior, parece que no había entendido la > documentación. Creí entender que el modelo no podía contener ninguna clave > primaria porque django la iba a añadir a posteriori. Supongo que lo entendí > mal. He declarado como clave primaria la primera variable del modelo (que, > por supuesto, corresponde a la clave primaria de la base de datos), y ahora > me devuelve información cuando leo la DB en lugar de una lista vacía. > > 2) Pero sólo me devuelve información si hago algo como > > l = MyTable.objects.all()[0:5] > > si lo que intento es leer todas las entradas... > > l = MyTable.objects.all() > > obtengo una lista vacía como resultado. > La DB que estoy leyendo es enorme. ¿Existe algún límite? No sé si, cuando > intento leer demasiadas entradas, django no es capaz de manejar el > resultado y da una lista vacía como output. ¿Alguien sabe si la cosa va por > ahí? Estrictamente, ni idea. :-) Django hace "lazy evaluation" de casi todo; puede tener relación. ¿Pero seguro que necesitas recuperar toda la lista? Puedes iterar-la? for elem in MyTable.objects.all(): print elem -- ############################## ### 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 ogutsua en gmail.com Wed Jul 9 14:26:51 2008 From: ogutsua en gmail.com (Oliver =?ISO-8859-1?Q?Gut=E9rrez?=) Date: Wed, 09 Jul 2008 13:26:51 +0100 Subject: Problemas con =?ISO-8859-1?Q?funci=F3n?= xml_new_from_buffer usando Glade In-Reply-To: <8a19bc7c0807082317m5643a8cbje03486728d41c863@mail.gmail.com> References: <1215575222.2212.6.camel@azazel.evosistemas.com> <8a19bc7c0807082317m5643a8cbje03486728d41c863@mail.gmail.com> Message-ID: <1215606411.7193.6.camel@azazel.evosistemas.com> Hola Beni. Yo también suelo cargarlos como tu. El problema está en que para esta aplicación me interesa modificar el fichero .glade de forma dinámica antes de cargarlo y necesito usar la función xml_new_from_buffer. De todos modos, en el anterior correo especifiqué que el fichero me carga sin problemas al usar el método que tu comentas. Creo que es un bug, pero necesitaría confirmarlo. ¿Alguien lo ha intentado?. Por lo que veo el problema tiene que ver con la carga de un pixmap desde un archivo, y el archivo de imágen he probado a ponerlo en todos los sitios lógicos (pixmaps/imagen.png, imagen.png, directorio pixmaps del sistema, etc). Saludos El mié, 09-07-2008 a las 08:17 +0200, Beni escribió: > 2008/7/9 Oliver Gutérrez : > > > Buenas a todos los de la lista > > > > Llevo intentando dilucidar por que está ocurriendo esto en PyGTK con > > Glade. El mismo fichero que estoy cargando desde la consola, lo cargo > > con gtk.glade.XML y me carga sin problemas. > > > > A alguien más le pasa? es un bug como pienso? > > > > Saludos y gracias a todos. Adjunto el código de demostración del error > > > > revil en azazel:~/Eclipse/EVOGTK/src$ python > > Python 2.5.2 (r252:60911, Apr 21 2008, 11:12:42) > > [GCC 4.2.3 (Ubuntu 4.2.3-2ubuntu7)] on linux2 > > Type "help", "copyright", "credits" or "license" for more information. > > >>> import gtk > > >>> from gtk import glade > > >>> fd=open('test.glade') > > >>> buf=fd.read() > > >>> fd.close() > > >>> glade.xml_new_from_buffer(buf,len(buf)) > > __main__:1: Warning: g_path_get_dirname: assertion `file_name != NULL' > > failed > > __main__:1: GtkWarning: gdk_pixbuf_new_from_file: assertion `filename != > > NULL' failed > > Fallo de segmentación > > > > Yo cargo mis archivos glade de esta forma, no se si te servirá: > > self.wTree = gtk.glade.XML("file.glade", 'app_main') > self.wTree.signal_autoconnect(self) > self.wTree.get_widget("app_main").show() > > app_main es la ventana principal de la aplicación. > > Luego hay que hacer una llamada: gtk.main() > > 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 jcaballero.hep en gmail.com Wed Jul 9 14:26:55 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Wed, 9 Jul 2008 08:26:55 -0400 Subject: duda sobre django: al leer una base de datos me devuelve una lista vacia In-Reply-To: <200807091239.18237.jordi.f@ati.es> References: <200807091239.18237.jordi.f@ati.es> Message-ID: El día 9 de julio de 2008 6:39, Jordi Funollet escribió: > Jose Caballero dixit: > > Hola de nuevo. > > > > Este mensaje es para decir que he solucionado el problema, pero ahora > tengo > > otro. > > > > 1) Respecto a mi pregunta anterior, parece que no había entendido la > > documentación. Creí entender que el modelo no podía contener ninguna > clave > > primaria porque django la iba a añadir a posteriori. Supongo que lo > entendí > > mal. He declarado como clave primaria la primera variable del modelo > (que, > > por supuesto, corresponde a la clave primaria de la base de datos), y > ahora > > me devuelve información cuando leo la DB en lugar de una lista vacía. > > > > 2) Pero sólo me devuelve información si hago algo como > > > > l = MyTable.objects.all()[0:5] > > > > si lo que intento es leer todas las entradas... > > > > l = MyTable.objects.all() > > > > obtengo una lista vacía como resultado. > > La DB que estoy leyendo es enorme. ¿Existe algún límite? No sé si, cuando > > intento leer demasiadas entradas, django no es capaz de manejar el > > resultado y da una lista vacía como output. ¿Alguien sabe si la cosa va > por > > ahí? > > Estrictamente, ni idea. :-) Django hace "lazy evaluation" de casi todo; > puede > tener relación. ¿Pero seguro que necesitas recuperar toda la lista? Puedes > iterar-la? > > for elem in MyTable.objects.all(): > print elem > Lo pruebo y te digo que tal va. Muchas gracias. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From minoztro en gmail.com Wed Jul 9 14:37:35 2008 From: minoztro en gmail.com (Milton Galo Patricio Inostroza Aguilera) Date: Wed, 9 Jul 2008 08:37:35 -0400 Subject: manipulando clases In-Reply-To: References: <1921.10.14.17.2.1215530803.squirrel@correo> Message-ID: <172699c50807090537g2cfa3088k2cc94ad321a3b45@mail.gmail.com> El día 8 de julio de 2008 12:14, RadicalEd escribió: > 1) No tienes que instanciar un nuevo método en la clase hija, si haces eso > se llamaría sobrecarga de métodos y eso hace parte del polimorfismo. > > 2) El método __init__ es el constructor de la clase. __init__ es el inicializador de la clase, __new__ es el verdadero constructor > > 3) Nop, para eso puedes hacer un from tuarchivo import laclase > > On Tue, Jul 8, 2008 at 10:26 AM, wrote: > >> >> >> Hola: >> sigo con algunas dudas con lo de la herencia, si yo declaro la clase padre >> y >> luego dentro de una funcion de la clase hija necesito llamar a un metodo >> de la >> clase padre , tengo que instanciarla dentro del metodo o puedo llamar al >> metodo por su >> nombre___ >> otra duda es que si todas las clases tienen que tener declarado un metodo >> __init__ o tienen uno por defecto >> y la otra es que si tengo que tener todas las >> clases en un mismo script >> les envio lo que he hecho para si pueden me digan si esta >> bien orientado , porque lo que es funcionar , funciona >> >> >> import sys >> >> import psycopg2 >> >> import os >> >> class Conexion: >> >> ?? def __init__(self): >> >> ?????? self.dbname="dbservicios" >> >> ?????? self.user="postgres" >> >> ?????? self.host="127.0.0.1" >> >> ?????? self.password="pepe" >> >> ?? def conectar(self): >> >> ?????? try: >> >> ?????????? conn = >> psycopg2.connect("dbname=%s user=%s host=%s password=%s"%?? >> (self.dbname,self.user,self.host,self.password)) >> >> ?????? except: >> >> ?????????? print "Error >> de conexion" >> >> ?????????? sys.exit() >> >> ????? return conn >> >> >> >> ?? def Commit(self,conex): >> >> ?????? conex.commit() >> >> >> >> ?? def EjecutarConsulta(self,conex,sql,params): >> >> ?????? cursor = conex.cursor() >> >> ?????? cursor.execute(sql,params) >> >> >> >> class AnalizadoraAccessApache(Conexion): >> >> ?? """Esta clase almacena en la bd el contenido del >> access.log de apache2""" >> >> ?? def FiltrarAccess(self): >> >> ?????? if(os.path.exists('D://a.log')): >> >> ?????????? try: >> >> ?????????????? >> fichero = open('D://a.log','r') >> >> ?????????? except: >> >> ??????????????? >> print 'no se pudo abrir el fichero' >> >> ? >> ???????????? >> sys.exit() >> >> ?????????? >> Conexion.__init__(self) #instanciando la clase conexion >> >> ???????? conex = >> Conexion.conectar(self) # se conecta >> >> >> >> ?????????? linea = >> fichero.readline() >> >> ?????????? while (linea): >> >> ?????????????? >> pica = linea.split() >> >> ?????????????? >> self.ip_cliente=pica[0]# IP >> >> ?????????????? >> fecha = pica[3].split("[") >> >> ?????????????? >> fecha = fecha[1].split(":") >> >> ????????????? >> self.fecha=fecha[0]#fecha >> >> ????????????? >> self.hora=fecha[1]+":"+fecha[2]+":"+fecha[3]#hora >> >> ????????????? >> metodo = pica[5].split("\"") >> >> ????????????? >> self.metodo=metodo[1]# METODO >> >> ????????????? >> self.recurso=pica[6]# RECURSO >> >> ????????????? >> protocolo = pica[7].split("\"") >> >> ?????????????? self.protocolo=protocolo[0] >> # PROTOCOLO >> >> ????????????? >> self.codigo_estado=pica[8] # CODIGO >> >> ???????????? >> url=pica[10].split("\"") # URL >> >> ???????????? >> self.url=url[1] >> >> ??????????? >> if(pica[9]=="-"): # TAMA?O >> >> ??????????????? >> pica[9]='0' >> >> ?????????? >> self.tamano=pica[9] >> >> ?????????? idlog='104' >> >> >> >> ????????? >> >> params=(self.ip_cliente,self.fecha,self.hora,self.metodo,self.recurso,self.protocolo,self.codigo_estado,self.tamano,self.url,idlog) >> >> ????????? >> sql="""insert into acceso_apache >> (ip_cliente,fecha,hora,metodo,recurso,protocolo,codigo_estado,tamano,url,id_log) >> values >> (%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)""" >> >> ????????? >> Conexion.EjecutarConsulta(self,conex,sql,params) >> >> ????????? >> Conexion.Commit(self,conex) >> >> ????????? linea = >> fichero.readline() >> >> >> >> >> ####################################################################################### >> >> >> >> s=AnalizadoraAccessApache() >> >> s.FiltrarAccess() >> >> >> >> >> -------------------------------- >> 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 >> > > > > -- > The knowledge is the most dangerous > weapon & SoloCodigo is the most important programing webforum. > http://foros.solocodigo.com > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- Milton Inostroza Aguilera ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jcaballero.hep en gmail.com Wed Jul 9 15:44:39 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Wed, 9 Jul 2008 09:44:39 -0400 Subject: duda sobre django: al leer una base de datos me devuelve una lista vacia In-Reply-To: <200807091239.18237.jordi.f@ati.es> References: <200807091239.18237.jordi.f@ati.es> Message-ID: El día 9 de julio de 2008 6:39, Jordi Funollet escribió: > Jose Caballero dixit: > > Hola de nuevo. > > > > Este mensaje es para decir que he solucionado el problema, pero ahora > tengo > > otro. > > > > 1) Respecto a mi pregunta anterior, parece que no había entendido la > > documentación. Creí entender que el modelo no podía contener ninguna > clave > > primaria porque django la iba a añadir a posteriori. Supongo que lo > entendí > > mal. He declarado como clave primaria la primera variable del modelo > (que, > > por supuesto, corresponde a la clave primaria de la base de datos), y > ahora > > me devuelve información cuando leo la DB en lugar de una lista vacía. > > > > 2) Pero sólo me devuelve información si hago algo como > > > > l = MyTable.objects.all()[0:5] > > > > si lo que intento es leer todas las entradas... > > > > l = MyTable.objects.all() > > > > obtengo una lista vacía como resultado. > > La DB que estoy leyendo es enorme. ¿Existe algún límite? No sé si, cuando > > intento leer demasiadas entradas, django no es capaz de manejar el > > resultado y da una lista vacía como output. ¿Alguien sabe si la cosa va > por > > ahí? > > Estrictamente, ni idea. :-) Django hace "lazy evaluation" de casi todo; > puede > tener relación. ¿Pero seguro que necesitas recuperar toda la lista? Puedes > iterar-la? > > for elem in MyTable.objects.all(): > print elem > No. No funciona. Me da el mismo error. Creo que son demasiadas entradas en la DB (aproximadamente 5 millones por tabla). Parece que tengo que buscar otra estrategia... Traceback (most recent call last): File "", line 1, in ? File "/usatlas/u/caballer/bin/applications/django-trunk/django/db/models/query.py", line 78, in _result_iter self._fill_cache() File "/usatlas/u/caballer/bin/applications/django-trunk/django/db/models/query.py", line 494, in _fill_cache self._result_cache.append(self._iter.next()) File "/usatlas/u/caballer/bin/applications/django-trunk/django/db/models/query.py", line 162, in iterator for row in self.query.results_iter(): File "/usatlas/u/caballer/bin/applications/django-trunk/django/db/models/sql/query.py", line 200, in results_iter for rows in self.execute_sql(MULTI): File "/usatlas/u/caballer/bin/applications/django-trunk/django/db/models/sql/query.py", line 1474, in execute_sql cursor.execute(sql, params) File "/usatlas/u/caballer/bin/applications/django-trunk/django/db/backends/util.py", line 18, in execute return self.cursor.execute(sql, params) File "/usr/lib/python2.3/site-packages/MySQLdb/cursors.py", line 166, in execute self.errorhandler(self, exc, value) File "/usr/lib/python2.3/site-packages/MySQLdb/connections.py", line 35, in defaulterrorhandler raise errorclass, errorvalue MemoryError _______________________________________________ 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 Jul 9 15:46:14 2008 From: willian.radicaled en gmail.com (RadicalEd) Date: Wed, 9 Jul 2008 08:46:14 -0500 Subject: manipulando clases In-Reply-To: <172699c50807090537g2cfa3088k2cc94ad321a3b45@mail.gmail.com> References: <1921.10.14.17.2.1215530803.squirrel@correo> <172699c50807090537g2cfa3088k2cc94ad321a3b45@mail.gmail.com> Message-ID: pfff, apenas me vengo a enterar, creo que voy a tener que leer muy bien esa parte. 2008/7/9 Milton Galo Patricio Inostroza Aguilera : > El día 8 de julio de 2008 12:14, RadicalEd > escribió: > > 1) No tienes que instanciar un nuevo método en la clase hija, si haces > eso > > se llamaría sobrecarga de métodos y eso hace parte del polimorfismo. > > > > 2) El método __init__ es el constructor de la clase. > > __init__ es el inicializador de la clase, __new__ es el verdadero > constructor > > > > > 3) Nop, para eso puedes hacer un from tuarchivo import laclase > > > > On Tue, Jul 8, 2008 at 10:26 AM, wrote: > > > >> > >> > >> Hola: > >> sigo con algunas dudas con lo de la herencia, si yo declaro la clase > padre > >> y > >> luego dentro de una funcion de la clase hija necesito llamar a un > metodo > >> de la > >> clase padre , tengo que instanciarla dentro del metodo o puedo llamar al > >> metodo por su > >> nombre___ > >> otra duda es que si todas las clases tienen que tener declarado un > metodo > >> __init__ o tienen uno por defecto > >> y la otra es que si tengo que tener todas las > >> clases en un mismo script > >> les envio lo que he hecho para si pueden me digan si esta > >> bien orientado , porque lo que es funcionar , funciona > >> > >> > >> import sys > >> > >> import psycopg2 > >> > >> import os > >> > >> class Conexion: > >> > >> ?? def __init__(self): > >> > >> ?????? self.dbname="dbservicios" > >> > >> ?????? self.user="postgres" > >> > >> ?????? self.host="127.0.0.1" > >> > >> ?????? self.password="pepe" > >> > >> ?? def conectar(self): > >> > >> ?????? try: > >> > >> ?????????? conn = > >> psycopg2.connect("dbname=%s user=%s host=%s password=%s"%?? > >> (self.dbname,self.user,self.host,self.password)) > >> > >> ?????? except: > >> > >> ?????????? print "Error > >> de conexion" > >> > >> ?????????? sys.exit() > >> > >> ????? return conn > >> > >> > >> > >> ?? def Commit(self,conex): > >> > >> ?????? conex.commit() > >> > >> > >> > >> ?? def EjecutarConsulta(self,conex,sql,params): > >> > >> ?????? cursor = conex.cursor() > >> > >> ?????? cursor.execute(sql,params) > >> > >> > >> > >> class AnalizadoraAccessApache(Conexion): > >> > >> ?? """Esta clase almacena en la bd el contenido del > >> access.log de apache2""" > >> > >> ?? def FiltrarAccess(self): > >> > >> ?????? if(os.path.exists('D://a.log')): > >> > >> ?????????? try: > >> > >> ?????????????? > >> fichero = open('D://a.log','r') > >> > >> ?????????? except: > >> > >> ??????????????? > >> print 'no se pudo abrir el fichero' > >> > >> ? > >> ???????????? > >> sys.exit() > >> > >> ?????????? > >> Conexion.__init__(self) #instanciando la clase conexion > >> > >> ???????? conex = > >> Conexion.conectar(self) # se conecta > >> > >> > >> > >> ?????????? linea = > >> fichero.readline() > >> > >> ?????????? while (linea): > >> > >> ?????????????? > >> pica = linea.split() > >> > >> ?????????????? > >> self.ip_cliente=pica[0]# IP > >> > >> ?????????????? > >> fecha = pica[3].split("[") > >> > >> ?????????????? > >> fecha = fecha[1].split(":") > >> > >> ????????????? > >> self.fecha=fecha[0]#fecha > >> > >> ????????????? > >> self.hora=fecha[1]+":"+fecha[2]+":"+fecha[3]#hora > >> > >> ????????????? > >> metodo = pica[5].split("\"") > >> > >> ????????????? > >> self.metodo=metodo[1]# METODO > >> > >> ????????????? > >> self.recurso=pica[6]# RECURSO > >> > >> ????????????? > >> protocolo = pica[7].split("\"") > >> > >> ?????????????? self.protocolo=protocolo[0] > >> # PROTOCOLO > >> > >> ????????????? > >> self.codigo_estado=pica[8] # CODIGO > >> > >> ???????????? > >> url=pica[10].split("\"") # URL > >> > >> ???????????? > >> self.url=url[1] > >> > >> ??????????? > >> if(pica[9]=="-"): # TAMA?O > >> > >> ??????????????? > >> pica[9]='0' > >> > >> ?????????? > >> self.tamano=pica[9] > >> > >> ?????????? idlog='104' > >> > >> > >> > >> ????????? > >> > >> > params=(self.ip_cliente,self.fecha,self.hora,self.metodo,self.recurso,self.protocolo,self.codigo_estado,self.tamano,self.url,idlog) > >> > >> ????????? > >> sql="""insert into acceso_apache > >> > (ip_cliente,fecha,hora,metodo,recurso,protocolo,codigo_estado,tamano,url,id_log) > >> values > >> (%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)""" > >> > >> ????????? > >> Conexion.EjecutarConsulta(self,conex,sql,params) > >> > >> ????????? > >> Conexion.Commit(self,conex) > >> > >> ????????? linea = > >> fichero.readline() > >> > >> > >> > >> > >> > ####################################################################################### > >> > >> > >> > >> s=AnalizadoraAccessApache() > >> > >> s.FiltrarAccess() > >> > >> > >> > >> > >> -------------------------------- > >> 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 > >> > > > > > > > > -- > > The knowledge is the most dangerous > > weapon & SoloCodigo is the most important programing webforum. > > http://foros.solocodigo.com > > > > _______________________________________________ > > Lista de correo Python-es > > http://listas.aditel.org/listinfo/python-es > > FAQ: http://listas.aditel.org/faqpyes > > > > > > -- > Milton Inostroza Aguilera > > _______________________________________________ > 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 most important programing webforum. http://foros.solocodigo.com ------------ 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 Wed Jul 9 16:33:21 2008 From: ematus en gmail.com (Eduardo Matus) Date: Wed, 9 Jul 2008 10:33:21 -0400 Subject: duda sobre django: al leer una base de datos me devuelve una lista vacia In-Reply-To: References: <200807091239.18237.jordi.f@ati.es> Message-ID: <984ad6a0807090733r742efda2q5db1da69ff23eb34@mail.gmail.com> si crees que son muchas, segmenta tus resultados... por ejemplo de a 1.000.000 por consulta 2008/7/9 Jose Caballero : > El día 9 de julio de 2008 6:39, Jordi Funollet escribió: > > > Jose Caballero dixit: > > > Hola de nuevo. > > > > > > Este mensaje es para decir que he solucionado el problema, pero ahora > > tengo > > > otro. > > > > > > 1) Respecto a mi pregunta anterior, parece que no había entendido la > > > documentación. Creí entender que el modelo no podía contener ninguna > > clave > > > primaria porque django la iba a añadir a posteriori. Supongo que lo > > entendí > > > mal. He declarado como clave primaria la primera variable del modelo > > (que, > > > por supuesto, corresponde a la clave primaria de la base de datos), y > > ahora > > > me devuelve información cuando leo la DB en lugar de una lista vacía. > > > > > > 2) Pero sólo me devuelve información si hago algo como > > > > > > l = MyTable.objects.all()[0:5] > > > > > > si lo que intento es leer todas las entradas... > > > > > > l = MyTable.objects.all() > > > > > > obtengo una lista vacía como resultado. > > > La DB que estoy leyendo es enorme. ¿Existe algún límite? No sé si, > cuando > > > intento leer demasiadas entradas, django no es capaz de manejar el > > > resultado y da una lista vacía como output. ¿Alguien sabe si la cosa va > > por > > > ahí? > > > > Estrictamente, ni idea. :-) Django hace "lazy evaluation" de casi todo; > > puede > > tener relación. ¿Pero seguro que necesitas recuperar toda la lista? > Puedes > > iterar-la? > > > > for elem in MyTable.objects.all(): > > print elem > > > > > > > No. No funciona. Me da el mismo error. Creo que son demasiadas entradas en > la DB (aproximadamente 5 millones por tabla). Parece que tengo que buscar > otra estrategia... > > Traceback (most recent call last): > File "", line 1, in ? > File > > "/usatlas/u/caballer/bin/applications/django-trunk/django/db/models/query.py", > line 78, in _result_iter > self._fill_cache() > File > > "/usatlas/u/caballer/bin/applications/django-trunk/django/db/models/query.py", > line 494, in _fill_cache > self._result_cache.append(self._iter.next()) > File > > "/usatlas/u/caballer/bin/applications/django-trunk/django/db/models/query.py", > line 162, in iterator > for row in self.query.results_iter(): > File > > "/usatlas/u/caballer/bin/applications/django-trunk/django/db/models/sql/query.py", > line 200, in results_iter > for rows in self.execute_sql(MULTI): > File > > "/usatlas/u/caballer/bin/applications/django-trunk/django/db/models/sql/query.py", > line 1474, in execute_sql > cursor.execute(sql, params) > File > > "/usatlas/u/caballer/bin/applications/django-trunk/django/db/backends/util.py", > line 18, in execute > return self.cursor.execute(sql, params) > File "/usr/lib/python2.3/site-packages/MySQLdb/cursors.py", line 166, in > execute > self.errorhandler(self, exc, value) > File "/usr/lib/python2.3/site-packages/MySQLdb/connections.py", line 35, > in defaulterrorhandler > raise errorclass, errorvalue > MemoryError > _______________________________________________ > 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 jcaballero.hep en gmail.com Wed Jul 9 16:38:31 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Wed, 9 Jul 2008 10:38:31 -0400 Subject: duda sobre django: al leer una base de datos me devuelve una lista vacia In-Reply-To: <984ad6a0807090733r742efda2q5db1da69ff23eb34@mail.gmail.com> References: <200807091239.18237.jordi.f@ati.es> <984ad6a0807090733r742efda2q5db1da69ff23eb34@mail.gmail.com> Message-ID: Efectivamente, parece ser la mejor forma. Pero no deja de sorprenderme que no sea capaz de manejar un número alto de entradas. Gracias. El día 9 de julio de 2008 10:33, Eduardo Matus escribió: > si crees que son muchas, segmenta tus resultados... por ejemplo de a > 1.000.000 por consulta > > 2008/7/9 Jose Caballero : > > > El día 9 de julio de 2008 6:39, Jordi Funollet > escribió: > > > > > Jose Caballero dixit: > > > > Hola de nuevo. > > > > > > > > Este mensaje es para decir que he solucionado el problema, pero ahora > > > tengo > > > > otro. > > > > > > > > 1) Respecto a mi pregunta anterior, parece que no había entendido la > > > > documentación. Creí entender que el modelo no podía contener ninguna > > > clave > > > > primaria porque django la iba a añadir a posteriori. Supongo que lo > > > entendí > > > > mal. He declarado como clave primaria la primera variable del modelo > > > (que, > > > > por supuesto, corresponde a la clave primaria de la base de datos), y > > > ahora > > > > me devuelve información cuando leo la DB en lugar de una lista vacía. > > > > > > > > 2) Pero sólo me devuelve información si hago algo como > > > > > > > > l = MyTable.objects.all()[0:5] > > > > > > > > si lo que intento es leer todas las entradas... > > > > > > > > l = MyTable.objects.all() > > > > > > > > obtengo una lista vacía como resultado. > > > > La DB que estoy leyendo es enorme. ¿Existe algún límite? No sé si, > > cuando > > > > intento leer demasiadas entradas, django no es capaz de manejar el > > > > resultado y da una lista vacía como output. ¿Alguien sabe si la cosa > va > > > por > > > > ahí? > > > > > > Estrictamente, ni idea. :-) Django hace "lazy evaluation" de casi todo; > > > puede > > > tener relación. ¿Pero seguro que necesitas recuperar toda la lista? > > Puedes > > > iterar-la? > > > > > > for elem in MyTable.objects.all(): > > > print elem > > > > > > > > > > > > > No. No funciona. Me da el mismo error. Creo que son demasiadas entradas > en > > la DB (aproximadamente 5 millones por tabla). Parece que tengo que buscar > > otra estrategia... > > > > Traceback (most recent call last): > > File "", line 1, in ? > > File > > > > > "/usatlas/u/caballer/bin/applications/django-trunk/django/db/models/query.py", > > line 78, in _result_iter > > self._fill_cache() > > File > > > > > "/usatlas/u/caballer/bin/applications/django-trunk/django/db/models/query.py", > > line 494, in _fill_cache > > self._result_cache.append(self._iter.next()) > > File > > > > > "/usatlas/u/caballer/bin/applications/django-trunk/django/db/models/query.py", > > line 162, in iterator > > for row in self.query.results_iter(): > > File > > > > > "/usatlas/u/caballer/bin/applications/django-trunk/django/db/models/sql/query.py", > > line 200, in results_iter > > for rows in self.execute_sql(MULTI): > > File > > > > > "/usatlas/u/caballer/bin/applications/django-trunk/django/db/models/sql/query.py", > > line 1474, in execute_sql > > cursor.execute(sql, params) > > File > > > > > "/usatlas/u/caballer/bin/applications/django-trunk/django/db/backends/util.py", > > line 18, in execute > > return self.cursor.execute(sql, params) > > File "/usr/lib/python2.3/site-packages/MySQLdb/cursors.py", line 166, in > > execute > > self.errorhandler(self, exc, value) > > File "/usr/lib/python2.3/site-packages/MySQLdb/connections.py", line 35, > > in defaulterrorhandler > > raise errorclass, errorvalue > > MemoryError > > _______________________________________________ > > 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 le_fdez en yahoo.es Wed Jul 9 17:37:52 2008 From: le_fdez en yahoo.es (leticia Fernandez) Date: Wed, 9 Jul 2008 15:37:52 +0000 (GMT) Subject: =?iso-8859-1?q?importar_m=F3dulos_desde_otra_carpeta?= Message-ID: <68886.96733.qm@web26207.mail.ukl.yahoo.com> Hola a todos, tengo una pequeña aplicación con varios módulos y quería separarlos en distintas carpetas. Pero si hago esto, ¿como tendría que modificar el "import"? Seguro que es algo muy fácil, pero no acabo de encontrar la manera. Gracias! ______________________________________________ Enviado desde Correo Yahoo! La bandeja de entrada más inteligente. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From claudio0085 en hotmail.com Wed Jul 9 17:45:25 2008 From: claudio0085 en hotmail.com (claudio ivan barrios) Date: Wed, 9 Jul 2008 15:45:25 +0000 Subject: tutorial de wxGlade Message-ID: hola a todos: Alguien me podria mandar un tutorial o el link de tutoriales de wxGlade bien completo-. gracias por su tiempo _________________________________________________________________ Blog your life in 3D with Windows Live Writer. http://www.windowslive.com/overview.html?ocid=TXT_TAGLM_Wave2_wl_writer_022008_______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From the.blue.valkyrie en gmail.com Wed Jul 9 18:51:19 2008 From: the.blue.valkyrie en gmail.com (=?ISO-8859-1?Q?Cristina_Yenyxe_Gonz=E1lez_Garc=EDa?=) Date: Wed, 9 Jul 2008 18:51:19 +0200 Subject: =?ISO-8859-1?Q?Re:__importar_m=F3dulos_desde_otra_carpeta?= In-Reply-To: <68886.96733.qm@web26207.mail.ukl.yahoo.com> References: <68886.96733.qm@web26207.mail.ukl.yahoo.com> Message-ID: Hola: Para poder importar un módulo de otra carpeta, es necesario que el intérprete reconozca ésta como un paquete de Python. Para ello, en cada carpeta debes incluir un módulo "__init__.py". En él, puedes (o debes, no estoy segura pero yo siempre lo hago) añadir una variable __all__ con lo que quieres que se vea desde el exterior del paquete. Pueden ser módulos, clases, funciones... Después, para importar el módulo podrías hacerlo de una de las siguientes formas: import paquete.modulo from paquete import modulo Cada una de estas formas tiene una consecuencia sobre la visibilidad, pero eso está bastante bien explicado en la documentación de Python. Un saludo ^^ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pyarnau en gmail.com Wed Jul 9 19:09:05 2008 From: pyarnau en gmail.com (Arnau Sanchez) Date: Wed, 09 Jul 2008 19:09:05 +0200 Subject: Problemas con =?UTF-8?B?ZnVuY2nDs24geG1sX25ld19m?= =?UTF-8?B?cm9tX2J1ZmZlciAgdXNhbmRvIEdsYWRl?= In-Reply-To: <1215575222.2212.6.camel@azazel.evosistemas.com> References: <1215575222.2212.6.camel@azazel.evosistemas.com> Message-ID: <4874F0B1.2050609@gmail.com> Oliver Gutérrez escribió: > revil en azazel:~/Eclipse/EVOGTK/src$ python > Python 2.5.2 (r252:60911, Apr 21 2008, 11:12:42) > [GCC 4.2.3 (Ubuntu 4.2.3-2ubuntu7)] on linux2 > Type "help", "copyright", "credits" or "license" for more information. >>>> import gtk >>>> from gtk import glade >>>> fd=open('test.glade') >>>> buf=fd.read() >>>> fd.close() >>>> glade.xml_new_from_buffer(buf,len(buf)) > __main__:1: Warning: g_path_get_dirname: assertion `file_name != NULL' > failed > __main__:1: GtkWarning: gdk_pixbuf_new_from_file: assertion `filename != > NULL' failed > Fallo de segmentación Siempre que la he usado, la función xml_new_from_buffer me ha funcionado bien. In [16]:import gtk.glade In [18]:data = open("grioutil.glade").read() In [19]:xml = gtk.glade.xml_new_from_buffer(data, len(data)) In [20]:xml Out[20]: Así que, o es un bug de la versión que tienes de pygtk (poco probable), o ese fichero glade tiene algún problema. Lo único que se me ocurre es que mandes un enlace del fichero con el que te da el error. Por cierto, ¿has probado con algún .glade más? arnau ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jimenezrick en gmail.com Wed Jul 9 19:58:54 2008 From: jimenezrick en gmail.com (=?UTF-8?Q?Ricardo_Catalinas_Jim=C3=A9nez?=) Date: Wed, 9 Jul 2008 19:58:54 +0200 Subject: Atributo compartido por objetos de una misma clase Message-ID: <28ecc63c0807091058pd55edc0xa93906f43f826a19@mail.gmail.com> Tengo unas nociones basicas acerca de como se gestionan los nombres y referencias de los objetos en python, pero el siguiente codigo se comporta de un modo que no entiendo: ------------------------------------------------------------------------ class A: def __init__(self, foo = []): self.bar = foo a = A() a.bar.append(6) b = A() ----------------------------------------------------------------------- Ahora resulta que tanto `a.bar' como `b.bar' tienen el mismo valor: `[6]'. ¿No tendria que ser `b.bar == []' ? Un saludo y gracias. -- Ricardo ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jcaballero.hep en gmail.com Wed Jul 9 20:06:13 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Wed, 9 Jul 2008 14:06:13 -0400 Subject: Atributo compartido por objetos de una misma clase In-Reply-To: <28ecc63c0807091058pd55edc0xa93906f43f826a19@mail.gmail.com> References: <28ecc63c0807091058pd55edc0xa93906f43f826a19@mail.gmail.com> Message-ID: Hola una cosa que debes tener en cuenta es que el paso de valores por defecto no funciona exactamente igual que en C++, por ejemplo. A veces puede parecer confuso. Cambia tu programa por esto: class A: def __init__(self, foo = None): if not foo: self.bar = [] else: self.bar = foo a = A() a.bar.append(6) b = A() print a.bar print b.bar El resultado es el que creo que buscas: [6] [] Saludos, Jose El día 9 de julio de 2008 13:58, Ricardo Catalinas Jiménez < jimenezrick en gmail.com> escribió: > Tengo unas nociones basicas acerca de como se gestionan los nombres y > referencias de los objetos en python, pero el siguiente codigo se > comporta de un modo que no entiendo: > > ------------------------------------------------------------------------ > class A: > def __init__(self, foo = []): > self.bar = foo > > a = A() > a.bar.append(6) > b = A() > ----------------------------------------------------------------------- > > Ahora resulta que tanto `a.bar' como `b.bar' tienen el mismo valor: `[6]'. > ¿No tendria que ser `b.bar == []' ? > > Un saludo y gracias. > -- > Ricardo > > _______________________________________________ > 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 jcaballero.hep en gmail.com Wed Jul 9 20:17:28 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Wed, 9 Jul 2008 14:17:28 -0400 Subject: Atributo compartido por objetos de una misma clase In-Reply-To: References: <28ecc63c0807091058pd55edc0xa93906f43f826a19@mail.gmail.com> Message-ID: Aquí tienes la explicación: http://docs.python.org/tut/node6.html#SECTION006710000000000000000 2008/7/9 Jose Caballero : > Hola > > una cosa que debes tener en cuenta es que el paso de valores por defecto no > funciona exactamente igual que en C++, por ejemplo. A veces puede parecer > confuso. Cambia tu programa por esto: > > class A: > def __init__(self, foo = None): > if not foo: > self.bar = [] > else: > self.bar = foo > > a = A() > a.bar.append(6) > b = A() > > print a.bar > print b.bar > > > El resultado es el que creo que buscas: > > [6] > [] > > > Saludos, > Jose > > > > > > > > > > > > El día 9 de julio de 2008 13:58, Ricardo Catalinas Jiménez < > jimenezrick en gmail.com> escribió: > >> Tengo unas nociones basicas acerca de como se gestionan los nombres y >> referencias de los objetos en python, pero el siguiente codigo se >> comporta de un modo que no entiendo: >> >> ------------------------------------------------------------------------ >> class A: >> def __init__(self, foo = []): >> self.bar = foo >> >> a = A() >> a.bar.append(6) >> b = A() >> ----------------------------------------------------------------------- >> >> Ahora resulta que tanto `a.bar' como `b.bar' tienen el mismo valor: `[6]'. >> ¿No tendria que ser `b.bar == []' ? >> >> Un saludo y gracias. >> -- >> Ricardo >> >> _______________________________________________ >> 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 jimenezrick en gmail.com Wed Jul 9 20:26:16 2008 From: jimenezrick en gmail.com (=?UTF-8?Q?Ricardo_Catalinas_Jim=C3=A9nez?=) Date: Wed, 9 Jul 2008 20:26:16 +0200 Subject: Atributo compartido por objetos de una misma clase In-Reply-To: References: <28ecc63c0807091058pd55edc0xa93906f43f826a19@mail.gmail.com> Message-ID: <28ecc63c0807091126i17d1f682i8c1242fc796d9ca4@mail.gmail.com> Genial, con eso me queda totalmente claro. Muchas gracias. -- Ricardo ------------ 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 Jul 9 20:36:52 2008 From: maengora en gmail.com (=?ISO-8859-1?Q?Manuel_Enrique_Gonz=E1lez_Ram=EDrez?=) Date: Wed, 9 Jul 2008 13:36:52 -0500 Subject: tutorial de wxGlade In-Reply-To: References: Message-ID: http://gda.utp.edu.co/~duto/python/tutorial_wxpy/index.htmlestá en spanish!! El día 9 de julio de 2008 10:45, claudio ivan barrios < claudio0085 en hotmail.com> escribió: > > hola a todos: > > Alguien me podria mandar un tutorial o el link de tutoriales de wxGlade > bien completo-. > gracias por su tiempo > _________________________________________________________________ > Blog your life in 3D with Windows Live Writer. > > http://www.windowslive.com/overview.html?ocid=TXT_TAGLM_Wave2_wl_writer_022008_______________________________________________ > 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 ogutsua en gmail.com Wed Jul 9 21:08:35 2008 From: ogutsua en gmail.com (Oliver =?ISO-8859-1?Q?Gut=E9rrez?=) Date: Wed, 09 Jul 2008 20:08:35 +0100 Subject: Problemas con =?ISO-8859-1?Q?funci=F3n?= xml_new_from_buffer usando Glade In-Reply-To: <4874F0B1.2050609@gmail.com> References: <1215575222.2212.6.camel@azazel.evosistemas.com> <4874F0B1.2050609@gmail.com> Message-ID: <1215630515.11849.4.camel@azazel.evosistemas.com> Hola Arnau: Si, lo he probado con muchos ficheros más. Todos empezados desde 0 y editados con el editor glade 2. Las versiones de los paquetes que tengo ahora mismo son: ii python-gtk2 2.12.1-0ubuntu1 Python bindings for the GTK+ widget set ii python-gtkglext1 1.1.0-3 GtkGLext python bindings ii python-gtkhtml2 2.19.1-0ubuntu7 Python bindings for the GtkHTML2 library ii python-gtksourceview2 2.2.0-0ubuntu2 Python bindings for the GtkSourceView widget ii libgtk2-perl 1:1.161-1 Perl interface to the 2.x series of the Gimp ii libgtk2.0-0 2.12.9-3ubuntu4 The GTK+ graphical user interface library ii libgtk2.0-bin 2.12.9-3ubuntu4 The programs for the GTK+ graphical user int ii libgtk2.0-cil 2.12.0-2ubuntu3 CLI binding for the GTK+ toolkit 2.12 ii libgtk2.0-common 2.12.9-3ubuntu4 Common files for the GTK+ graphical user int ii libgtk2.0-dev 2.12.9-3ubuntu4 Development files for the GTK+ library ii libgtkglext1 1.2.0-0ubuntu1 OpenGL Extension to GTK (shared libraries) ii libglade2-0 1:2.6.2-1 library to load .glade files at runtime ii libglade2.0-cil 2.12.0-2ubuntu3 CLI binding for the Glade libraries 2.6 ii libglademm-2.4-1c2a 2.6.6-1 C++ wrappers for libglade2 (shared library) El mié, 09-07-2008 a las 19:09 +0200, Arnau Sanchez escribió: > Oliver Gutérrez escribió: > > > revil en azazel:~/Eclipse/EVOGTK/src$ python > > Python 2.5.2 (r252:60911, Apr 21 2008, 11:12:42) > > [GCC 4.2.3 (Ubuntu 4.2.3-2ubuntu7)] on linux2 > > Type "help", "copyright", "credits" or "license" for more information. > >>>> import gtk > >>>> from gtk import glade > >>>> fd=open('test.glade') > >>>> buf=fd.read() > >>>> fd.close() > >>>> glade.xml_new_from_buffer(buf,len(buf)) > > __main__:1: Warning: g_path_get_dirname: assertion `file_name != NULL' > > failed > > __main__:1: GtkWarning: gdk_pixbuf_new_from_file: assertion `filename != > > NULL' failed > > Fallo de segmentación > > Siempre que la he usado, la función xml_new_from_buffer me ha funcionado bien. > > In [16]:import gtk.glade > In [18]:data = open("grioutil.glade").read() > In [19]:xml = gtk.glade.xml_new_from_buffer(data, len(data)) > In [20]:xml > Out[20]: > > Así que, o es un bug de la versión que tienes de pygtk (poco probable), o ese > fichero glade tiene algún problema. Lo único que se me ocurre es que mandes un > enlace del fichero con el que te da el error. > > Por cierto, ¿has probado con algún .glade más? > > arnau > _______________________________________________ > 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 minoztro en gmail.com Wed Jul 9 21:15:12 2008 From: minoztro en gmail.com (Milton Galo Patricio Inostroza Aguilera) Date: Wed, 9 Jul 2008 15:15:12 -0400 Subject: =?UTF-8?Q?Re:__importar_m=C3=B3dulos_desde_otra_carpeta?= In-Reply-To: <68886.96733.qm@web26207.mail.ukl.yahoo.com> References: <68886.96733.qm@web26207.mail.ukl.yahoo.com> Message-ID: <172699c50807091215m518af546sdf15041eea459c6f@mail.gmail.com> El día 9 de julio de 2008 11:37, leticia Fernandez escribió: > Hola a todos, > > tengo una pequeña aplicación con varios módulos y quería separarlos en distintas carpetas. > > Pero si hago esto, ¿como tendría que modificar el "import"? Seguro que es algo muy fácil, > pero no acabo de encontrar la manera. Bueno ya respondió Cristina sobre el asunto. Sólo me gustaría que pusieras cual es la estructura de tu proyecto ya que hace un tiempo me tocó hacer lo que tu dices y tuve problemas con carpetas que no estaba en una cierta organización y tuve que modificar el path para que python buscara en esos paquetes (carpetas), saludos y suerte > > Gracias! > > > ______________________________________________ > Enviado desde Correo Yahoo! La bandeja de entrada más inteligente. > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- Milton Inostroza Aguilera ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From francofuji en gmail.com Wed Jul 9 21:15:44 2008 From: francofuji en gmail.com (Francisco Perez) Date: Wed, 9 Jul 2008 15:15:44 -0400 Subject: Como obtener ultimo ID insertado con psycopg Message-ID: <30fdaa240807091215hd65c11n37b755d63c9f9e4a@mail.gmail.com> Hola, estoy usando psycopg para conectarme al postgre. Quisiera saber si alguno de ustedes sabe como puedo obtener el id de la ultima fila insertada. Gracias. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pych3m4 en gmail.com Thu Jul 10 00:32:27 2008 From: pych3m4 en gmail.com (Chema Cortes) Date: Thu, 10 Jul 2008 00:32:27 +0200 Subject: Como obtener ultimo ID insertado con psycopg In-Reply-To: <30fdaa240807091215hd65c11n37b755d63c9f9e4a@mail.gmail.com> References: <30fdaa240807091215hd65c11n37b755d63c9f9e4a@mail.gmail.com> Message-ID: <2c9fb0dd0807091532u6e381fday20a5a1ca78cde24b@mail.gmail.com> El día 9 de julio de 2008 21:15, Francisco Perez escribió: > Hola, estoy usando psycopg para conectarme al postgre. Quisiera saber > si alguno de ustedes sabe como puedo obtener el id de la ultima fila > insertada. Tal como indica la db-api2, el id de la última fila insertada estará en el atributo .lastrowid del cursor. http://www.python.org/dev/peps/pep-0249/ Junto con psycopg se instalan algunos ejemplos; uno de ellos muestra el funcionamiento del lastrowid. Huelga decir que en postgres es posible crear tablas sin OIDs. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pych3m4 en gmail.com Thu Jul 10 00:48:26 2008 From: pych3m4 en gmail.com (Chema Cortes) Date: Thu, 10 Jul 2008 00:48:26 +0200 Subject: =?ISO-8859-1?Q?Re:__importar_m=F3dulos_desde_otra_carpeta?= In-Reply-To: <172699c50807091215m518af546sdf15041eea459c6f@mail.gmail.com> References: <68886.96733.qm@web26207.mail.ukl.yahoo.com> <172699c50807091215m518af546sdf15041eea459c6f@mail.gmail.com> Message-ID: <2c9fb0dd0807091548g3b901b74k2aecd37dbf516349@mail.gmail.com> El día 9 de julio de 2008 21:15, Milton Galo Patricio Inostroza Aguilera escribió: > Sólo me gustaría que pusieras cual es la estructura de tu proyecto ya > que hace un tiempo me tocó hacer lo que tu dices y tuve problemas con > carpetas que no estaba en una cierta organización y tuve que modificar > el path para que python buscara en esos paquetes (carpetas), saludos y > suerte Resulta más sencillo, antes que modificar el PYTHONPATH o el sys.path, añadir un fichero con extensión .pth que relacione las rutas a los directorios donde buscar módulos y paquetes. Este fichero debe estar en la ruta de búsqueda por defecto, como, por ejemplo, en el mismo directorio donde esté la aplicación. http://www.python.org/doc/2.5.1/inst/search-path.html _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From camontuyu en yahoo.es Thu Jul 10 10:16:38 2008 From: camontuyu en yahoo.es (Beni) Date: Thu, 10 Jul 2008 10:16:38 +0200 Subject: =?utf-8?b?wr/Cv1BhdHLDs24gZGUgZGlzZcOxbz8/?= Message-ID: <8a19bc7c0807100116l7d1cb374l96509e1cb65a5df3@mail.gmail.com> Hola a todos. Tengo el siguiente 'problema' de diseño... Estoy haciendo una clase que lee datos de una página web mediente urllib y esta tiene un conjunto de expresiones regulares compiladas para obtener estos datos. He puesto estas expresiones como variables de clase para que sean compartidas por todas las instancias... sería algo así: class Web: _RE_TXT_NOMBRE = r'foo' _RE_NOMBRE = re.compile(_RE_TXT_NOMBRE) _RE_TXT_APELLIDOS = r'pepe' _RE_APELLIDOS = re.compile(_RE_TXT_APELLIDOS) [...] Como veis me interesa tambien el texto de la expresión regular (ya que no dí con la forma de obtener el texto a partir de una expresión compilada). El problema está en que las expresiones están creciendo en número y me 'afean' la clase. Por eso estoy buscando un método, patrón de diseño o algo pythonico para quede más bonito. No se,... un diccionario de expresiones regulares?... ¿Se os ocurre algo? ¿algún comentario? Saludos. -- Benito Rodríguez Arcos ------------ 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 Thu Jul 10 14:39:05 2008 From: pych3m4 en gmail.com (Chema Cortes) Date: Thu, 10 Jul 2008 14:39:05 +0200 Subject: =?ISO-8859-1?Q?Re:__=BF=BFPatr=F3n_de_dise=F1o=3F=3F?= In-Reply-To: <8a19bc7c0807100116l7d1cb374l96509e1cb65a5df3@mail.gmail.com> References: <8a19bc7c0807100116l7d1cb374l96509e1cb65a5df3@mail.gmail.com> Message-ID: <2c9fb0dd0807100539u8e5b1dbp9ea01b9ba8a28130@mail.gmail.com> El día 10 de julio de 2008 10:16, Beni escribió: > Tengo el siguiente 'problema' de diseño... Estoy haciendo una clase que lee > datos de una página web mediente urllib y esta tiene un conjunto de > expresiones regulares compiladas para obtener estos datos. He puesto estas > expresiones como variables de clase para que sean compartidas por todas las > instancias... sería algo así: > > class Web: > _RE_TXT_NOMBRE = r'foo' > _RE_NOMBRE = re.compile(_RE_TXT_NOMBRE) > > _RE_TXT_APELLIDOS = r'pepe' > _RE_APELLIDOS = re.compile(_RE_TXT_APELLIDOS) > > [...] > > Como veis me interesa tambien el texto de la expresión regular (ya que no dí > con la forma de obtener el texto a partir de una expresión compilada). _RE_NOMBRE.pattern _RE_APELLIDOS.pattern Este módulo ('sre') está programado en C y no expone sus atributos en un diccionario, al estilo pythónico (no se ven con el dir()). Tendrás que revisar la documentación para conocer su funcionamiento. > El > problema está en que las expresiones están creciendo en número y me 'afean' > la clase. > > Por eso estoy buscando un método, patrón de diseño o algo pythonico para > quede más bonito. No se,... un diccionario de expresiones regulares?... > > ¿Se os ocurre algo? ¿algún comentario? Yo evitaría los atributos de clase, pero lo que puedes hacer es agrupar todas estas expresiones regulares en un diccionario, tal como bien dices. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jcaballero.hep en gmail.com Thu Jul 10 14:44:22 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Thu, 10 Jul 2008 08:44:22 -0400 Subject: =?ISO-8859-1?Q?Re:__=BF=BFPatr=F3n_de_dise=F1o=3F=3F?= In-Reply-To: <2c9fb0dd0807100539u8e5b1dbp9ea01b9ba8a28130@mail.gmail.com> References: <8a19bc7c0807100116l7d1cb374l96509e1cb65a5df3@mail.gmail.com> <2c9fb0dd0807100539u8e5b1dbp9ea01b9ba8a28130@mail.gmail.com> Message-ID: El día 10 de julio de 2008 8:39, Chema Cortes escribió: > El día 10 de julio de 2008 10:16, Beni escribió: > > > Tengo el siguiente 'problema' de diseño... Estoy haciendo una clase que > lee > > datos de una página web mediente urllib y esta tiene un conjunto de > > expresiones regulares compiladas para obtener estos datos. He puesto > estas > > expresiones como variables de clase para que sean compartidas por todas > las > > instancias... sería algo así: > > > > class Web: > > _RE_TXT_NOMBRE = r'foo' > > _RE_NOMBRE = re.compile(_RE_TXT_NOMBRE) > > > > _RE_TXT_APELLIDOS = r'pepe' > > _RE_APELLIDOS = re.compile(_RE_TXT_APELLIDOS) > > > > [...] > > > > Como veis me interesa tambien el texto de la expresión regular (ya que no > dí > > con la forma de obtener el texto a partir de una expresión compilada). > > _RE_NOMBRE.pattern > _RE_APELLIDOS.pattern > > Este módulo ('sre') está programado en C y no expone sus atributos en > un diccionario, al estilo pythónico (no se ven con el dir()). Tendrás > que revisar la documentación para conocer su funcionamiento. > > > El > > problema está en que las expresiones están creciendo en número y me > 'afean' > > la clase. > > > > Por eso estoy buscando un método, patrón de diseño o algo pythonico para > > quede más bonito. No se,... un diccionario de expresiones regulares?... > > > > ¿Se os ocurre algo? ¿algún comentario? > > Yo evitaría los atributos de clase, pero lo que puedes hacer es > agrupar todas estas expresiones regulares en un diccionario, tal como > bien dices. Creo recordar que en el libro 'dive into python' hay un cap. donde se crea un diccionario de reglas (para encontrar el plural de palabras en inglés), con regexp. Quizás es parecido a lo que necesitas. Échale un vistazo. Saludos, Jose _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From riverplatense en gmail.com Thu Jul 10 15:57:44 2008 From: riverplatense en gmail.com (Javier Castrillo) Date: Thu, 10 Jul 2008 10:57:44 -0300 Subject: tutorial de wxGlade In-Reply-To: References: Message-ID: On Wed, Jul 9, 2008 at 3:36 PM, Manuel Enrique González Ramírez wrote: > http://gda.utp.edu.co/~duto/python/tutorial_wxpy/index.htmlestá > en spanish!! > Chequeá los links por favor, parecen no estar correctos. Saludos y gracias -- Javier Castrillo ========================================================= GNU / Linux User #242275 Jabber: riverplatense en jabberes.org Blog: http://javiercastrillo.wordpress.com Site: http://carapa.com.ar River: http://siguiendoariver.blogspot.com ========================================================= Usá Software Libre _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From p0stm4n en gmail.com Thu Jul 10 16:13:16 2008 From: p0stm4n en gmail.com (Facon) Date: Thu, 10 Jul 2008 16:13:16 +0200 Subject: Obtener el nombre del programa Message-ID: <1d15aa970807100713x5f323bb4i8277eb2277556519@mail.gmail.com> Hola lista de discusión, quisiera saber si es posible llamar al archivo.py a si mismo es decir que si por ejemplo le cambio el nombre o lo convierto en un .exe, esa función siga llamando al archivo. Haber si me entienden: archivo.py import loquesea archivo = '' archivo = funcion_para_obtener_el_nombre_del_archivo # Me daria "archivo.py" Ruta = os.getcwd + '/' + archivo # Esto me daria por ejemplo /home/usuario/python/archivo.py No se si me entienden, pero creo que me han entendido, gracias por leerme. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From andresmartinochoa en gmail.com Thu Jul 10 16:45:45 2008 From: andresmartinochoa en gmail.com (=?ISO-8859-1?Q?Andr=E9s_Mart=EDn_-_martyn?=) Date: Thu, 10 Jul 2008 09:45:45 -0500 Subject: Obtener el nombre del programa In-Reply-To: <1d15aa970807100713x5f323bb4i8277eb2277556519@mail.gmail.com> References: <1d15aa970807100713x5f323bb4i8277eb2277556519@mail.gmail.com> Message-ID: <8c1b00b30807100745p1caba486q5ad280d72c436ce5@mail.gmail.com> Holas :).. no se si sea esto ... pruebas:/tmp# cat test.py #!/bin/python import sys import os print sys.argv[0] os.system( 'python ' + sys.argv[0] ) pruebas:/tmp# python test.py test.py test.py test.py test.py test.py test.py .... y asi sigue hasta que le de ctrl + D. .. :D Saludos. On Thu, Jul 10, 2008 at 9:13 AM, Facon wrote: > Hola lista de discusión, quisiera saber si es posible llamar al > archivo.py a si mismo es decir que si por ejemplo le cambio el nombre > o lo convierto en un .exe, esa función siga llamando al archivo. > > Haber si me entienden: > > archivo.py > > import loquesea > > archivo = '' > > archivo = funcion_para_obtener_el_nombre_del_archivo # Me daria > "archivo.py" > > Ruta = os.getcwd + '/' + archivo # Esto me daria por ejemplo > /home/usuario/python/archivo.py > > No se si me entienden, pero creo que me han entendido, gracias por leerme. > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- Andrés Martín Ochoa; passport: andresmartin en linuxmail.org; Linux Registered User #436420; Asterisk User Number: 1000; PBX: (57) 1 578 20 30; Ext: 102; _______________________________________________ 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 Jul 10 17:08:36 2008 From: inigo_aldazabal en ehu.es (Inigo Aldazabal Mensa) Date: Thu, 10 Jul 2008 17:08:36 +0200 Subject: tutorial de wxGlade In-Reply-To: References: Message-ID: <200807101708.37097.inigo_aldazabal@ehu.es> El Jueves, 10 de Julio de 2008 15:57, Javier Castrillo escribió: > On Wed, Jul 9, 2008 at 3:36 PM, Manuel Enrique González Ramírez > > wrote: > > http://gda.utp.edu.co/~duto/python/tutorial_wxpy/index.html >.utp.edu.co/%7Eduto/python/tutorial_wxpy/index.html>está en spanish!! > > Chequeá los links por favor, parecen no estar correctos. mmm... yo los veo bien. > > > Saludos y gracias ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From riverplatense en gmail.com Thu Jul 10 17:31:42 2008 From: riverplatense en gmail.com (Javier Castrillo) Date: Thu, 10 Jul 2008 12:31:42 -0300 Subject: tutorial de wxGlade In-Reply-To: <200807101708.37097.inigo_aldazabal@ehu.es> References: <200807101708.37097.inigo_aldazabal@ehu.es> Message-ID: On Thu, Jul 10, 2008 at 12:08 PM, Inigo Aldazabal Mensa wrote: > mmm... yo los veo bien. > Ahora sí, se ve que a la mañana estaban caídos, gracias, -- Javier Castrillo ========================================================= GNU / Linux User #242275 Jabber: riverplatense en jabberes.org Blog: http://javiercastrillo.wordpress.com Site: http://carapa.com.ar River: http://siguiendoariver.blogspot.com ========================================================= Usá Software Libre _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From p0stm4n en gmail.com Thu Jul 10 18:13:57 2008 From: p0stm4n en gmail.com (Facon) Date: Thu, 10 Jul 2008 18:13:57 +0200 Subject: Obtener el nombre del programa In-Reply-To: <1d15aa970807100713x5f323bb4i8277eb2277556519@mail.gmail.com> References: <1d15aa970807100713x5f323bb4i8277eb2277556519@mail.gmail.com> Message-ID: <1d15aa970807100913y1db89626qb2faa16095256d63@mail.gmail.com> No es exactamente lo que busco, haber miren estoy buscando para que solo obtener nombre del archivo nada más, por si cambio el nombre del programa para así no tener que modificar el código. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From dejhanx en esdebian.org Thu Jul 10 18:47:17 2008 From: dejhanx en esdebian.org (Dennis Xiloj) Date: Thu, 10 Jul 2008 10:47:17 -0600 Subject: Obtener el nombre del programa In-Reply-To: <1d15aa970807100913y1db89626qb2faa16095256d63@mail.gmail.com> References: <1d15aa970807100713x5f323bb4i8277eb2277556519@mail.gmail.com> <1d15aa970807100913y1db89626qb2faa16095256d63@mail.gmail.com> Message-ID: <200807101047.17418.dejhanx@esdebian.org> On Thursday 10 July 2008 10:13:57 Facon wrote: > No es exactamente lo que busco, haber miren estoy buscando para que > solo obtener nombre del archivo nada más, por si cambio el nombre del > programa para así no tener que modificar el código. A mí si me funciona. ~$ cat nombre1.py #!/usr/bin/env python import sys import os print sys.argv[0] ~$ ./nombre1.py ./nombre1.py ~$ mv nombre1.py nombre2.py ~$ ./nombre2.py ./nombre2.py _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From victoredier en yahoo.com Thu Jul 10 18:50:14 2008 From: victoredier en yahoo.com (Victor Edier) Date: Thu, 10 Jul 2008 09:50:14 -0700 (PDT) Subject: Obtener el nombre del programa Message-ID: <708596.73953.qm@web30808.mail.mud.yahoo.com> Hola te refieres al nombre del archivo que se esta ejecutando. import sys nombre = sys.argv[0].split('/')[-1] ¡¡¡¡¡¡¡¡¡Good luck for every body!!!!!!!!! ----- Mensaje original ---- De: Facon Para: python-es en aditel.org Enviado: jueves, 10 de julio, 2008 11:13:57 Asunto: Re: [Python-es] Obtener el nombre del programa No es exactamente lo que busco, haber miren estoy buscando para que solo obtener nombre del archivo nada más, por si cambio el nombre del programa para así no tener que modificar el código. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes __________________________________________________ Correo Yahoo! Espacio para todos tus mensajes, antivirus y antispam ¡gratis! Regístrate ya - http://correo.espanol.yahoo.com/ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jcaballero.hep en gmail.com Thu Jul 10 19:23:01 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Thu, 10 Jul 2008 13:23:01 -0400 Subject: Obtener el nombre del programa In-Reply-To: <1d15aa970807100913y1db89626qb2faa16095256d63@mail.gmail.com> References: <1d15aa970807100713x5f323bb4i8277eb2277556519@mail.gmail.com> <1d15aa970807100913y1db89626qb2faa16095256d63@mail.gmail.com> Message-ID: Sí es EXACTAMENTE lo que buscas. Y, por cierto, se dice 'a ver', no 'haber' 2008/7/10 Facon : > No es exactamente lo que busco, haber miren estoy buscando para que > solo obtener nombre del archivo nada más, por si cambio el nombre del > programa para así no tener que modificar el código. > _______________________________________________ > 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 Thu Jul 10 22:04:27 2008 From: pyarnau en gmail.com (Arnau Sanchez) Date: Thu, 10 Jul 2008 22:04:27 +0200 Subject: Obtener el nombre del programa In-Reply-To: <708596.73953.qm@web30808.mail.mud.yahoo.com> References: <708596.73953.qm@web30808.mail.mud.yahoo.com> Message-ID: <48766B4B.2050505@gmail.com> Victor Edier escribió: > nombre = sys.argv[0].split('/')[-1] más portable: os.path.basename(sys.argv[0]) _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From cdocarmo en adinet.com.uy Thu Jul 10 22:11:52 2008 From: cdocarmo en adinet.com.uy (Carlos Do Carmo) Date: Thu, 10 Jul 2008 17:11:52 -0300 Subject: wxGrid Message-ID: <005701c8e2c9$346ad6a0$9d4083e0$@com.uy> Buenas, como estan? Estoy realizando un proyecto con Boa Constructor, en este momento estoy haciendo los formulario de búsquedas, de clientes, donde muestro los datos de los clientes “Nombre Dirección ………………………” estoy usando wxGrid para mostrar los datos. Sobre el wxGrid tengo algunas consultas. 1. Se puede ocultar la primera columna donde aparecen los numero de columnas, o poner ahí un numero propio por ej. El código del cliente 2. En el caso de que no se pueda realizar lo último, como hago para ocultar una columna, en algunas búsquedas por ej. De localidad no quiero que se vea el código, pero al hacer click o doble click en la fila necesito ese número para pasarlo al formulario de localidad, es un ejemplo Desde ya Gracias Carlos Do Carmo _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From p0stm4n en gmail.com Thu Jul 10 23:35:27 2008 From: p0stm4n en gmail.com (Facon) Date: Thu, 10 Jul 2008 23:35:27 +0200 Subject: Obtener el nombre del programa Message-ID: <1d15aa970807101435m3ba35f7ftfe98dd5886a7af5a@mail.gmail.com> Muchas Gracias por todo ;) , aun no estoy acostumbrado a este sistema, lo digo por si lo estoy poniendo mal. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From claudio0085 en hotmail.com Fri Jul 11 02:32:01 2008 From: claudio0085 en hotmail.com (claudio ivan barrios) Date: Fri, 11 Jul 2008 00:32:01 +0000 Subject: tutorial de boa Message-ID: hola a todos : alguien me podria pasar el link de algun tutorial de boa y mejor si esta en castellano mejor gracias saludos a todos _________________________________________________________________ Stop squinting -- view your photos on your TV. Learn more. http://www.microsoft.com/windows/digitallife/default.mspx?deepLink=photos_______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From le_fdez en yahoo.es Fri Jul 11 12:57:53 2008 From: le_fdez en yahoo.es (leticia Fernandez) Date: Fri, 11 Jul 2008 10:57:53 +0000 (GMT) Subject: =?iso-8859-1?Q?Re=3A_=5BPython-es=5D_importar_m=F3dulos_desde_otra_carpet?= =?iso-8859-1?Q?a?= Message-ID: <672837.40821.qm@web26207.mail.ukl.yahoo.com> Ah perfecto! Entonces simplemente tendría que crear un archivo *.pth en el que indicara el path? Gracias a todos :) ----- Mensaje original ---- De: Chema Cortes Para: Lista de discusión sobre python en castellano Enviado: miércoles, 9 de julio, 2008 23:48:26 Asunto: Re: [Python-es] importar módulos desde otra carpeta El día 9 de julio de 2008 21:15, Milton Galo Patricio Inostroza Aguilera escribió: > Sólo me gustaría que pusieras cual es la estructura de tu proyecto ya > que hace un tiempo me tocó hacer lo que tu dices y tuve problemas con > carpetas que no estaba en una cierta organización y tuve que modificar > el path para que python buscara en esos paquetes (carpetas), saludos y > suerte Resulta más sencillo, antes que modificar el PYTHONPATH o el sys.path, añadir un fichero con extensión .pth que relacione las rutas a los directorios donde buscar módulos y paquetes. Este fichero debe estar en la ruta de búsqueda por defecto, como, por ejemplo, en el mismo directorio donde esté la aplicación. http://www.python.org/doc/2.5.1/inst/search-path.html _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes ______________________________________________ Enviado desde Correo Yahoo! La bandeja de entrada más inteligente. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pepitovadecurt en gmail.com Fri Jul 11 13:27:56 2008 From: pepitovadecurt en gmail.com (pepitovadecurt) Date: Fri, 11 Jul 2008 13:27:56 +0200 Subject: PDF incrustar firma digital Message-ID: Hola, alguien sabe de alguna libreria que me permita incrustar a un pdf una firma digital (con certificado digital) _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From camontuyu en yahoo.es Fri Jul 11 14:57:37 2008 From: camontuyu en yahoo.es (Beni) Date: Fri, 11 Jul 2008 14:57:37 +0200 Subject: Referencias a propiedades de clases Message-ID: <8a19bc7c0807110557g61348048m3b8d5264731a5b9b@mail.gmail.com> Hola, tengo está cosa rara en mi código ... class A(object): def __init__(self): self.nombre = "hola" def __str__(self): return self.nombre def f(lista): for e in lista: e[0] += " mundo" a = A() print a f([[a.nombre, None, None],]) print a Me imprime: hola hola Cuando yo esperaba: hola hola mundo ¿Es que al hacer [a.propiedad, ] se hace una copia de la propiedad en la lista? ¿No todo es un objeto y se pasan por referencia? Un saludo. -- Benito Rodríguez Arcos ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jcaballero.hep en gmail.com Fri Jul 11 15:44:46 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Fri, 11 Jul 2008 09:44:46 -0400 Subject: Referencias a propiedades de clases In-Reply-To: <8a19bc7c0807110557g61348048m3b8d5264731a5b9b@mail.gmail.com> References: <8a19bc7c0807110557g61348048m3b8d5264731a5b9b@mail.gmail.com> Message-ID: Hola, No todo son objetos que se pasan por referencia. Tal y como lo haces no va a funcionar. Cuando creas la lista para pasarla como argumento a f(), a.nombre es una copia, y por tanto el objeto a no va a ver los cambios tras llamar a f(). Jose El día 11 de julio de 2008 8:57, Beni escribió: > Hola, tengo está cosa rara en mi código ... > > class A(object): > def __init__(self): > self.nombre = "hola" > > def __str__(self): > return self.nombre > > def f(lista): > for e in lista: > e[0] += " mundo" > > a = A() > > print a > > f([[a.nombre, None, None],]) > > print a > > Me imprime: > > hola > hola > > Cuando yo esperaba: > > hola > hola mundo > > ¿Es que al hacer [a.propiedad, ] se hace una copia de la propiedad en la > lista? ¿No todo es un objeto y se pasan por referencia? > > Un saludo. > > -- > Benito Rodríguez Arcos > > _______________________________________________ > 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 inf200468 en ucf.edu.cu Fri Jul 11 16:18:20 2008 From: inf200468 en ucf.edu.cu (inf200468 en ucf.edu.cu) Date: Fri, 11 Jul 2008 10:18:20 -0400 (EDT) Subject: como enviar correo In-Reply-To: References: <2094.10.14.19.34.1215445823.squirrel@correo> Message-ID: <36639.10.14.17.145.1215785900.squirrel@correo> gracias amigo >> saben de algun modulo que permita enviar >> correos por lotes, es decir a varios usuarios > > Hola, > > he aquí un ejemplo sencillo para que te guíes. > > from smtplib import SMTP > > servidor = SMTP(’princesa.pri.sld.cu’) # Cambia la cadena por el nombre de > tu servidor. > remitente = ’esteban en princesa.pri.sld.cu’ > destinatario = ’otro en princesa.pri.sld.cu’ > mensaje = ’From: %s\nTo: %s\n\n’ % (remitente, destinatario) > mensaje += ’Hola.\n’ > mensaje += ’Hasta luego.\n’ > > servidor.sendmail(remitente, destinatario, mensaje) > > -- > Saludos, > > Luis esteban de Dios Núñez > _______________________________________________ > 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 inf200468 en ucf.edu.cu Fri Jul 11 16:20:32 2008 From: inf200468 en ucf.edu.cu (inf200468 en ucf.edu.cu) Date: Fri, 11 Jul 2008 10:20:32 -0400 (EDT) Subject: manipulando clases In-Reply-To: <2c9fb0dd0807090246r47ebedb5vccce796d1f5131c2@mail.gmail.com> References: <1921.10.14.17.2.1215530803.squirrel@correo> <2c9fb0dd0807090246r47ebedb5vccce796d1f5131c2@mail.gmail.com> Message-ID: <42821.10.14.17.145.1215786032.squirrel@correo> gracias amigo > El 2008/7/8 escribió: > >> sigo con algunas dudas con lo de la herencia, si yo declaro la clase padre y >> luego dentro de una funcion de la clase hija necesito llamar a un metodo de la >> clase padre , tengo que instanciarla dentro del metodo o puedo llamar al metodo por su >> nombre___ > > La clase hija "hereda" todos los atributos y métodos del padre. A > efectos prácticos, es como si los métodos fueran de la clase hija. > > >> otra duda es que si todas las clases tienen que tener declarado un metodo >> __init__ o tienen uno por defecto > > No es obligatorio. Si lo hay, heredado o no, se invocará al crear la > instancia. Hay que tener cuidado para invocar "explícitamente" los > métodos __init__ de las clases padre (mírate la documentación sobre el > tema). Puede que esté ahí tu confusión. > > >> y la otra es que si tengo que tener todas las >> clases en un mismo script > > Puedes tener las definiciones donde quieras; la única condición es que > estén definidas antes de ser usadas. Puedes referenciar una clase a > través del nombre del módulo donde se encuentre definida (eg: class > C(mimodulo.miclase) ) > > >> les envio lo que he hecho para si pueden me digan si esta >> bien orientado , porque lo que es funcionar , funciona > > Algunos comentarios sobre el código: > >> class Conexion: >> >> �� def __init__(self): >> ������ self.dbname="dbservicios" >> ������ self.user="postgres" >> ������ self.host="127.0.0.1" >> ������ self.password="pepe" > > La primera pregunta sería ¿qué produce esta clase? Tu enfoque sigue > siendo demasiado "funcional", usas las instancias de Conexión como si > fueran biblioteca de funciones. Si tu clase crea "conexiones", la > instancia debería ser una conexión, almacenando toda la información > necesaria para ello, nunca se le tendría que pasar ningún parámetro > "conex" como haces en otros métodos. Si quieres, añade un parámetro > que indique si está establecida la conexión o no, o cualquier otra > forma que se te ocurra como abrir y cerrar la conexión en cada > consulta. > > Por otro lado, aunque no está mal colocar los parámetros de conexión > dentro del código, la idea que debería primar es crear código > "reutilizable". Harías bien en sacarlos de la definición de clase, > aunque, en realidad, ¿hace falta esta clase para algo? > >> >> �� def conectar(self): >> >> ������ try: >> >> ���������� conn = >> psycopg2.connect("dbname=%s user=%s host=%s password=%s"%�� >> (self.dbname,self.user,self.host,self.password)) >> >> ������ except: >> >> ���������� print "Error >> de conexion" >> >> ���������� sys.exit() >> >> ����� return conn > > Cuando se intercepta un error, es porque se tiene la intención de > recuperar la ejecución; de lo contrario, es mejor dejar pasar la > excepción para que se pueda recuperar desde otro sitio. En este código > estás considerando que todas las excepciones son errores de conexión, > lo que incluye todos los "warnings" que no deberían cortar la > ejecución. > > >> ���������� >> Conexion.__init__(self) #instanciando la clase conexion > > La "instanciación" crea una instancia; aquí estás haciendo otra cosa: > estás enviando una instancia de "AnalizadoraAccessApache" para que se > "inicialize" con los atributos de "Conexion". Su lugar debería ser en > un método "__init__" de "AnalizadoraAccessApache": > > def __init__(self): > Conexion.__init__(self) > > > Aquí podrías añadir atributos propios de la clase > "AnalizadoraAccessApache". Si no existiera este método "__init__", se > heredaría de "Conexion", por lo que no tienes que hacer nada especial > si no vas a añadir más atributos. > > > > Revisa de nuevo la documentación, que todo ésto viene bastante bien explicado. > _______________________________________________ > 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 camontuyu en yahoo.es Fri Jul 11 16:42:24 2008 From: camontuyu en yahoo.es (Beni) Date: Fri, 11 Jul 2008 16:42:24 +0200 Subject: Referencias a propiedades de clases In-Reply-To: References: <8a19bc7c0807110557g61348048m3b8d5264731a5b9b@mail.gmail.com> Message-ID: <8a19bc7c0807110742y5a7ef4fic2294bef3406c490@mail.gmail.com> 2008/7/11 Jose Caballero : > Hola, > > No todo son objetos que se pasan por referencia. > Tal y como lo haces no va a funcionar. Cuando creas la lista para pasarla > como argumento a f(), a.nombre es una copia, y por tanto el objeto a no va > a > ver los cambios tras llamar a f(). > > Jose > > Eso es lo que supuesto por el comportamiento del código... con lo que he probado con una pequeña variante, pasando a la lista un objeto, en este caso un array. class A(object): def __init__(self): self.nombre = "hola" self.arr = [] def __str__(self): return self.nombre + " " + str(self.arr) def f(lista): for e in lista: e[0] += " mundo" def g(lista): for e in lista: e[0].append(1) a = A() print a f([[a.nombre, None, None], ]) g([[a.arr, None, None], ]) print a Imprimiendo hola [] hola [1] ¿que pasa que la cadena no es un objeto? ¿por que ocurre esto? -- Benito Rodríguez Arcos ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jcaballero.hep en gmail.com Fri Jul 11 16:49:55 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Fri, 11 Jul 2008 10:49:55 -0400 Subject: Referencias a propiedades de clases In-Reply-To: <8a19bc7c0807110742y5a7ef4fic2294bef3406c490@mail.gmail.com> References: <8a19bc7c0807110557g61348048m3b8d5264731a5b9b@mail.gmail.com> <8a19bc7c0807110742y5a7ef4fic2294bef3406c490@mail.gmail.com> Message-ID: Hola, ejecuta esto y lo vas a entender def f(s): s += ' mundo' def g(x): x += 1 def h(l): l.append(1) ss = 'hola' f(ss) print ss xx = 0 g(xx) print xx ll = [] h(ll) print ll El día 11 de julio de 2008 10:42, Beni escribió: > 2008/7/11 Jose Caballero : > > > Hola, > > > > No todo son objetos que se pasan por referencia. > > Tal y como lo haces no va a funcionar. Cuando creas la lista para pasarla > > como argumento a f(), a.nombre es una copia, y por tanto el objeto a no > va > > a > > ver los cambios tras llamar a f(). > > > > Jose > > > > > Eso es lo que supuesto por el comportamiento del código... con lo que he > probado con una pequeña variante, pasando a la lista un objeto, en este > caso > un array. > > class A(object): > def __init__(self): > self.nombre = "hola" > self.arr = [] > > def __str__(self): > return self.nombre + " " + str(self.arr) > > def f(lista): > for e in lista: > e[0] += " mundo" > > def g(lista): > for e in lista: > e[0].append(1) > > a = A() > > print a > > f([[a.nombre, None, None], ]) > g([[a.arr, None, None], ]) > > print a > > Imprimiendo > > hola [] > hola [1] > > ¿que pasa que la cadena no es un objeto? ¿por que ocurre esto? > > -- > Benito Rodríguez Arcos > > _______________________________________________ > 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 alexis.roda.villalonga en gmail.com Fri Jul 11 17:15:23 2008 From: alexis.roda.villalonga en gmail.com (Alexis Roda) Date: Fri, 11 Jul 2008 17:15:23 +0200 Subject: Referencias a propiedades de clases In-Reply-To: References: <8a19bc7c0807110557g61348048m3b8d5264731a5b9b@mail.gmail.com> Message-ID: <4877790B.50501@gmail.com> En/na Jose Caballero ha escrit: > Hola, > > No todo son objetos que se pasan por referencia. > Tal y como lo haces no va a funcionar. Cuando creas la lista para pasarla > como argumento a f(), a.nombre es una copia, y por tanto el objeto a no va a > ver los cambios tras llamar a f(). No exactamente, no se pasa una copia de a.nombre sino una referencia a la cadena "hola". Lo que ocurre es que al hacer s += " mundo" se genera una nueva cadena, no se modifica la cadena s (las cadenas son inmutables) in situ, que es lo que haría falta para que el cambio se viese reflejado en el atributo 'nombre' del objeto (que sigue manteniendo una referencia a la cadena original): >>> s="hola" >>> id(s) -1210547648 >>> s += " mundo" >>> s 'hola mundo' >>> id(s) -1210551208 >>> La lista es mutable, por lo que en este caso el cambio sí es visible en el atributo 'arr'. >>> l=[] >>> id(l) -1210547668 >>> l.append(1) >>> id(l) -1210547668 >>> Saludos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jcaballero.hep en gmail.com Fri Jul 11 17:32:40 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Fri, 11 Jul 2008 11:32:40 -0400 Subject: Referencias a propiedades de clases In-Reply-To: <4877790B.50501@gmail.com> References: <8a19bc7c0807110557g61348048m3b8d5264731a5b9b@mail.gmail.com> <4877790B.50501@gmail.com> Message-ID: 2008/7/11 Alexis Roda : > En/na Jose Caballero ha escrit: > >> Hola, >> >> No todo son objetos que se pasan por referencia. >> Tal y como lo haces no va a funcionar. Cuando creas la lista para pasarla >> como argumento a f(), a.nombre es una copia, y por tanto el objeto a no va >> a >> ver los cambios tras llamar a f(). >> > > No exactamente, no se pasa una copia de a.nombre sino una referencia a la > cadena "hola". > > Lo que ocurre es que al hacer s += " mundo" se genera una nueva cadena, no > se modifica la cadena s (las cadenas son inmutables) in situ, que es lo que > haría falta para que el cambio se viese reflejado en el atributo 'nombre' > del objeto (que sigue manteniendo una referencia a la cadena original): > > >>> s="hola" > >>> id(s) > -1210547648 > >>> s += " mundo" > >>> s > 'hola mundo' > >>> id(s) > -1210551208 > >>> > > La lista es mutable, por lo que en este caso el cambio sí es visible en el > atributo 'arr'. > > >>> l=[] > >>> id(l) > -1210547668 > >>> l.append(1) > >>> id(l) > -1210547668 > >>> > > > Esa explicación es más precisa y correcta. Yo no me expliqué correctamente. En esa dirección apunta el código de ejemplo que pasaba en un último e-mail. Saludos. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From camontuyu en yahoo.es Fri Jul 11 18:12:51 2008 From: camontuyu en yahoo.es (Beni) Date: Fri, 11 Jul 2008 18:12:51 +0200 Subject: Referencias a propiedades de clases In-Reply-To: <4877790B.50501@gmail.com> References: <8a19bc7c0807110557g61348048m3b8d5264731a5b9b@mail.gmail.com> <4877790B.50501@gmail.com> Message-ID: <8a19bc7c0807110912o49861ce3s35a7c4235ab4e078@mail.gmail.com> On Fri, Jul 11, 2008 at 5:15 PM, Alexis Roda < alexis.roda.villalonga en gmail.com> wrote: > Lo que ocurre es que al hacer s += " mundo" se genera una nueva cadena, no > se modifica la cadena s (las cadenas son inmutables) in situ, que es lo que > haría falta para que el cambio se viese reflejado en el atributo 'nombre' > del objeto (que sigue manteniendo una referencia a la cadena original): > > >>> s="hola" > >>> id(s) > -1210547648 > >>> s += " mundo" > >>> s > 'hola mundo' > >>> id(s) > -1210551208 > >>> > > La lista es mutable, por lo que en este caso el cambio sí es visible en el > atributo 'arr'. > > >>> l=[] > >>> id(l) > -1210547668 > >>> l.append(1) > >>> id(l) > -1210547668 > >>> > > Saludos > Ok, perfectamente comprendido. Los literales cadena son inmutables. Pero la verdad es un poco confuso que sea un objeto de este tipo. Muchas gracias. Muy util la función id. Saludos. -- Benito Rodríguez Arcos ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From listas en soft-com.es Fri Jul 11 18:25:57 2008 From: listas en soft-com.es (=?ISO-8859-1?Q?Oswaldo_Hern=E1ndez?=) Date: Fri, 11 Jul 2008 18:25:57 +0200 Subject: PDF incrustar firma digital In-Reply-To: References: Message-ID: <48778995.6000102@soft-com.es> pepitovadecurt escribió: > Hola, alguien sabe de alguna libreria que me permita incrustar a un pdf > una firma digital (con certificado digital) > Yo tambien estoy interesado en este asunto, aunque todavia no he probado nada. iText parece que permite hacerlo, pero es Java, por lo que supongo que habria que utilizar Jython (nunca lo he utilizado): http://kelpi.com/script/00cd7c Si lo haces funcionar, o encuentras alguna otra solución, hazlo saber. 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 mlarreategi en codesyntax.com Sat Jul 12 00:09:08 2008 From: mlarreategi en codesyntax.com (Mikel Larreategi) Date: Sat, 12 Jul 2008 00:09:08 +0200 Subject: PDF incrustar firma digital In-Reply-To: <48778995.6000102@soft-com.es> References: <48778995.6000102@soft-com.es> Message-ID: 2008/7/11 Oswaldo Hernández : > pepitovadecurt escribió: >> >> Hola, alguien sabe de alguna libreria que me permita incrustar a un pdf >> una firma digital (con certificado digital) >> > > Yo tambien estoy interesado en este asunto, aunque todavia no he probado > nada. > > iText parece que permite hacerlo, pero es Java, por lo que supongo que > habria que utilizar Jython (nunca lo he utilizado): > > http://kelpi.com/script/00cd7c > > Si lo haces funcionar, o encuentras alguna otra solución, hazlo saber. Wow ! Ese script es mío !!!! Y funciona, pero sólo funciona con certificados guardados en archivos. Por ejemplo el de la FNMT. No lo probé para acceder a certificados de tarjetas (como el del DNI por ejemplo), pero viendo un poco cómo lo hacen los de CryptoApplet [1] (que es Java), tendrás que acceder a través de pkcs11, librerías que desconozco si existen para Python. Saludos, [1] http://projectestic.uji.es/pr/cryptoapplet/ -- Mikel Larreategi mlarreategi en codesyntax.com CodeSyntax Azitaingo Industrialdea 3 K E-20600 Eibar Tel: (+34) 943 82 17 80 ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From punchikk en yahoo.com Sat Jul 12 01:09:25 2008 From: punchikk en yahoo.com (punchik punchik) Date: Fri, 11 Jul 2008 16:09:25 -0700 (PDT) Subject: insertar javascript dentro de python Message-ID: <409986.14419.qm@web32004.mail.mud.yahoo.com> hola amigos, tengo un problema hace dias y no doy con la solucion. tengo una base de datos hecho en mysql que consta de un diccionario, osea palabras y sus respectivas definiciones. Tengo una pagina html que consta de un formulario, en el cual ingreso la palabra que me interesa buscar , apreto el boton buscar y luego me sale la respectiva definicion, al apretar el boton "buscar" envia la palabra que he ingresado via form a un script python en my servidor . El cual tiene un codigo mysql que hace la busqueda. Lo que quiero hacer es por ejemplo: insertar una palabra en mi buscador, y buscar su definicion , cuando me aparesca la definicion quiero dar dos clicks a cualquier palabra de la defincion para que vuelva a buscar esa palabra en la base de datos. algo como esto: http://dictionary.cambridge.org/ para hacer esto he ingresado un codigo javascript en mi codigo python. El problema que tengo es que cuando ingreso el codigo javascript el motor de busqueda deja de funcionarme . aca he subido dos versiones una con el codigo javascrip y otra sin el codigo javascript, pueden buscar en ambos la palabra "todo" http://www.ketaplex.net/ulttres.html - con javascript http://www.ketaplex.net/ulttre.html - sin javascript como veran en la version que tiene insertado el codigo javascript el motor de buscaqueda no funciona: alguien tiene alguna idea de porque? aca pego el codigo muchas gracias!!! #!/usr/bin/python import cgi, cgitb, MySQLdb print "Content-Type: text/html" # HTML is following print # blank line, end of headers print """ """ form = cgi.FieldStorage() name = form.getvalue('Name') print name db=MySQLdb.connect(host='ketaplex.ketaplex.net',user='ketamina',passwd='asdasdd',db='nasdsde') cursor=db.cursor() sql='select definicion from d where palabra = "' + name +'"' #sql='Select * From diccionario' cursor.execute(sql) resultado=cursor.fetchall() for registro in resultado: print '->', registro[0] ,registro[1] ------------ 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 Sat Jul 12 12:10:57 2008 From: pych3m4 en gmail.com (Chema Cortes) Date: Sat, 12 Jul 2008 12:10:57 +0200 Subject: insertar javascript dentro de python In-Reply-To: <409986.14419.qm@web32004.mail.mud.yahoo.com> References: <409986.14419.qm@web32004.mail.mud.yahoo.com> Message-ID: <2c9fb0dd0807120310p6428c8beh34394322c0b46269@mail.gmail.com> El día 12 de julio de 2008 1:09, punchik punchik escribió: > hola amigos, tengo un problema hace dias y no doy con la solucion. > [....] > para hacer esto he ingresado un codigo javascript en mi codigo python. El problema que tengo es que cuando ingreso el codigo javascript el motor de busqueda deja de funcionarme . > aca he subido dos versiones una con el codigo javascrip y otra sin el codigo javascript, pueden buscar en ambos la palabra "todo" No tendría que haber diferencias apreciables entre ambas versiones. Posiblemente, tengan alguna pequeña diferencia que hace que falle el script antes de realizar la búsqueda (como que esté mal la clave de conexión, etc). Activa el depurador cgi a ver si te da alguna pista. > #!/usr/bin/python > > import cgi, cgitb, MySQLdb cgitb.enable() > > print "Content-Type: text/html" # HTML is following > print # blank line, end of headers _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From punchikk en yahoo.com Sat Jul 12 20:59:03 2008 From: punchikk en yahoo.com (punchik punchik) Date: Sat, 12 Jul 2008 11:59:03 -0700 (PDT) Subject: insertar javascript dentro de python In-Reply-To: <2c9fb0dd0807120310p6428c8beh34394322c0b46269@mail.gmail.com> References: <2c9fb0dd0807120310p6428c8beh34394322c0b46269@mail.gmail.com> Message-ID: <181597.24036.qm@web32002.mail.mud.yahoo.com> hola, ya active cgitb.enable y esto es lo que obtengo, alguna idea? : OperationalError Python 2.3.5: /usr/bin/python Sat Jul 12 11:56:46 2008 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /home/.stoli/ketaplex/ketaplex.net/cgi-bin/ulttres.py 91 92 #sql='Select * From diccionario' 93 cursor.execute(sql) 94 resultado=cursor.fetchall() 95 cursor = , cursor.execute = >, sql = 'select definicion from d where palabra = "todo"' /usr/lib/python2.3/site-packages/MySQLdb/cursors.py in execute(self=, query='select definicion from d where palabra = "todo"', args=None) 135 del tb 136 self.messages.append((exc, value)) 137 self.errorhandler(self, exc, value) 138 self._executed = query 139 self._warning_check() self = , self.errorhandler = >, exc = , value = <_mysql_exceptions.OperationalError instance> /usr/lib/python2.3/site-packages/MySQLdb/connections.py in defaulterrorhandler(connection=<_mysql.connection open to 'ketaplex.ketaplex.net' at 81ca0a4>, cursor=, errorclass=, errorvalue=<_mysql_exceptions.OperationalError instance>) 31 else: 32 connection.messages.append(error) 33 raise errorclass, errorvalue 34 35 errorclass = , errorvalue = <_mysql_exceptions.OperationalError instance> OperationalError: (1054, "Unknown column 'definicion' in 'field list'") args = (1054, "Unknown column 'definicion' in 'field list'") --- On Sat, 7/12/08, Chema Cortes wrote: > From: Chema Cortes > Subject: Re: [Python-es] insertar javascript dentro de python > To: "Lista de discusión sobre python en castellano" > Date: Saturday, July 12, 2008, 5:10 AM > El día 12 de julio de 2008 1:09, punchik punchik > escribió: > > hola amigos, tengo un problema hace dias y no doy con > la solucion. > > [....] > > para hacer esto he ingresado un codigo javascript en > mi codigo python. El problema que tengo es que cuando > ingreso el codigo javascript el motor de busqueda deja de > funcionarme . > > aca he subido dos versiones una con el codigo > javascrip y otra sin el codigo javascript, pueden buscar en > ambos la palabra "todo" > > No tendría que haber diferencias apreciables entre ambas > versiones. > Posiblemente, tengan alguna pequeña diferencia que hace > que falle el > script antes de realizar la búsqueda (como que esté mal > la clave de > conexión, etc). Activa el depurador cgi a ver si te da > alguna pista. > > > > #!/usr/bin/python > > > > import cgi, cgitb, MySQLdb > > cgitb.enable() > > > > > print "Content-Type: text/html" # HTML > is following > > print # blank line, end > of headers > _______________________________________________ > 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 claudio0085 en hotmail.com Sun Jul 13 01:11:42 2008 From: claudio0085 en hotmail.com (claudio ivan barrios) Date: Sat, 12 Jul 2008 23:11:42 +0000 Subject: abri una imagen con wx.StaticBitmap Message-ID: Hola: Quiero abrir una imagen con wx.StaticBitmap dentro de un panel. El problema es que abro una imagen ,luego quiero abrir otra imagen pero esta se sola con la anterior ( se ven las dos imagenes). Quiero que se vea una sola imagen nada mas. Gracias por su tiempo .Saludos _________________________________________________________________ Do more with your photos with Windows Live Photo Gallery. http://www.windowslive.com/share.html?ocid=TXT_TAGLM_Wave2_photos_022008_______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From subscripcions en trespams.com Sun Jul 13 11:34:20 2008 From: subscripcions en trespams.com (Antoni Aloy) Date: Sun, 13 Jul 2008 11:34:20 +0200 Subject: insertar javascript dentro de python In-Reply-To: <409986.14419.qm@web32004.mail.mud.yahoo.com> References: <409986.14419.qm@web32004.mail.mud.yahoo.com> Message-ID: <200807131134.20913.subscripcions@trespams.com> El Dissabte, 12-07-08 a les 01:09 escrigueres: > hola amigos, tengo un problema hace dias y no doy con la solucion. > tengo una base de datos hecho en mysql que consta de un diccionario, osea > palabras y sus respectivas definiciones. Tengo una pagina html que consta > de un formulario, en el cual ingreso la palabra que me interesa buscar , > apreto el boton buscar y luego me sale la respectiva definicion, al apretar > el boton "buscar" envia la palabra que he ingresado via form a un script > python en my servidor . El cual tiene un codigo mysql que hace la busqueda. > > Lo que quiero hacer es por ejemplo: insertar una palabra en mi buscador, y > buscar su definicion , cuando me aparesca la definicion quiero dar dos > clicks a cualquier palabra de la defincion para que vuelva a buscar esa > palabra en la base de datos. > > algo como esto: http://dictionary.cambridge.org/ > > para hacer esto he ingresado un codigo javascript en mi codigo python. El > problema que tengo es que cuando ingreso el codigo javascript el motor de > busqueda deja de funcionarme . aca he subido dos versiones una con el > codigo javascrip y otra sin el codigo javascript, pueden buscar en ambos la > palabra "todo" > > http://www.ketaplex.net/ulttres.html - con javascript > > http://www.ketaplex.net/ulttre.html - sin javascript > > como veran en la version que tiene insertado el codigo javascript el motor > de buscaqueda no funciona: alguien tiene alguna idea de porque? > > aca pego el codigo muchas gracias!!! > > > > #!/usr/bin/python > > import cgi, cgitb, MySQLdb > > > print "Content-Type: text/html" # HTML is following > print # blank line, end of headers > > print """ """ > > > > > > > form = cgi.FieldStorage() > name = form.getvalue('Name') > print name > > > db=MySQLdb.connect(host='ketaplex.ketaplex.net',user='ketamina',passwd='asd >asdd',db='nasdsde') cursor=db.cursor() > sql='select definicion from d where palabra = "' + name +'"' ^^^^^^ Esto da lugar a ataques de inyección de código sql. mucho mejor: sql="select definicion from d where palabra = %s" cursor.excecute(sql, (name,)) prueba si esto te funciona. He visto en el mensaje posterior que el problema no era tanto de código como de la select que se genera. El código anterior hace que sea el interfaz el que tenga que preocuparse por escapar los valores de los parámetros y poner comillas dobles o simples según corresponda. Saludos, -- Antoni Aloy López Binissalem - Mallorca http://trespams.com Soci de bulma #34 ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From py en ch3m4.org Sun Jul 13 13:52:23 2008 From: py en ch3m4.org (Chema Cortes) Date: Sun, 13 Jul 2008 13:52:23 +0200 Subject: insertar javascript dentro de python In-Reply-To: <181597.24036.qm@web32002.mail.mud.yahoo.com> References: <181597.24036.qm@web32002.mail.mud.yahoo.com> Message-ID: <200807131352.39876.py@ch3m4.org> El Saturday 12 July 2008 20:59:03 punchik punchik escribió: > hola, ya active cgitb.enable y esto es lo que obtengo, alguna idea? : > >.... >> OperationalError: (1054, "Unknown column 'definicion' in 'field list'") > args = (1054, "Unknown column 'definicion' in 'field list'") Creo que está claro, no encuentra la columna "definicion" en la tabla. Me temo que, al final, no va a ser un problema ni de python ni de javascript. ------------ 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 kalith.9 en gmail.com Sun Jul 13 19:12:17 2008 From: kalith.9 en gmail.com (kalith kalith) Date: Mon, 14 Jul 2008 12:42:17 +1930 Subject: comprobacion de webs Message-ID: <3da702830807131012p4a6a6be9h2f1109104f5e411c@mail.gmail.com> Buenas tardes tengan todos de la lista.. tengo una gran interrogante la cual planteo a continuacion: Es posible verificar dos direcciones casi identicas y que me de un mensaje de error distinto explico: supongamos que tengo esta pagina www.mipagina.com y tengo un archivo llamado prueba1.txt.. de modo tal que existe www.mipagina.com/prueba1.txt pero quisiera saber si es posible que cuando ese existe me de un msj ejemplo existe pero que si yo coloco www.mipagina.com/prueba2.txt (el cual no existe) me de un msj de error.. alguien me podria ayudar.. saludos y gracias -- 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 maikeloh en cfg.rimed.cu Sun Jul 13 16:25:08 2008 From: maikeloh en cfg.rimed.cu (=?ISO-8859-1?Q?Maikel_Ortega_Hern=E1ndez?=) Date: Sun, 13 Jul 2008 10:25:08 -0400 Subject: comprobacion de webs In-Reply-To: <3da702830807131012p4a6a6be9h2f1109104f5e411c@mail.gmail.com> References: <3da702830807131012p4a6a6be9h2f1109104f5e411c@mail.gmail.com> Message-ID: <487A1044.8000901@cfg.rimed.cu> Hola: eso que necesitas se puede hacer facilmente usando el modulo urllib2, la cual te permite realizar solicitudes para diferentes protocolos, entre ellos el http, asi como poder determinar los estados de la respuesta de dicha solicitud, si fue 200 para pag encontrada, o 404 para pag no existente, aqui te envio un link donde viene explicado como trabajar con ella, asi como algunos ejemplos http://www.voidspace.org.uk/python/articles/urllib2.shtml kalith kalith escribió: > Buenas tardes tengan todos de la lista.. tengo una gran interrogante la cual > planteo a continuacion: > > Es posible verificar dos direcciones casi identicas y que me de un mensaje > de error distinto explico: > > supongamos que tengo esta pagina www.mipagina.com y tengo un archivo llamado > prueba1.txt.. de modo tal que existe www.mipagina.com/prueba1.txt pero > quisiera saber si es posible que cuando ese existe me de un msj ejemplo > existe pero que si yo coloco www.mipagina.com/prueba2.txt (el cual no > existe) me de un msj de error.. alguien me podria ayudar.. saludos y gracias > > -- Saludos ################################## # Maikel Ortega Hernández # # email: maikeloh en cfg.rimed.cu # # jabber: maikeloh en cfg.rimed.cu # ################################## -- Este mensaje ha sido analizado por MailScanner en busca de virus y otros contenidos peligrosos, y se considera que está limpio. MailScanner agradece a transtec Computers por su apoyo. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From hebm12 en gmail.com Sun Jul 13 20:51:05 2008 From: hebm12 en gmail.com (Hector Barrios Molano) Date: Sun, 13 Jul 2008 13:51:05 -0500 Subject: Obteber datos de paginas de internet. Message-ID: <626640da0807131151v2ad27a8ci58c023f508d0904b@mail.gmail.com> Hola a todos. Este es mi primer mensaje en esta lista de correo, y mi inquietud es la siguiente: cómo se puede hacer que un programa en python pueda usar datos de las páginas de internet?, por ejemplo los programas que muestran el clima que obtienen esos datos de una pág. de internet determinada. Espero que me halla hecho entender, y gracias por su atención. Hecotr Emilio Barrios Molano _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From llonchj en atcubic.com Sun Jul 13 20:55:42 2008 From: llonchj en atcubic.com (Jordi Llonch) Date: Sun, 13 Jul 2008 20:55:42 +0200 Subject: Obteber datos de paginas de internet. In-Reply-To: <626640da0807131151v2ad27a8ci58c023f508d0904b@mail.gmail.com> References: <626640da0807131151v2ad27a8ci58c023f508d0904b@mail.gmail.com> Message-ID: <5DA9E27B-7706-4E32-AE5C-4BDF0477F293@atcubic.com> Hola Hector, Puedes usar "urllib2" y "BeautifulSoup" para conseguir lo que necesitas. Busca en Google estas dos palabras. Saludos, El 13/07/2008, a las 20:51, Hector Barrios Molano escribió: > Hola a todos. > > Este es mi primer mensaje en esta lista de correo, y mi inquietud es > la > siguiente: cómo se puede hacer que un programa en python pueda usar > datos de > las páginas de internet?, por ejemplo los programas que muestran el > clima > que obtienen esos datos de una pág. de internet determinada. > > Espero que me halla hecho entender, y gracias por su atención. > > > Hecotr Emilio Barrios Molano > _______________________________________________ > 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 nonamed en ya.com Sun Jul 13 21:28:26 2008 From: nonamed en ya.com (=?ISO-8859-1?Q?David_Garc=EDa?=) Date: Sun, 13 Jul 2008 21:28:26 +0200 Subject: Obteber datos de paginas de internet. In-Reply-To: <626640da0807131151v2ad27a8ci58c023f508d0904b@mail.gmail.com> References: <626640da0807131151v2ad27a8ci58c023f508d0904b@mail.gmail.com> Message-ID: <487A575A.30207@ya.com> Si es una pagina xhtml bien formada puedes usar xml.sax, xml.dom o ElementTree. Para una página html puedes usar sgmllib, heredas SGMLParser y creas las funciones miembro para parsear la tag donde se encuentran los datos que quieres. Hector Barrios Molano escribió: > Hola a todos. > > Este es mi primer mensaje en esta lista de correo, y mi inquietud es la > siguiente: cómo se puede hacer que un programa en python pueda usar datos de > las páginas de internet?, por ejemplo los programas que muestran el clima > que obtienen esos datos de una pág. de internet determinada. > > Espero que me halla hecho entender, y gracias por su atención. > > > Hecotr Emilio Barrios Molano > _______________________________________________ > 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 nonamed en ya.com Sun Jul 13 21:31:36 2008 From: nonamed en ya.com (=?ISO-8859-1?Q?David_Garc=EDa?=) Date: Sun, 13 Jul 2008 21:31:36 +0200 Subject: comprobacion de webs In-Reply-To: <3da702830807131012p4a6a6be9h2f1109104f5e411c@mail.gmail.com> References: <3da702830807131012p4a6a6be9h2f1109104f5e411c@mail.gmail.com> Message-ID: <487A5818.7060202@ya.com> Hola, puedes usar httplib y ver en el atributo status del objeto HTTPResponse que se corresponde con el código devuelto por el servidor al pedir el recurso. kalith kalith escribió: > Buenas tardes tengan todos de la lista.. tengo una gran interrogante la cual > planteo a continuacion: > > Es posible verificar dos direcciones casi identicas y que me de un mensaje > de error distinto explico: > > supongamos que tengo esta pagina www.mipagina.com y tengo un archivo llamado > prueba1.txt.. de modo tal que existe www.mipagina.com/prueba1.txt pero > quisiera saber si es posible que cuando ese existe me de un msj ejemplo > existe pero que si yo coloco www.mipagina.com/prueba2.txt (el cual no > existe) me de un msj de error.. alguien me podria ayudar.. saludos y gracias > > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pythown en gmail.com Sun Jul 13 22:24:30 2008 From: pythown en gmail.com (=?ISO-8859-1?Q?Antonio_G=F3mez?=) Date: Sun, 13 Jul 2008 22:24:30 +0200 Subject: Distinguir Message-ID: <13a83ada0807131324g141813e7x1a6eec318f169b0@mail.gmail.com> Buenas: Hago una lista con el contenido de un directorio, y me gustaria indicar al programita que distinguise ARCHIVOS y CARPETAS. ¿Cual es la forma ideal? Un saludo. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From nonamed en ya.com Sun Jul 13 23:28:00 2008 From: nonamed en ya.com (=?ISO-8859-1?Q?David_Garc=EDa?=) Date: Sun, 13 Jul 2008 23:28:00 +0200 Subject: Distinguir In-Reply-To: <13a83ada0807131324g141813e7x1a6eec318f169b0@mail.gmail.com> References: <13a83ada0807131324g141813e7x1a6eec318f169b0@mail.gmail.com> Message-ID: <487A7360.7080909@ya.com> os.path.isdir para directorios os.path.file para archivos [x for x in lista if os.path.isdir(x)] Antonio Gómez escribió: > Buenas: > > Hago una lista con el contenido de un directorio, y me gustaria indicar al > programita que distinguise ARCHIVOS y CARPETAS. ¿Cual es la forma ideal? > > Un saludo. > _______________________________________________ > 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 kalith.9 en gmail.com Mon Jul 14 00:51:22 2008 From: kalith.9 en gmail.com (kalith kalith) Date: Mon, 14 Jul 2008 18:21:22 +1930 Subject: comprobacion de webs In-Reply-To: <487A5818.7060202@ya.com> References: <3da702830807131012p4a6a6be9h2f1109104f5e411c@mail.gmail.com> <487A5818.7060202@ya.com> Message-ID: <3da702830807131551u7182e136sddec106b961312de@mail.gmail.com> a eso me referia al tipo de error.. la verdad no me queda muy claro me decis que por ejemplo con HTTPResponse dependiendo del tipo de mensaje que me de puedo distinguir saludos y gracias por la pasiencia -- 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 llonchj en atcubic.com Mon Jul 14 01:00:51 2008 From: llonchj en atcubic.com (Jordi Llonch) Date: Mon, 14 Jul 2008 01:00:51 +0200 Subject: comprobacion de webs In-Reply-To: <487A5818.7060202@ya.com> References: <3da702830807131012p4a6a6be9h2f1109104f5e411c@mail.gmail.com> <487A5818.7060202@ya.com> Message-ID: <1A09C85E-5DE8-4A7D-9BE4-BA434AF621CE@atcubic.com> a eso me referia al tipo de error.. la verdad no me queda muy claro me decis que por ejemplo con HTTPResponse dependiendo del tipo de mensaje que me de puedo distinguir saludos y gracias por la pasiencia -- Seamos realistas y hagamos lo imposible _______________________________________________ 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 camontuyu en yahoo.es Mon Jul 14 08:13:34 2008 From: camontuyu en yahoo.es (Beni) Date: Mon, 14 Jul 2008 08:13:34 +0200 Subject: Obteber datos de paginas de internet. In-Reply-To: <487A575A.30207@ya.com> References: <626640da0807131151v2ad27a8ci58c023f508d0904b@mail.gmail.com> <487A575A.30207@ya.com> Message-ID: <8a19bc7c0807132313y50dc0efen7976b2bda17af0c5@mail.gmail.com> 2008/7/13 David García : > Si es una pagina xhtml bien formada puedes usar xml.sax, xml.dom o > ElementTree. > > Para una página html puedes usar sgmllib, heredas SGMLParser y creas las > funciones miembro para parsear la tag donde se encuentran los datos que > quieres. > > > Hector Barrios Molano escribió: Yo suelo leer la pagina web con mechanize y luego extraer la información que necesito mediante expresiones regulares. ¿que beneficio o diferencia se obtiene de parsear la página web entera con un parser? Saludos. -- Benito Rodríguez Arcos ------------ 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 Mon Jul 14 12:24:39 2008 From: damufo en gmail.com (damufo) Date: Mon, 14 Jul 2008 12:24:39 +0200 Subject: wxGrid In-Reply-To: <005701c8e2c9$346ad6a0$9d4083e0$@com.uy> References: <005701c8e2c9$346ad6a0$9d4083e0$@com.uy> Message-ID: <487B2967.2090806@gmail.com> Carlos Do Carmo escribiu: > Buenas, como estan? > > > > Estoy realizando un proyecto con Boa Constructor, en este momento > estoy haciendo los formulario de búsquedas, de clientes, donde muestro los > datos de los clientes ?Nombre Dirección ?????????? estoy usando > wxGrid para mostrar los datos. > > Sobre el wxGrid tengo algunas consultas. > > > > 1. Se puede ocultar la primera columna donde aparecen los numero de > columnas, o poner ahí un numero propio por ej. El código del cliente prueba esto self.tu_wxgrid.SetRowLabelSize(1) o self.tu_wxgrid.SetRowLabelSize(0) y al añadir las filas self.lst_categorias.SetRowLabelValue(x, "") esto pone a "" (nada) el valor > > 2. En el caso de que no se pueda realizar lo último, como hago para ocultar > una columna, en algunas búsquedas por ej. De localidad no quiero que se vea > el código, pero al hacer click o doble click en la fila necesito ese número > para pasarlo al formulario de localidad, es un ejemplo > > self.tu_wxgrid.SetRowLabelValue(x, "tu valor") con esto si no me equivoco puedes poner el valor que quieras donde x es la fila. > > > > Desde ya Gracias > > > > Carlos Do Carmo > > > > > > > > > > _______________________________________________ > 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 willian.radicaled en gmail.com Mon Jul 14 17:17:35 2008 From: willian.radicaled en gmail.com (RadicalEd) Date: Mon, 14 Jul 2008 10:17:35 -0500 Subject: Obteber datos de paginas de internet. In-Reply-To: <8a19bc7c0807132313y50dc0efen7976b2bda17af0c5@mail.gmail.com> References: <626640da0807131151v2ad27a8ci58c023f508d0904b@mail.gmail.com> <487A575A.30207@ya.com> <8a19bc7c0807132313y50dc0efen7976b2bda17af0c5@mail.gmail.com> Message-ID: Yo lo hago con urllib2 y expresiones regulares, para alimentar una DB en MySQL 2008/7/14 Beni : > 2008/7/13 David García : > > > Si es una pagina xhtml bien formada puedes usar xml.sax, xml.dom o > > ElementTree. > > > > Para una página html puedes usar sgmllib, heredas SGMLParser y creas las > > funciones miembro para parsear la tag donde se encuentran los datos que > > quieres. > > > > > > Hector Barrios Molano escribió: > > > Yo suelo leer la pagina web con mechanize y luego extraer la información > que > necesito mediante expresiones regulares. ¿que beneficio o diferencia se > obtiene de parsear la página web entera con un parser? > > Saludos. > > -- > Benito Rodríguez Arcos > > _______________________________________________ > 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 most important programing webforum. http://foros.solocodigo.com _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pepitovadecurt en gmail.com Mon Jul 14 18:36:09 2008 From: pepitovadecurt en gmail.com (pepitovadecurt) Date: Mon, 14 Jul 2008 18:36:09 +0200 Subject: Abrir un exe con parametros Message-ID: Hola, quisiera abrir un ejecutable pasandole parametros. Lo he intentado con os.popen pero ni idea. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ogunsett en gmail.com Mon Jul 14 20:23:13 2008 From: ogunsett en gmail.com (Oscar Gunsett) Date: Mon, 14 Jul 2008 15:23:13 -0300 Subject: Abrir un exe con parametros In-Reply-To: References: Message-ID: Si el ejecutable soporta parametros en la linea de comandos , se lo pasa en la misma cadena con que se lo llama o sea: 'ls' o 'ls -l' o 'pkill -t tty2' para mas claro: os.popen('ls') os.popen('ls -l') os.popen('pkill -t tty2') Si los parametros se van modificando tendras que construir el string con el programa. El día 14 de julio de 2008 13:36, pepitovadecurt escribió: > Hola, quisiera abrir un ejecutable pasandole parametros. > Lo he intentado con os.popen pero ni idea. > > _______________________________________________ > 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 listas en soft-com.es Tue Jul 15 10:56:41 2008 From: listas en soft-com.es (=?ISO-8859-1?Q?Oswaldo_Hern=E1ndez?=) Date: Tue, 15 Jul 2008 10:56:41 +0200 Subject: PDF incrustar firma digital In-Reply-To: References: <48778995.6000102@soft-com.es> Message-ID: <487C6649.4010406@soft-com.es> Mikel Larreategi escribió: > 2008/7/11 Oswaldo Hernández : >> pepitovadecurt escribió: >>> Hola, alguien sabe de alguna libreria que me permita incrustar a un pdf >>> una firma digital (con certificado digital) >>> >> Yo tambien estoy interesado en este asunto, aunque todavia no he probado >> nada. >> >> iText parece que permite hacerlo, pero es Java, por lo que supongo que >> habria que utilizar Jython (nunca lo he utilizado): >> >> http://kelpi.com/script/00cd7c >> >> Si lo haces funcionar, o encuentras alguna otra solución, hazlo saber. > > Wow ! Ese script es mío !!!! > > Y funciona, pero sólo funciona con certificados guardados en archivos. > Por ejemplo el de la FNMT. No lo probé para acceder a certificados de > tarjetas (como el del DNI por ejemplo), pero viendo un poco cómo lo > hacen los de CryptoApplet [1] (que es Java), tendrás que acceder a > través de pkcs11, librerías que desconozco si existen para Python. > Hola Mikel, probaré en los proximos dias tu receta y espero no torpear mucho ya que como comenté, nunca he utilizado Jython. De momento, mi necesidad es dar validez legal a las Facturas que se que generan en PDF y se envian por correo electrónico, o descargan los clientes a traves de la web. Para esto creo que es suficiente con que contengan el certificado de la FNMT. Sobre pkcs11 he visto que si hay un wrapper para python: http://www.bit4id.org/trac/pykcs11 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 infotga en yahoo.com.br Tue Jul 15 11:42:28 2008 From: infotga en yahoo.com.br (renato e andreia) Date: Tue, 15 Jul 2008 11:42:28 +0200 Subject: Necessito ayuda con wx.grid como puedo hacer consulta de cliente en una grid Message-ID: <1216114948.6650.2.camel@renato-desktop> como puedo hacer consulta de cliente en una grid , usando un TextCtrl , y que selecione la fila que esta el cliente. ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From nrgaray en yahoo.es Tue Jul 15 14:48:39 2008 From: nrgaray en yahoo.es (Numael Garay) Date: Tue, 15 Jul 2008 12:48:39 +0000 (GMT) Subject: Hola, Como puedo recuperar codigo de un archivo .pyo Message-ID: <573146.85945.qm@web26907.mail.ukl.yahoo.com> Hola. Hace tiempo desarrolle un programa (Pequeño simulador de tablas de Base de Datos) con python y wxpython, pero por cosas de la vida perdi el codigo, jeje. solo tengo los archivos que me genero el py2exe. Al descomprimir la carpeta share.zip con 7-zip me salen todos los archivos pero .pyo, como puedo extraer codigo de aqui. muchas gracias. numael ______________________________________________ Enviado desde Correo Yahoo! La bandeja de entrada más inteligente. ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From hebm12 en gmail.com Tue Jul 15 21:16:38 2008 From: hebm12 en gmail.com (Hector Barrios Molano) Date: Tue, 15 Jul 2008 14:16:38 -0500 Subject: Cambiar de cadenas a numeros reales Message-ID: <626640da0807151216q3837e4f1y8b6653ab68769124@mail.gmail.com> Hola a todos. Resulta que durante la elaboración de un programa necesito pasar una cadena por ejemplo '1756.85' a numeros 1756.85 para poder hacer operaciones con ellos, sin embargo he hecho una busqueda en internet y no he encontrado nada acerca de esto. Les agradezco su ayuda. Hector E. Barrios Molano _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ematus en gmail.com Tue Jul 15 21:19:34 2008 From: ematus en gmail.com (Eduardo Matus) Date: Tue, 15 Jul 2008 15:19:34 -0400 Subject: Cambiar de cadenas a numeros reales In-Reply-To: <626640da0807151216q3837e4f1y8b6653ab68769124@mail.gmail.com> References: <626640da0807151216q3837e4f1y8b6653ab68769124@mail.gmail.com> Message-ID: <984ad6a0807151219t1fa04649g1a9219fe89300dd6@mail.gmail.com> x = float("456456.25") On Tue, Jul 15, 2008 at 3:16 PM, Hector Barrios Molano wrote: > Hola a todos. > > Resulta que durante la elaboración de un programa necesito pasar una cadena > por ejemplo '1756.85' a numeros 1756.85 para poder hacer operaciones con > ellos, sin embargo he hecho una busqueda en internet y no he encontrado > nada > acerca de esto. > > Les agradezco su ayuda. > > Hector E. Barrios Molano > _______________________________________________ > 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 dani en danigm.net Tue Jul 15 21:19:58 2008 From: dani en danigm.net (Daniel Garcia Moreno) Date: Tue, 15 Jul 2008 21:19:58 +0200 Subject: Cambiar de cadenas a numeros reales In-Reply-To: <626640da0807151216q3837e4f1y8b6653ab68769124@mail.gmail.com> References: <626640da0807151216q3837e4f1y8b6653ab68769124@mail.gmail.com> Message-ID: <1216149598.27499.1.camel@localhost.localdomain> El mar, 15-07-2008 a las 14:16 -0500, Hector Barrios Molano escribió: > Hola a todos. > > Resulta que durante la elaboración de un programa necesito pasar una cadena > por ejemplo '1756.85' a numeros 1756.85 para poder hacer operaciones con > ellos, sin embargo he hecho una busqueda en internet y no he encontrado nada > acerca de esto. float('1756.85'), puedes crear un float a partir de una cadena ------------ 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 subscripcions en trespams.com Tue Jul 15 21:20:28 2008 From: subscripcions en trespams.com (Antoni Aloy) Date: Tue, 15 Jul 2008 21:20:28 +0200 Subject: Cambiar de cadenas a numeros reales In-Reply-To: <626640da0807151216q3837e4f1y8b6653ab68769124@mail.gmail.com> References: <626640da0807151216q3837e4f1y8b6653ab68769124@mail.gmail.com> Message-ID: <200807152120.28287.subscripcions@trespams.com> El Dimarts, 15-07-08 a les 21:16 escrigueres: > Hola a todos. > > Resulta que durante la elaboración de un programa necesito pasar una cadena > por ejemplo '1756.85' a numeros 1756.85 para poder hacer operaciones con > ellos, sin embargo he hecho una busqueda en internet y no he encontrado > nada acerca de esto. float('1756.85') o bien si necesitas mucha precisión opera con Decimal from decimal import Decimal x = Decimal('1756.85') Saludos, -- Antoni Aloy López Binissalem - Mallorca http://trespams.com Soci de bulma #34 _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From hebm12 en gmail.com Tue Jul 15 21:48:50 2008 From: hebm12 en gmail.com (Hector Barrios Molano) Date: Tue, 15 Jul 2008 14:48:50 -0500 Subject: Cambiar de cadenas a numeros reales In-Reply-To: <200807152120.28287.subscripcions@trespams.com> References: <626640da0807151216q3837e4f1y8b6653ab68769124@mail.gmail.com> <200807152120.28287.subscripcions@trespams.com> Message-ID: <626640da0807151248p156ed2a9ya215c34a0ce2c464@mail.gmail.com> Muchas gracias a todos por su ayuda y rapidez, me ha servido mucho. 2008/7/15 Antoni Aloy : > El Dimarts, 15-07-08 a les 21:16 escrigueres: > > Hola a todos. > > > > Resulta que durante la elaboración de un programa necesito pasar una > cadena > > por ejemplo '1756.85' a numeros 1756.85 para poder hacer operaciones con > > ellos, sin embargo he hecho una busqueda en internet y no he encontrado > > nada acerca de esto. > float('1756.85') > o bien si necesitas mucha precisión opera con Decimal > > from decimal import Decimal > x = Decimal('1756.85') > > Saludos, > > -- > Antoni Aloy López > Binissalem - Mallorca > http://trespams.com > Soci de bulma #34 > _______________________________________________ > 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 hebm12 en gmail.com Tue Jul 15 21:50:17 2008 From: hebm12 en gmail.com (Hector Barrios Molano) Date: Tue, 15 Jul 2008 14:50:17 -0500 Subject: Obteber datos de paginas de internet. In-Reply-To: References: <626640da0807131151v2ad27a8ci58c023f508d0904b@mail.gmail.com> <487A575A.30207@ya.com> <8a19bc7c0807132313y50dc0efen7976b2bda17af0c5@mail.gmail.com> Message-ID: <626640da0807151250t77f27c85p857447b2673d3bbb@mail.gmail.com> Muchas gracias a todos por su ayuda, usé los módulos 'urllib2' y 'BeautifulSoup' y si me sirvieron. El día 14 de julio de 2008 10:17, RadicalEd escribió: > Yo lo hago con urllib2 y expresiones regulares, para alimentar una DB en > MySQL > > 2008/7/14 Beni : > > > 2008/7/13 David García : > > > > > Si es una pagina xhtml bien formada puedes usar xml.sax, xml.dom o > > > ElementTree. > > > > > > Para una página html puedes usar sgmllib, heredas SGMLParser y creas > las > > > funciones miembro para parsear la tag donde se encuentran los datos que > > > quieres. > > > > > > > > > Hector Barrios Molano escribió: > > > > > > Yo suelo leer la pagina web con mechanize y luego extraer la información > > que > > necesito mediante expresiones regulares. ¿que beneficio o diferencia se > > obtiene de parsear la página web entera con un parser? > > > > Saludos. > > > > -- > > Benito Rodríguez Arcos > > > > _______________________________________________ > > 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 most important programing webforum. > http://foros.solocodigo.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 eduardo.ulfe en gmail.com Wed Jul 16 03:58:55 2008 From: eduardo.ulfe en gmail.com (Eduardo) Date: Tue, 15 Jul 2008 22:58:55 -0300 Subject: Duda sobre modulo Gnuplot Message-ID: <29e33c430807151858m1bee059ao2373ccec49c56ee2@mail.gmail.com> Primeramente, transmitir mi agrado de unirme a esta lista de correo. Mi duda: He instalado el modulo Python Gnuplot en mi pc pero al ejecutar algun script sencillo (como los ejemplos q aparecen en la red) no se grafica nada. Aparece una ventana con ejes que llegan hasta +-1 pero nada se grafica. Otros ejemplos que he probado a puro copy paste no funcionan como deberian. No se que puede ser. En otra pc lo tengo funcionanado sin problemas. Estoy usando Linux Ubuntu 8.04 amd64 y el IDLE. Desde ya muchas gracias a quien me ayude. -- Sea Seeder Voluntario y ayude a la Humanidad. Campaña contra el 99,9% completado. _______________________________________________ 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 Jul 16 07:01:22 2008 From: cdocarmo en adinet.com.uy (Carlos Do Carmo) Date: Wed, 16 Jul 2008 02:01:22 -0300 Subject: Agregar un Row a una grilla Message-ID: <000301c8e701$01b91730$052b4590$@com.uy> Hola, como estan? Estoy intentando realizar que a medida de que voy grabando los contactos de un cliente estoy vayan mostrándose en una grilla mas abajo, la forma que realizo es en el __init__ Lamar a una función que crea las Cols y Rows self.grilla.CreateGrid(100,3) funciona bien, pero lo que quiero es que a medida que voy agregando un contacto se incremente las filas, saber cuantos registros tengo en la db y crear la grilla con esos datos de líneas, sin salir del formulario. Si se puede realizar, me pueden indicar como, puede ser una pregunta tonta, pero estoy recién empezando con Python y wx. Gracias Carlos Do Carmo _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From abermudez en hispasec.com Wed Jul 16 08:41:38 2008 From: abermudez en hispasec.com (Alejandro Bermudez Aragurz) Date: Wed, 16 Jul 2008 08:41:38 +0200 Subject: Cambiar de cadenas a numeros reales In-Reply-To: <626640da0807151216q3837e4f1y8b6653ab68769124@mail.gmail.com> References: <626640da0807151216q3837e4f1y8b6653ab68769124@mail.gmail.com> Message-ID: <487D9822.9070509@hispasec.com> Hector Barrios Molano escribió: > Hola a todos. > > Resulta que durante la elaboración de un programa necesito pasar una cadena > por ejemplo '1756.85' a numeros 1756.85 para poder hacer operaciones con > ellos, sin embargo he hecho una busqueda en internet y no he encontrado nada > acerca de esto. > > Les agradezco su ayuda. > > Hector E. Barrios Molano > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > > - Si el string es un número entero puedes usar: b = '5' a = int(b) Entonces a será una variable de tipo integer que contendrá el entero 5 b = '5' a = float(b) Entonces a será una variable de tipo coma flotante y contendrá 5 - Si el srtring es un numero expresado como decimal puedes usar: b = '5.43' a = float(b) Entonces a será una variable de tipo coma flotante y contendrá 5.43 Un saludo. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From falted en pytables.org Wed Jul 16 09:34:23 2008 From: falted en pytables.org (Francesc Alted) Date: Wed, 16 Jul 2008 09:34:23 +0200 Subject: Duda sobre modulo Gnuplot In-Reply-To: <29e33c430807151858m1bee059ao2373ccec49c56ee2@mail.gmail.com> References: <29e33c430807151858m1bee059ao2373ccec49c56ee2@mail.gmail.com> Message-ID: <200807160934.23522.falted@pytables.org> Bienvenido! A Wednesday 16 July 2008, Eduardo escrigué: > Primeramente, transmitir mi agrado de unirme a esta lista de correo. > > Mi duda: > > He instalado el modulo Python Gnuplot en mi pc pero al ejecutar algun > script sencillo (como los ejemplos q aparecen en la red) no se > grafica nada. Aparece una ventana con ejes que llegan hasta +-1 pero > nada se grafica. Otros ejemplos que he probado a puro copy paste no > funcionan como deberian. No se que puede ser. En otra pc lo tengo > funcionanado sin problemas. > > Estoy usando Linux Ubuntu 8.04 amd64 y el IDLE. Por favor, cuando envies preguntas de este estilo intenta siempre añadir la parte de tu código que no te funciona. Esto ayuda a detectar tu problema de manera mucho más rápida. Un saludo, -- Francesc Alted _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From damufo en gmail.com Wed Jul 16 11:10:34 2008 From: damufo en gmail.com (damufo) Date: Wed, 16 Jul 2008 11:10:34 +0200 Subject: Agregar un Row a una grilla In-Reply-To: <000301c8e701$01b91730$052b4590$@com.uy> References: <000301c8e701$01b91730$052b4590$@com.uy> Message-ID: <487DBB0A.70907@gmail.com> puede que self.grilla.AppendRows(1) te ayude Carlos Do Carmo escribiu: > Hola, como estan? > > > > Estoy intentando realizar que a medida de que voy grabando los contactos de > un cliente estoy vayan mostrándose en una grilla mas abajo, la forma que > realizo es en el __init__ > > > > Lamar a una función que crea las Cols y Rows > > > > self.grilla.CreateGrid(100,3) > > > > funciona bien, pero lo que quiero es que a medida que voy agregando un > contacto se incremente las filas, saber cuantos registros tengo en la db y > crear la grilla con esos datos de líneas, sin salir del formulario. > > > > Si se puede realizar, me pueden indicar como, puede ser una pregunta tonta, > pero estoy recién empezando con Python y wx. > > > > Gracias > > > > > > Carlos Do Carmo > > > > > > > > > > _______________________________________________ > 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 cloudneozero en gmail.com Wed Jul 16 21:24:20 2008 From: cloudneozero en gmail.com (Ark) Date: Wed, 16 Jul 2008 14:24:20 -0500 Subject: =?iso-8859-1?q?Pr=F3ximas_versiones_de_Pyragua=2C_el?= =?iso-8859-1?q?_editor_pythonico_colombiano?= Message-ID: <9dd22c9c0807161224i1fa41cfcpa164bfb5127de8d4@mail.gmail.com> El semillero de investigación Pyrox, desarrolladores de la IDE Pyragua para el entorno de programación Python piensa realizar una nueva versión de Pyragua. Antes de ello se espera lanzar una versión de corrección de errores de la última versión estable de Pyragua (0.2) y por ello pedimos la colaboración de los usuarios de pyragua para reporte de bugs. Esta versión corregida la esperamos tener lista para antes del 4 de agosto. Pyragua se encuentra en los repositorios de Debian Sid y en Ubuntu 8.04, y también se puede descargar desde la página del semillero http://pyrox.utp.edu.co. El reporte de bugs se puede realizar a través de nuestro administrador de proyectos Trac que se encuentra en la página http://quimbaya.utp.edu.co. De todas formas preparamos un documento pequeño para guiar en el reporte de bugs y está http://pyrox.utp.edu.co/documentacion/manuales-y-tutoriales/como-reportar-bugs-pedir-mejoras-y-nuevas . Desde la interfaz de Trac no solo se pueden reportar bugs, sino que también se pueden realizar peticiones de características nuevas, y los que estén interesados en solicitar alguna característica nueva lo puede realizar también desde Trac (con los Tickets). Estas sugerencias se tomarán en cuenta en la próxima versión (y en próximas), y los bugs reportados serán revisados para la versión corregida. Aún no tenemos fecha definida para la nueva versión de Pyragua, pero esperamos que no sean más de algunos meses. Ark _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From celord en gmail.com Thu Jul 17 00:12:49 2008 From: celord en gmail.com (=?ISO-8859-1?Q?C=E9sar_Garc=EDa?=) Date: Wed, 16 Jul 2008 16:12:49 -0600 Subject: =?iso-8859-1?q?Tama=F1o_de_Objetos?= Message-ID: Hola lista, tengo una duda, como puedo saber cuanto tamaño esta consumiendo un objeto en especial, por ejemplo una lista. Gracias -- http://celord.blogspot.com/ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From cdgarciaq en yahoo.com Thu Jul 17 02:14:47 2008 From: cdgarciaq en yahoo.com (Cesar Garcia) Date: Wed, 16 Jul 2008 17:14:47 -0700 (PDT) Subject: Sumar Digitos Message-ID: <559840.79476.qm@web51710.mail.re2.yahoo.com> Buenas a Todos !!! Existe el alguna opcion en Python para que in numero ingresado halle la suma de los digitos ejemplo Numero = 987456 Resultado 9+8+7+4+5+6 O algun algoritmo Saludos ________________________________   Atte.  César García    ________________________________ ----- Mensaje original ---- De: Victor Edier Para: Lista de discusión sobre python en castellano Enviado: jueves, 10 de julio, 2008 11:50:14 Asunto: Re: [Python-es] Obtener el nombre del programa Hola te refieres al nombre del archivo que se esta ejecutando. import sys nombre = sys.argv[0].split('/')[-1] ¡¡¡¡¡¡¡¡¡Good luck for every body!!!!!!!!! ----- Mensaje original ---- De: Facon Para: python-es en aditel.org Enviado: jueves, 10 de julio, 2008 11:13:57 Asunto: Re: [Python-es] Obtener el nombre del programa No es exactamente lo que busco, haber miren estoy buscando para que solo obtener nombre del archivo nada más, por si cambio el nombre del programa para así no tener que modificar el código. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes __________________________________________________ Correo Yahoo! Espacio para todos tus mensajes, antivirus y antispam ¡gratis! Regístrate ya - http://correo.espanol.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 ematus en gmail.com Thu Jul 17 02:18:39 2008 From: ematus en gmail.com (Eduardo Matus) Date: Wed, 16 Jul 2008 20:18:39 -0400 Subject: Sumar Digitos In-Reply-To: <559840.79476.qm@web51710.mail.re2.yahoo.com> References: <559840.79476.qm@web51710.mail.re2.yahoo.com> Message-ID: <984ad6a0807161718x35c144d9pb68c22d46027ea2f@mail.gmail.com> a = 987456 b = 0 for x in str(a): b = b + int(x) print x 2008/7/16 Cesar Garcia : > Buenas a Todos !!! > Existe el alguna opcion en Python para que in numero ingresado > halle la suma de los digitos ejemplo > Numero = 987456 > Resultado 9+8+7+4+5+6 > O algun algoritmo > Saludos > > > ________________________________ > Atte. > César García > > ________________________________ > > > > > ----- Mensaje original ---- > De: Victor Edier > Para: Lista de discusión sobre python en castellano > Enviado: jueves, 10 de julio, 2008 11:50:14 > Asunto: Re: [Python-es] Obtener el nombre del programa > > Hola te refieres al nombre del archivo que se esta ejecutando. > import sys > nombre = sys.argv[0].split('/')[-1] > > ¡¡¡¡¡¡¡¡¡Good luck for every body!!!!!!!!! > > > > ----- Mensaje original ---- > De: Facon > Para: python-es en aditel.org > Enviado: jueves, 10 de julio, 2008 11:13:57 > Asunto: Re: [Python-es] Obtener el nombre del programa > > No es exactamente lo que busco, haber miren estoy buscando para que > solo obtener nombre del archivo nada más, por si cambio el nombre del > programa para así no tener que modificar el código. > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > > > __________________________________________________ > Correo Yahoo! > Espacio para todos tus mensajes, antivirus y antispam ¡gratis! > Regístrate ya - http://correo.espanol.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 > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jcaballero.hep en gmail.com Thu Jul 17 02:23:47 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Wed, 16 Jul 2008 20:23:47 -0400 Subject: Sumar Digitos In-Reply-To: <984ad6a0807161718x35c144d9pb68c22d46027ea2f@mail.gmail.com> References: <559840.79476.qm@web51710.mail.re2.yahoo.com> <984ad6a0807161718x35c144d9pb68c22d46027ea2f@mail.gmail.com> Message-ID: mejor si cambias print x por print b :-) El día 16 de julio de 2008 20:18, Eduardo Matus escribió: > a = 987456 > b = 0 > for x in str(a): > b = b + int(x) > print x > > 2008/7/16 Cesar Garcia : > > > Buenas a Todos !!! > > Existe el alguna opcion en Python para que in numero ingresado > > halle la suma de los digitos ejemplo > > Numero = 987456 > > Resultado 9+8+7+4+5+6 > > O algun algoritmo > > Saludos > > > > > > ________________________________ > > Atte. > > César García > > > > ________________________________ > > > > > > > > > > ----- Mensaje original ---- > > De: Victor Edier > > Para: Lista de discusión sobre python en castellano < > python-es en aditel.org> > > Enviado: jueves, 10 de julio, 2008 11:50:14 > > Asunto: Re: [Python-es] Obtener el nombre del programa > > > > Hola te refieres al nombre del archivo que se esta ejecutando. > > import sys > > nombre = sys.argv[0].split('/')[-1] > > > > ¡¡¡¡¡¡¡¡¡Good luck for every body!!!!!!!!! > > > > > > > > ----- Mensaje original ---- > > De: Facon > > Para: python-es en aditel.org > > Enviado: jueves, 10 de julio, 2008 11:13:57 > > Asunto: Re: [Python-es] Obtener el nombre del programa > > > > No es exactamente lo que busco, haber miren estoy buscando para que > > solo obtener nombre del archivo nada más, por si cambio el nombre del > > programa para así no tener que modificar el código. > > _______________________________________________ > > Lista de correo Python-es > > http://listas.aditel.org/listinfo/python-es > > FAQ: http://listas.aditel.org/faqpyes > > > > > > __________________________________________________ > > Correo Yahoo! > > Espacio para todos tus mensajes, antivirus y antispam ¡gratis! > > Regístrate ya - http://correo.espanol.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 > > > _______________________________________________ > 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 Thu Jul 17 02:25:24 2008 From: ematus en gmail.com (Eduardo Matus) Date: Wed, 16 Jul 2008 20:25:24 -0400 Subject: Sumar Digitos In-Reply-To: References: <559840.79476.qm@web51710.mail.re2.yahoo.com> <984ad6a0807161718x35c144d9pb68c22d46027ea2f@mail.gmail.com> Message-ID: <984ad6a0807161725p174050fdjd521809a106dc896@mail.gmail.com> xD shits happends... 2008/7/16 Jose Caballero : > mejor si cambias > print x > por > print b > > :-) > > > > El día 16 de julio de 2008 20:18, Eduardo Matus > escribió: > > > a = 987456 > > b = 0 > > for x in str(a): > > b = b + int(x) > > print x > > > > 2008/7/16 Cesar Garcia : > > > > > Buenas a Todos !!! > > > Existe el alguna opcion en Python para que in numero ingresado > > > halle la suma de los digitos ejemplo > > > Numero = 987456 > > > Resultado 9+8+7+4+5+6 > > > O algun algoritmo > > > Saludos > > > > > > > > > ________________________________ > > > Atte. > > > César García > > > > > > ________________________________ > > > > > > > > > > > > > > > ----- Mensaje original ---- > > > De: Victor Edier > > > Para: Lista de discusión sobre python en castellano < > > python-es en aditel.org> > > > Enviado: jueves, 10 de julio, 2008 11:50:14 > > > Asunto: Re: [Python-es] Obtener el nombre del programa > > > > > > Hola te refieres al nombre del archivo que se esta ejecutando. > > > import sys > > > nombre = sys.argv[0].split('/')[-1] > > > > > > ¡¡¡¡¡¡¡¡¡Good luck for every body!!!!!!!!! > > > > > > > > > > > > ----- Mensaje original ---- > > > De: Facon > > > Para: python-es en aditel.org > > > Enviado: jueves, 10 de julio, 2008 11:13:57 > > > Asunto: Re: [Python-es] Obtener el nombre del programa > > > > > > No es exactamente lo que busco, haber miren estoy buscando para que > > > solo obtener nombre del archivo nada más, por si cambio el nombre del > > > programa para así no tener que modificar el código. > > > _______________________________________________ > > > Lista de correo Python-es > > > http://listas.aditel.org/listinfo/python-es > > > FAQ: http://listas.aditel.org/faqpyes > > > > > > > > > __________________________________________________ > > > Correo Yahoo! > > > Espacio para todos tus mensajes, antivirus y antispam ¡gratis! > > > Regístrate ya - http://correo.espanol.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 > > > > > _______________________________________________ > > 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 med.swl en gmail.com Thu Jul 17 02:38:12 2008 From: med.swl en gmail.com (Medardo Rodriguez) Date: Wed, 16 Jul 2008 20:38:12 -0400 Subject: Sumar Digitos In-Reply-To: <559840.79476.qm@web51710.mail.re2.yahoo.com> References: <559840.79476.qm@web51710.mail.re2.yahoo.com> Message-ID: <4891add70807161738v30d4d34bv1727ac903b94f7f3@mail.gmail.com> 2008/7/16 Cesar Garcia : > Existe el alguna opcion en Python para que in numero ingresado > halle la suma de los digitos ejemplo #!/usr/bin/env python # -*- coding: UTF-8 -*- def SumarDigitos(x): x = abs(int(x)) # Just in case res = 0 while x != 0: x, mod = divmod(x, 10) res += mod return res if __name__ == '__main__': Numero = 987456 print SumarDigitos(Numero) Saludos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jcaballero.hep en gmail.com Thu Jul 17 02:41:49 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Wed, 16 Jul 2008 20:41:49 -0400 Subject: Sumar Digitos In-Reply-To: <4891add70807161738v30d4d34bv1727ac903b94f7f3@mail.gmail.com> References: <559840.79476.qm@web51710.mail.re2.yahoo.com> <4891add70807161738v30d4d34bv1727ac903b94f7f3@mail.gmail.com> Message-ID: yo personalmente prefiero la manera que propone Eduardo. Aunque sólo sea por seguir la tercera regla del zen de python. El día 16 de julio de 2008 20:38, Medardo Rodriguez escribió: > 2008/7/16 Cesar Garcia : > > Existe el alguna opcion en Python para que in numero ingresado > > halle la suma de los digitos ejemplo > > > #!/usr/bin/env python > # -*- coding: UTF-8 -*- > > def SumarDigitos(x): > x = abs(int(x)) # Just in case > res = 0 > while x != 0: > x, mod = divmod(x, 10) > res += mod > return res > > if __name__ == '__main__': > Numero = 987456 > print SumarDigitos(Numero) > > > Saludos > _______________________________________________ > 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 med.swl en gmail.com Thu Jul 17 02:55:04 2008 From: med.swl en gmail.com (Medardo Rodriguez) Date: Wed, 16 Jul 2008 20:55:04 -0400 Subject: Sumar Digitos In-Reply-To: References: <559840.79476.qm@web51710.mail.re2.yahoo.com> <4891add70807161738v30d4d34bv1727ac903b94f7f3@mail.gmail.com> Message-ID: <4891add70807161755l244dc9dfm73eab317bb7f4d85@mail.gmail.com> On Wed, Jul 16, 2008 at 8:41 PM, Jose Caballero wrote: > yo personalmente prefiero la manera que propone Eduardo. > Aunque sólo sea por seguir la tercera regla del zen de python. En ese caso: Numero = 987456 print sum(int(x) for x in str(Numero)) Saludos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ematus en gmail.com Thu Jul 17 02:57:13 2008 From: ematus en gmail.com (Eduardo Matus) Date: Wed, 16 Jul 2008 20:57:13 -0400 Subject: Sumar Digitos In-Reply-To: <4891add70807161755l244dc9dfm73eab317bb7f4d85@mail.gmail.com> References: <559840.79476.qm@web51710.mail.re2.yahoo.com> <4891add70807161738v30d4d34bv1727ac903b94f7f3@mail.gmail.com> <4891add70807161755l244dc9dfm73eab317bb7f4d85@mail.gmail.com> Message-ID: <984ad6a0807161757k2fb0d5d2h1420d5a244b25e22@mail.gmail.com> exacto, no me acordaba como era sintaxis On Wed, Jul 16, 2008 at 8:55 PM, Medardo Rodriguez wrote: > On Wed, Jul 16, 2008 at 8:41 PM, Jose Caballero > wrote: > > yo personalmente prefiero la manera que propone Eduardo. > > Aunque sólo sea por seguir la tercera regla del zen de python. > > En ese caso: > > Numero = 987456 > print sum(int(x) for x in str(Numero)) > > > Saludos > _______________________________________________ > 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 med.swl en gmail.com Thu Jul 17 03:00:21 2008 From: med.swl en gmail.com (Medardo Rodriguez) Date: Wed, 16 Jul 2008 21:00:21 -0400 Subject: Sumar Digitos In-Reply-To: <984ad6a0807161757k2fb0d5d2h1420d5a244b25e22@mail.gmail.com> References: <559840.79476.qm@web51710.mail.re2.yahoo.com> <4891add70807161738v30d4d34bv1727ac903b94f7f3@mail.gmail.com> <4891add70807161755l244dc9dfm73eab317bb7f4d85@mail.gmail.com> <984ad6a0807161757k2fb0d5d2h1420d5a244b25e22@mail.gmail.com> Message-ID: <4891add70807161800ne35dca4m9587f36e7895001e@mail.gmail.com> On Wed, Jul 16, 2008 at 8:57 PM, Eduardo Matus wrote: > exacto, no me acordaba como era sintaxis Y si quieren seguridad absoluta: print sum(int(x) for x in str(abs(Numero))) o print sum(int(x) for x in str(Numero) if x != '-') Más saludos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From willian.radicaled en gmail.com Thu Jul 17 04:11:01 2008 From: willian.radicaled en gmail.com (RadicalEd) Date: Wed, 16 Jul 2008 21:11:01 -0500 Subject: =?ISO-8859-1?Q?Re:__Tama=F1o_de_Objetos?= In-Reply-To: References: Message-ID: con la función len puedes ver el tamaño de una variable. On 7/16/08, César García wrote: > > Hola lista, tengo una duda, como puedo saber cuanto tamaño esta > consumiendo un objeto en especial, por ejemplo una lista. > > Gracias > > -- > http://celord.blogspot.com/ > _______________________________________________ > 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 most important programing webforum. http://foros.solocodigo.com _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From lighther en gmail.com Thu Jul 17 08:40:46 2008 From: lighther en gmail.com (Juan Pablo Isler) Date: Thu, 17 Jul 2008 02:40:46 -0400 Subject: =?iso-8859-1?q?Problema_extra=F1o_con_importaci=F3n_?= =?iso-8859-1?q?de_m=F3dulos!!!!?= Message-ID: <93e969700807162340q22774ec2nb3024ba88a1cd59d@mail.gmail.com> Tengo un grupo de carpetas para separar los módulos, resulta que importo los módulos de manera correcta en el pyScripter, pero cuando trato de correr mi programa a través de consola, me arroja el errór de que no encuentra el módulo =/. Los import los hago de la siguiente forma from carpetaPrincipal.carpeta1.módulo3 import nombreClase en cada carpeta tengo definido el archivo __init__.py La administración de los archivos es la siguiente. CarpetaPrincipal | | |_______carpeta1 | | | |_____módulo1.py | | | |_____módulo2.py | | | |_____módulo3.py | |_______carpeta2 | | | |_____módulo4.py | | | |_____módulo5.py | | | |_____archivoPrincipal.py | |_______carpeta3 | |_____módulo7.py | |_____módulo8.py El archivo .py en el cual importo se ubica dentro de carpeta2 (por ejemplo). El al probar el código con el PyScripter me funciona perfectamente, pero cuando lo pruebo por consola (cmd) me arroja el error de Import, que no hay módulo llamado carpetaPrincipal.carpeta1.módulo3 según la explicación anterior. gracias de antemano :) _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From vimes656 en gmail.com Thu Jul 17 11:38:57 2008 From: vimes656 en gmail.com (Danny Navarro) Date: Thu, 17 Jul 2008 11:38:57 +0200 Subject: =?ISO-8859-1?Q?Re:__Problema_extra=F1o_con_importaci?= =?ISO-8859-1?Q?=F3n_de_m=F3dulos!!!!?= In-Reply-To: <93e969700807162340q22774ec2nb3024ba88a1cd59d@mail.gmail.com> References: <93e969700807162340q22774ec2nb3024ba88a1cd59d@mail.gmail.com> Message-ID: Hola Juan Pablo, Seguramente el intérprete de pyScripter tendrá distinto $PYTHONPATH al intérprete de consola. Puedes comprobarlo: Lanza python desde la consola: >>> import sys >>> print sys.path Y comprueba si están las carpetas de tus módulos. Si no están tienes dos opciones: - Encontrar dónde está el intérprete de pyScripter y lanzarlo desde la consola. - Puedes modificar $PYTHONPATH para que los incluya el intérprete de sistema. De todas formas yo crearía un virtualenv para esta clase de proyectos. Supongo que pyScriper se podrá configurar el intérprete que quieras usar. Danny On 17 Jul 2008, at 08:40, Juan Pablo Isler wrote: > Tengo un grupo de carpetas para separar los módulos, resulta que > importo los > módulos de manera correcta en el pyScripter, pero cuando trato de > correr mi > programa a través de consola, me arroja el errór de que no encuentra > el > módulo =/. > > Los import los hago de la siguiente forma > > from carpetaPrincipal.carpeta1.módulo3 import nombreClase > > en cada carpeta tengo definido el archivo __init__.py > > La administración de los archivos es la siguiente. > > CarpetaPrincipal > | > | > |_______carpeta1 > | | > | |_____módulo1.py > | | > | |_____módulo2.py > | | > | |_____módulo3.py > | > |_______carpeta2 > | | > | |_____módulo4.py > | | > | |_____módulo5.py > | | > | |_____archivoPrincipal.py > | > |_______carpeta3 > | > |_____módulo7.py > | > |_____módulo8.py > > El archivo .py en el cual importo se ubica dentro de carpeta2 (por > ejemplo). > El al probar el código con el PyScripter me funciona perfectamente, > pero > cuando lo pruebo por consola (cmd) me arroja el error de Import, que > no hay > módulo llamado carpetaPrincipal.carpeta1.módulo3 según la explicación > anterior. > > gracias de antemano :) > _______________________________________________ > 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 celord en gmail.com Thu Jul 17 19:11:03 2008 From: celord en gmail.com (=?ISO-8859-1?Q?C=E9sar_Garc=EDa?=) Date: Thu, 17 Jul 2008 11:11:03 -0600 Subject: Hora del sistema Message-ID: Hola, como puede hacer yo para que el sistema active una funcion X a deterninada hora del dia. Gracias -- http://celord.blogspot.com/ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From hidura en gmail.com Thu Jul 17 21:50:48 2008 From: hidura en gmail.com (Hidura) Date: Thu, 17 Jul 2008 15:50:48 -0400 Subject: Problemas con import Message-ID: <4bbf7fb20807171250m1ded47bcm65a48541cd3915d2@mail.gmail.com> Buenas tardes lista tengo un problema con un programa que se divide en varios modulos en quisiera saber como importo un modulo a distancia en python lo que siempre hago es: sys.path.insert(0,'/HialgoNuovo/login') pero aun asi no funciona, me sale que no encuentra el modulo que mas le debo agregar para que se importe -- Hidura _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From szyszeja en gmail.com Thu Jul 17 22:17:46 2008 From: szyszeja en gmail.com (Leonidas Szyszeja) Date: Thu, 17 Jul 2008 17:17:46 -0300 Subject: Hora del sistema In-Reply-To: References: Message-ID: <487FA8EA.5040404@gmail.com> en linux podes poner tu script en un cron... nose si esto te sirve César García escribió: > Hola, como puede hacer yo para que el sistema active una funcion X a > deterninada hora del dia. > > Gracias > > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From vimes656 en gmail.com Thu Jul 17 22:52:17 2008 From: vimes656 en gmail.com (Danny Navarro) Date: Thu, 17 Jul 2008 22:52:17 +0200 Subject: =?ISO-8859-1?Q?Re:__Problema_extra=F1o_con_importaci?= =?ISO-8859-1?Q?=F3n_de_m=F3dulos!!!!?= In-Reply-To: <93e969700807171047w1aa15c7cl2fab04d64993bccd@mail.gmail.com> References: <93e969700807162340q22774ec2nb3024ba88a1cd59d@mail.gmail.com> <93e969700807171047w1aa15c7cl2fab04d64993bccd@mail.gmail.com> Message-ID: Hola Juan Pablo, Con $PYTHONPATH me refería a la variable de entorno que mira el intérprete de Python para importar módulos. En windows no tengo ni idea de dónde se podrá modificar esa variable pero tiene que haber algo equivalente. Por lo que cuentas parece que PyScripter usa el intérprete de sistema aunque en la web de PyScripter dicen que proporcionan su propio intérprete. Te importa los módulos correctamente si corres los scripts desde PyScripter? Danny On 17 Jul 2008, at 19:47, Juan Pablo Isler wrote: > Hola Danny, gracias por tu respuesta. Soy bastante nuevo en Python > así que estoy en un proceso de probar ajajajaja. > > Pero tengo una duda, se supone que Path es la variable de entorno > que puedo modificar en opciones avanzadas sobre "Mi Pc". Esta > variable debería ser la que usan tanto el PyScripter como el > interprete del sistema, y verifiqué la variable sys.path desde > ambos. esta variable no contempla las carpetas que considerocon mis > import, pero la modifiqué añadiendo el patha mi carpeta mas no > cambió =/. > > No entiendo muy bienlo de $PYTHONPATH y tampoco lo virtualenv ajajaja. > > A rasgos generales, uso Python 2.5.2 como interprete del sistema, > pero el PyScripter ocupa el mismo, entonces no debiera haber > diferencias. > > De antemano gracias :) > > 2008/7/17 Danny Navarro : > Hola Juan Pablo, > > Seguramente el intérprete de pyScripter tendrá distinto $PYTHONPATH > al intérprete de consola. > > Puedes comprobarlo: > > Lanza python desde la consola: > > >>> import sys > >>> print sys.path > > Y comprueba si están las carpetas de tus módulos. Si no están tienes > dos opciones: > > - Encontrar dónde está el intérprete de pyScripter y lanzarlo desde > la consola. > - Puedes modificar $PYTHONPATH para que los incluya el intérprete > de sistema. > > De todas formas yo crearía un virtualenv para esta clase de > proyectos. Supongo que pyScriper se podrá configurar el intérprete > que quieras usar. > > Danny > > > On 17 Jul 2008, at 08:40, Juan Pablo Isler wrote: > > Tengo un grupo de carpetas para separar los módulos, resulta que > importo los > módulos de manera correcta en el pyScripter, pero cuando trato de > correr mi > programa a través de consola, me arroja el errór de que no encuentra > el > módulo =/. > > Los import los hago de la siguiente forma > > from carpetaPrincipal.carpeta1.módulo3 import nombreClase > > en cada carpeta tengo definido el archivo __init__.py > > La administración de los archivos es la siguiente. > > CarpetaPrincipal > | > | > |_______carpeta1 > | | > | |_____módulo1.py > | | > | |_____módulo2.py > | | > | |_____módulo3.py > | > |_______carpeta2 > | | > | |_____módulo4.py > | | > | |_____módulo5.py > | | > | |_____archivoPrincipal.py > | > |_______carpeta3 > | > |_____módulo7.py > | > |_____módulo8.py > > El archivo .py en el cual importo se ubica dentro de carpeta2 (por > ejemplo). > El al probar el código con el PyScripter me funciona perfectamente, > pero > cuando lo pruebo por consola (cmd) me arroja el error de Import, que > no hay > módulo llamado carpetaPrincipal.carpeta1.módulo3 según la explicación > anterior. > > gracias de antemano :) > _______________________________________________ > 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 martefabian en tredasis.com Fri Jul 18 01:19:42 2008 From: martefabian en tredasis.com (=?iso-8859-1?Q?Marte_Fabi=E1n_Baquerizo_S=E1nchez?=) Date: Thu, 17 Jul 2008 18:19:42 -0500 Subject: Hora del sistema References: <487FA8EA.5040404@gmail.com> Message-ID: <83CAF79991B947DDBFC4CB4C27CA1198@Martelaptop> Hola, Si estás en windows, puedes usar el "programador de tareas" para especificar el momento en que quieras que se ejecute tu script. Saludos -------------------------------------------------- From: "Leonidas Szyszeja" Sent: Thursday, July 17, 2008 3:17 PM To: "Lista de discusión sobre python en castellano" Subject: Re: [Python-es] Hora del sistema > en linux podes poner tu script en un cron... > nose si esto te sirve > > César García escribió: >> Hola, como puede hacer yo para que el sistema active una funcion X a >> deterninada hora del dia. >> >> 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 From pepe en diselpro.com Fri Jul 18 09:53:23 2008 From: pepe en diselpro.com (Pepe Aracil) Date: Fri, 18 Jul 2008 09:53:23 +0200 Subject: Sumar Digitos In-Reply-To: <4891add70807161800ne35dca4m9587f36e7895001e@mail.gmail.com> References: <559840.79476.qm@web51710.mail.re2.yahoo.com> <4891add70807161738v30d4d34bv1727ac903b94f7f3@mail.gmail.com> <4891add70807161755l244dc9dfm73eab317bb7f4d85@mail.gmail.com> <984ad6a0807161757k2fb0d5d2h1420d5a244b25e22@mail.gmail.com> <4891add70807161800ne35dca4m9587f36e7895001e@mail.gmail.com> Message-ID: <48804BF3.4030800@diselpro.com> Medardo Rodriguez escribió: > On Wed, Jul 16, 2008 at 8:57 PM, Eduardo Matus wrote: >> exacto, no me acordaba como era sintaxis > > Y si quieren seguridad absoluta: > > print sum(int(x) for x in str(abs(Numero))) > > o > > print sum(int(x) for x in str(Numero) if x != '-') > Y el colmo de las seguridades : print sum(int(x) for x in str(Numero) if x in '0123456789') ó print sum(int(x) for x in str(Numero) if '0' <= x <= '9') Salud. > > Más saludos > _______________________________________________ > 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 pych3m4 en gmail.com Fri Jul 18 10:10:27 2008 From: pych3m4 en gmail.com (Chema Cortes) Date: Fri, 18 Jul 2008 10:10:27 +0200 Subject: Problemas con import In-Reply-To: <4bbf7fb20807171250m1ded47bcm65a48541cd3915d2@mail.gmail.com> References: <4bbf7fb20807171250m1ded47bcm65a48541cd3915d2@mail.gmail.com> Message-ID: <2c9fb0dd0807180110k6b9529c8ve22b16fb0db0e67a@mail.gmail.com> El día 17 de julio de 2008 21:50, Hidura escribió: > Buenas tardes lista tengo un problema con un programa que se divide en > varios modulos en quisiera saber como importo un modulo a distancia en > python lo que siempre hago es: > sys.path.insert(0,'/HialgoNuovo/login') > pero aun asi no funciona, me sale que no encuentra el modulo que mas le debo > agregar para que se importe Parece como si estuvieras insertando la ruta completa, incluyendo el nombre del módulo; y sólo debería insertarte el directorio donde reside el módulo/paquete a importar. De todas formas, indícanos cuál es el error exacto que te está dando. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From damufo en gmail.com Fri Jul 18 13:08:22 2008 From: damufo en gmail.com (damufo) Date: Fri, 18 Jul 2008 13:08:22 +0200 Subject: alinear indice listctrl Message-ID: <488079A6.2000809@gmail.com> Hola: Tengo un wxlistctrl el caso es que no soy capar de alinear la columna 0 que es indice a la derecha, el caso es que en el resto de columnas si funciona la alineación que indico pero en la cero no. self.lst_participantes.InsertColumn(0, "id", wx.LIST_FORMAT_RIGHT, width=50) self.lst_participantes.InsertColumn(1, "Participante", wx.LIST_FORMAT_RIGHT, width=280) La columna participante la alinea a la derecha y la id no, para que la alinee he tenido que añadir fila_cero = wx.ListItem() fila_cero.SetAlign(wx.LIST_FORMAT_RIGHT) self.lst_participantes.SetColumn(0, fila_cero) Alguien sabe a que se debe esto? Saludos y gracias ------------ 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 Fri Jul 18 13:11:01 2008 From: kalith.9 en gmail.com (kalith kalith) Date: Sat, 19 Jul 2008 06:41:01 +1930 Subject: Salt en joomla Message-ID: <3da702830807180411q40956799qca7be6ef4d228708@mail.gmail.com> Buenas tardes... Existe alguna funcion en python para agregar los salt de joomla.. osea simplemente no crear el algoritmo encriptado con md5 de 32 bits.. sino poder crear con el salt tambien.. gracias -- 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 celord en gmail.com Fri Jul 18 15:20:43 2008 From: celord en gmail.com (=?ISO-8859-1?Q?C=E9sar_Garc=EDa?=) Date: Fri, 18 Jul 2008 07:20:43 -0600 Subject: Hora del sistema In-Reply-To: <83CAF79991B947DDBFC4CB4C27CA1198@Martelaptop> References: <487FA8EA.5040404@gmail.com> <83CAF79991B947DDBFC4CB4C27CA1198@Martelaptop> Message-ID: Listo, gracias a todos! 2008/7/17 Marte Fabián Baquerizo Sánchez : > Hola, > > Si estás en windows, puedes usar el "programador de tareas" para > especificar el momento en que quieras que se ejecute tu script. > > Saludos > > -------------------------------------------------- > From: "Leonidas Szyszeja" > Sent: Thursday, July 17, 2008 3:17 PM > To: "Lista de discusión sobre python en castellano" > Subject: Re: [Python-es] Hora del sistema > > > en linux podes poner tu script en un cron... >> nose si esto te sirve >> >> César García escribió: >> >>> Hola, como puede hacer yo para que el sistema active una funcion X a >>> deterninada hora del dia. >>> >>> 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 > -- http://celord.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 Fri Jul 18 15:22:08 2008 From: pych3m4 en gmail.com (Chema Cortes) Date: Fri, 18 Jul 2008 15:22:08 +0200 Subject: =?ISO-8859-1?Q?Re:__Problema_extra=F1?= =?ISO-8859-1?Q?o_con_importaci=F3n_de_m=F3dulos!!!!?= In-Reply-To: <93e969700807162340q22774ec2nb3024ba88a1cd59d@mail.gmail.com> References: <93e969700807162340q22774ec2nb3024ba88a1cd59d@mail.gmail.com> Message-ID: <2c9fb0dd0807180622l3065b96fn26f6735a48316d2d@mail.gmail.com> El día 17 de julio de 2008 8:40, Juan Pablo Isler escribió: > Tengo un grupo de carpetas para separar los módulos, resulta que importo los > módulos de manera correcta en el pyScripter, pero cuando trato de correr mi > programa a través de consola, me arroja el errór de que no encuentra el > módulo =/. Lo primero que me intriga es si literalmente éste es el error que te da ("módulo =/."). He observado que en la explicación usas nombres de módulos con tildes, lo que podría ser causa de errores. > Los import los hago de la siguiente forma > > from carpetaPrincipal.carpeta1.módulo3 import nombreClase Para que ésto funcione, el paquete "carpetaPrincipal" debe estar en la ruta de búsqueda de módulos (o sea, en sys.path). Muchas veces, los IDEs añaden el directorio de trabajo a la ruta de búsqueda, lo que explicaría porqué te funciona en el IDE y no fuera. Revisa la ruta de búsqueda (sys.path). _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From hidura en gmail.com Fri Jul 18 15:27:26 2008 From: hidura en gmail.com (Hidura) Date: Fri, 18 Jul 2008 09:27:26 -0400 Subject: Problemas con import In-Reply-To: <2c9fb0dd0807180110k6b9529c8ve22b16fb0db0e67a@mail.gmail.com> References: <4bbf7fb20807171250m1ded47bcm65a48541cd3915d2@mail.gmail.com> <2c9fb0dd0807180110k6b9529c8ve22b16fb0db0e67a@mail.gmail.com> Message-ID: <4bbf7fb20807180627le430953jeb9d3cc3db0090ea@mail.gmail.com> Ok, yo tengo un directorio dentro de la carpeta Hidalgo que se llama Main y contiene los modulos: Login y Main y tengo otro directorio fuera de Main pero dentro de la carpeta Hidalgo llamado Global/ en este tengo MainObje mi pregunta se da como puedo hacer para importar desde Main/ algo en Global/ por que por mas que intento no funciona 2008/7/18 Chema Cortes : > El día 17 de julio de 2008 21:50, Hidura escribió: > > Buenas tardes lista tengo un problema con un programa que se divide en > > varios modulos en quisiera saber como importo un modulo a distancia en > > python lo que siempre hago es: > > sys.path.insert(0,'/HialgoNuovo/login') > > pero aun asi no funciona, me sale que no encuentra el modulo que mas le > debo > > agregar para que se importe > > Parece como si estuvieras insertando la ruta completa, incluyendo el > nombre del módulo; y sólo debería insertarte el directorio donde > reside el módulo/paquete a importar. De todas formas, indícanos cuál > es el error exacto que te está dando. > _______________________________________________ > 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 jcaballero.hep en gmail.com Fri Jul 18 15:44:17 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Fri, 18 Jul 2008 09:44:17 -0400 Subject: Sumar Digitos In-Reply-To: <48804BF3.4030800@diselpro.com> References: <559840.79476.qm@web51710.mail.re2.yahoo.com> <4891add70807161738v30d4d34bv1727ac903b94f7f3@mail.gmail.com> <4891add70807161755l244dc9dfm73eab317bb7f4d85@mail.gmail.com> <984ad6a0807161757k2fb0d5d2h1420d5a244b25e22@mail.gmail.com> <4891add70807161800ne35dca4m9587f36e7895001e@mail.gmail.com> <48804BF3.4030800@diselpro.com> Message-ID: 2008/7/18 Pepe Aracil : > > > Medardo Rodriguez escribió: > >> On Wed, Jul 16, 2008 at 8:57 PM, Eduardo Matus wrote: >> >>> exacto, no me acordaba como era sintaxis >>> >> >> Y si quieren seguridad absoluta: >> >> print sum(int(x) for x in str(abs(Numero))) >> >> o >> >> print sum(int(x) for x in str(Numero) if x != '-') >> >> > Y el colmo de las seguridades : > > print sum(int(x) for x in str(Numero) if x in '0123456789') > > ó > > print sum(int(x) for x in str(Numero) if '0' <= x <= '9') > > > Salud. > No me gusta. Si alguien es tan tonto como para pasar como argumento Numero="a1b1c1#1" tu código no lo detecta, y te devuelve un 4 como si nada. Jose _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From med.swl en gmail.com Fri Jul 18 18:12:09 2008 From: med.swl en gmail.com (Medardo Rodriguez) Date: Fri, 18 Jul 2008 12:12:09 -0400 Subject: Sumar Digitos In-Reply-To: References: <559840.79476.qm@web51710.mail.re2.yahoo.com> <4891add70807161738v30d4d34bv1727ac903b94f7f3@mail.gmail.com> <4891add70807161755l244dc9dfm73eab317bb7f4d85@mail.gmail.com> <984ad6a0807161757k2fb0d5d2h1420d5a244b25e22@mail.gmail.com> <4891add70807161800ne35dca4m9587f36e7895001e@mail.gmail.com> <48804BF3.4030800@diselpro.com> Message-ID: <4891add70807180912l2bb3af66ja385a0100d3499a8@mail.gmail.com> On Fri, Jul 18, 2008 at 9:44 AM, Jose Caballero wrote: > No me gusta. > Si alguien es tan tonto como para pasar como argumento Numero="a1b1c1#1" tu > código no lo detecta, y te devuelve un 4 como si nada. Por eso mismo yo usé lo de números negativos, que si pudieran ser lógicos para alguien. Cómo no sé los objetivos del problema, no sé que hacer en ese caso ¿poner negativo el resultado? Saludos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From joan.pallares en gmail.com Fri Jul 18 18:17:21 2008 From: joan.pallares en gmail.com (=?ISO-8859-1?Q?Joan_Pallar=E8s?=) Date: Fri, 18 Jul 2008 18:17:21 +0200 Subject: =?ISO-8859-1?Q?Re:__Re:_Asignaci=F3n_de_eventos_en_Python?= In-Reply-To: References: Message-ID: Hola, Veo que nadie me conesta el mail anterior, da igual, olvidadlo. Ahora solo quiero lo siguiente: Tenemos una *lista de parejas*, creada así: *parejas = [(1, 'a'), (1, 'b'), (1, 'c'), (1, 'd'), (2, 'a'), (2, 'b'), (2, 'c'), (3, 'a'), (3, 'b'), (3, 'c'), (3, 'd')]* Queremos conseguir todas las *posibles combinaciones de numeros y letras*sin que se repitan, por ejemplo: *1a,2b,3c* Esta sería una solución *1a,2b,3d* Otra posible solución *1b,2a,3c* Una más etc. No queremos conseguirlas todas las posibles soluciones de golpe, si no solo una. Pero ha de guardar la informacion de la solucion de alguna manera para luego poder pedir la siguiente solucion (o la anterior).* ¿Cómo lo haríais? * Yo he hecho un algortimo de backtraking que me obtiene la primera solución, pero luego no se obtener las siguientes. Os los enseño: *parejas = [(1, 'a'), (1, 'b'), (1, 'c'), (1, 'd'), (2, 'a'), (2, 'b'), (2, 'c'), (3, 'a'), (3, 'b'), (3, 'c'), (3, 'd')] print parejas listasCorrectas = [] lista = [] def numerosDiferentes(lista,listasCorrectas): numeros = [] letras = [] for numero,letra in lista: numeros.append(numero) letras.append(letra) if len(numeros) == len(set(numeros)) and len(letras) == len(set(letras)): return True return False def backTracking(parejas,lista,listasCorrectas): if len(lista) == 3 and numerosDiferentes(lista,listasCorrectas): listasCorrectas.append(lista) print 'LISTA CORRECTA',lista return if len(lista) < 2: lista.append(parejas[0]) print lista backTracking(parejas[1:],lista) while(not numerosDiferentes(lista) and len(lista)>1): lista = lista[:-1] lista.append(parejas[0]) print lista backTracking(parejas[1:],lista) backTracking(parejas,lista)* 2008/7/9 Joan Pallarès : > Hola, > > Muchas gracias por contestar, > lo explicaré con más detalle: > > Tengo una *lista de partidos* y una *lista árbitros.* > Hay más árbitros que partidos. > Hay una *serie de filtros* que hacen que algunos árbitros no puedan hacer > algunos partidos. > Hasta ahora calculaba *una sola solución*, es decir, *una serie de > asignaciones partido-arbitro donde se respetaban los filtros* > > Necesito cacular* todas las posibles soluciones* > > Para esto, antes de que me contestaráis el mail estuve investigando y pensé > que mi problema tenía mucho que ver con la teoría de conjuntos. Tengo dos > conjuntos (árbitros y partidos) y quiero todas su posibles combinaciones. > > Entonces descubrí el producto cartesiano ( > http://es.wikipedia.org/wiki/Producto_cartesiano) y lo he aplicado de la > siguiente manera: > *[(partido,arbitro) for partido in partidos for arbitro in arbitros if > self.pasaFiltros(partido,arbitro)]* > > Donde hago el mencionado producto cartesiano pero aplicando los filtros. Me > funciona y ahora tengo una lista de parejas partido-árbitro con todas > posibilidades. En el ejemplo que uso tengo 54 partidos y 70 árbitros, esto > da 3780 (justo el producto) si aplico filtros se reduce esta cantidad. > > Para que os hagáis una idea de cómo es la lista, sería así: > > Partidos: 1, 2 ,3 > Árbitros: a, b, c, d > > Lista: > 1 a > 1 b > 1 d (no aparece el árbitro c porque ese dñia tiene fiesta) > 2 a > 2 b > 2 c > 2 d > 3 a > 3 b > 3 c > 3 d > > Mi problema ahora es como sacar de esta lista interminable las posibles > asignaciones/jornadas. En el ejemplo serían posibles jornadas: > > 1a,2b,3c > 1b,2a,3c > > Necesitaría sacarlas ordenadamente. Un posible usuario ve una jornada, no > le gusta, pasa a la siguiente tampoco le gusta, vuelve a la anterior y se > queda con ella. Navegar por las soluciones > > He pensado en "buscar en profundidad" parecido al DepthFirst de los > árboles. Si usará el algoritmo este que iamino con el ejemplo quedaría: > 1a 2b 3c > 1a 2b 3d > 1a 2c 3b No hay mas soluciones en el "tercer nivel" subo al "segundo nivel" > 1a 2c 3d > 1a 2d 3b > ..... > > ¿os parece buena ida? > ¿leeríais de otra forma lo obtenido mediantes el producto cartesiano? > Lo haríais todo de otra manera? > > 2008/7/8 Francisco Palm : > > [arbitro for arbitro in arbitros if X and Y and Z] >> Donde X, Y y Z son las condiciones, por ejemplo: >> not(arbitro.repetido) and not(arbitro.asignado) and not(arbitro.indeseado) >> >> Si das más información es posible atender tu consulta mejor... Escribo >> esto para que deduzcas que hay cosas que no se pueden conocer del >> problema con lo que has dicho. >> >> Saludos >> >> F. Palm >> >> On 7/7/08, Joan Pallarès wrote: >> > Hola, >> > >> > Estoy desarrollando una aplicación en Python para asignar árbitros a >> > partidos de fútbol dependiendo de un filtros (no puede repetir partido, >> etc) >> > >> > Ahora solo calculo la primera opción válida. Me gustaría calcular todas >> las >> > posibles opciones, (o ser capaz de calcularlas si el usuario lo >> quisiera). >> > >> > Por ejemplo: el usuario obtiene un resultado que pasa todos los filtros >> pero >> > no le gusta y quiere ver la siguiente posibilidad >> > >> > Estoy buscando algoritmos que me permitan calcular todas las opciones >> pero >> > no encuentro. >> > >> > He encontrado "Búsqueda Tabu" pero no me sirve para este caso >> > >> > Sería un algoritmo para relaciones entre conjuntos o algo por el estilo, >> no? >> > >> > ¿Alguna idea? >> > >> > Saludos >> > _______________________________________________ >> > Lista de correo Python-es >> > http://listas.aditel.org/listinfo/python-es >> > FAQ: http://listas.aditel.org/faqpyes >> > >> >> >> -- >> -------------------------------------- >> 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 >> > > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pepe en diselpro.com Fri Jul 18 17:09:57 2008 From: pepe en diselpro.com (Pepe Aracil) Date: Fri, 18 Jul 2008 17:09:57 +0200 Subject: Sumar Digitos In-Reply-To: References: <559840.79476.qm@web51710.mail.re2.yahoo.com> <4891add70807161738v30d4d34bv1727ac903b94f7f3@mail.gmail.com> <4891add70807161755l244dc9dfm73eab317bb7f4d85@mail.gmail.com> <984ad6a0807161757k2fb0d5d2h1420d5a244b25e22@mail.gmail.com> <4891add70807161800ne35dca4m9587f36e7895001e@mail.gmail.com> <48804BF3.4030800@diselpro.com> Message-ID: <4880B245.3060404@diselpro.com> Jose Caballero escribió: > No me gusta. > Si alguien es tan tonto como para pasar como argumento Numero="a1b1c1#1" tu > código no lo detecta, y te devuelve un 4 como si nada. Te recuerdo que a1b1c1 es un entero perfectamente válido en hexadecimal. ;-P para la versión hexadecimal, solo tendrías que cambiar los siguiente: print sum(int(x,16) for x in str(Numero) if x in '0123456789ABCDEFabcdef') ^^ ^^^^^^^^^^^^ Salud. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From eduardo.ulfe en gmail.com Fri Jul 18 18:47:29 2008 From: eduardo.ulfe en gmail.com (Eduardo) Date: Fri, 18 Jul 2008 13:47:29 -0300 Subject: Duda sobre modulo Gnuplot In-Reply-To: <29e33c430807161734h5e4fc3e1scb2e0510afb82c46@mail.gmail.com> References: <29e33c430807151858m1bee059ao2373ccec49c56ee2@mail.gmail.com> <200807160934.23522.falted@pytables.org> <29e33c430807161330t5bbedeefl7ca41c3f21c20fbe@mail.gmail.com> <29e33c430807161734h5e4fc3e1scb2e0510afb82c46@mail.gmail.com> Message-ID: <29e33c430807180947g67b391f3h4f8afbf7546f2577@mail.gmail.com> Ok. El codigo es este: ################################################## import Gnuplot gp = Gnuplot.Gnuplot(persist = 1) gp('set data style lines') data = [[0, 0], [1, 1], [2, 4], [3, 9], [4, 16]] gp.plot(data) ################################################# Como dije antes, en vez de hacer la grafica que una esos puntos, solo me aparece una ventana con los ejes entre -1 y 1, tanto para las X como para las Y, y ademas nada se grafica. El día 16 de julio de 2008 21:34, Eduardo escribió: > > > El día 16 de julio de 2008 17:30, Eduardo > escribió: > > Ok. >> >> El codigo es este: >> >> >> ################################################## >> import Gnuplot >> >> gp = Gnuplot.Gnuplot(persist = 1) >> >> gp('set data style lines') >> >> data = [[0, 0], [1, 1], [2, 4], [3, 9], [4, 16]] >> >> gp.plot(data) >> ################################################# >> >> Agrego una imagen por las dudas, para que se vea el resultado erroneo. >> >> >> >> >> >> 2008/7/16 Francesc Alted : >> >> Bienvenido! >>> >>> A Wednesday 16 July 2008, Eduardo escrigué: >>> > Primeramente, transmitir mi agrado de unirme a esta lista de correo. >>> > >>> > Mi duda: >>> > >>> > He instalado el modulo Python Gnuplot en mi pc pero al ejecutar algun >>> > script sencillo (como los ejemplos q aparecen en la red) no se >>> > grafica nada. Aparece una ventana con ejes que llegan hasta +-1 pero >>> > nada se grafica. Otros ejemplos que he probado a puro copy paste no >>> > funcionan como deberian. No se que puede ser. En otra pc lo tengo >>> > funcionanado sin problemas. >>> > >>> > Estoy usando Linux Ubuntu 8.04 amd64 y el IDLE. >>> >>> Por favor, cuando envies preguntas de este estilo intenta siempre añadir >>> la parte de tu código que no te funciona. Esto ayuda a detectar tu >>> problema de manera mucho más rápida. >>> >>> Un saludo, >>> >>> -- >>> Francesc Alted >>> _______________________________________________ >>> Lista de correo Python-es >>> http://listas.aditel.org/listinfo/python-es >>> FAQ: http://listas.aditel.org/faqpyes >>> >> >> >> >> -- >> Sea Seeder Voluntario y ayude a la Humanidad. >> >> Campaña contra el 99,9% completado. >> > > > > -- > Sea Seeder Voluntario y ayude a la Humanidad. > > Campaña contra el 99,9% completado. > -- Sea Seeder Voluntario y ayude a la Humanidad. Campaña contra el 99,9% completado. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From the.blue.valkyrie en gmail.com Fri Jul 18 19:01:13 2008 From: the.blue.valkyrie en gmail.com (=?ISO-8859-1?Q?Cristina_Yenyxe_Gonz=E1lez_Garc=EDa?=) Date: Fri, 18 Jul 2008 19:01:13 +0200 Subject: =?ISO-8859-1?Q?Re:__Re:_Asignaci=F3n_de_eventos_en_Python?= In-Reply-To: References: Message-ID: Hola. Para almacenar el estado de una variable dentro de una función o método y que en la siguiente invocación lo tenga en cuenta puedes usar generadores (la sentencia 'yield'). Al principio de este PEP te sale un ejemplo con la sucesión de Fibonacci: http://www.python.org/dev/peps/pep-0255/ Creo que para tu problema se ajustaría bastante bien :) Un saludo. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jcaballero.hep en gmail.com Fri Jul 18 19:46:43 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Fri, 18 Jul 2008 13:46:43 -0400 Subject: Sumar Digitos In-Reply-To: <4880B245.3060404@diselpro.com> References: <559840.79476.qm@web51710.mail.re2.yahoo.com> <4891add70807161738v30d4d34bv1727ac903b94f7f3@mail.gmail.com> <4891add70807161755l244dc9dfm73eab317bb7f4d85@mail.gmail.com> <984ad6a0807161757k2fb0d5d2h1420d5a244b25e22@mail.gmail.com> <4891add70807161800ne35dca4m9587f36e7895001e@mail.gmail.com> <48804BF3.4030800@diselpro.com> <4880B245.3060404@diselpro.com> Message-ID: 2008/7/18 Pepe Aracil : > Jose Caballero escribió: > >> No me gusta. >> Si alguien es tan tonto como para pasar como argumento Numero="a1b1c1#1" >> tu >> código no lo detecta, y te devuelve un 4 como si nada. >> > > Te recuerdo que a1b1c1 es un entero perfectamente válido en hexadecimal. > ;-P > > para la versión hexadecimal, solo tendrías que cambiar los siguiente: > > print sum(int(x,16) for x in str(Numero) if x in '0123456789ABCDEFabcdef') > ^^ ^^^^^^^^^^^^ > Salud. > > > Vale, muy gracioso. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From martefabian en tredasis.com Fri Jul 18 20:24:14 2008 From: martefabian en tredasis.com (=?iso-8859-1?Q?Marte_Fabi=E1n_Baquerizo_S=E1nchez?=) Date: Fri, 18 Jul 2008 13:24:14 -0500 Subject: =?iso-8859-1?q?Tama=F1o_de_ejecutables_Py2exe_con_GU?= =?iso-8859-1?q?I?= Message-ID: <7EF1391B1036417B8DDD121E0B762A62@Martelaptop> Hola, ¿Alguien ha tenido experiencia en generar ejecutables de Python con GUI utilizando Py2exe o similares? En ocasiones he tenido que distribuir alguna pequeña utilería programada en Python y con una GUI sencilla (algunos botones, cajas de texto), he usado Wx y también Tk, pero los ejecutables resultantes no bajan de 6 u 8 MB por el tamaño de las librerías GUI. ¿Alguien ha logrado producir ejecutables más pequeños? ¿Tal vez reduciendo las librerías incrustadas a sólo los widgets utilizados? Recuerdo que hace años en C usé una librería llamada FLTK que era muy pequeña, pero no he probado a usarla en Python (pyFLTK). Gracias. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From joan.pallares en gmail.com Fri Jul 18 20:37:30 2008 From: joan.pallares en gmail.com (=?ISO-8859-1?Q?Joan_Pallar=E8s?=) Date: Fri, 18 Jul 2008 20:37:30 +0200 Subject: =?ISO-8859-1?Q?Re:__Re:_Asignaci=F3n_de_eventos_en_Python?= In-Reply-To: References: Message-ID: Pues tienes razón, me puede ser muy útil lo del yield, pero hay un problema, se puede iterar para atras? es decir. Veo una combinación, no me gusta, paso a la siguiente, me gusta menos así que quiero volver a la anterior. Me permite eso yield???? en lugar de un "next" un "previous"? On Fri, Jul 18, 2008 at 7:01 PM, Cristina Yenyxe González García < the.blue.valkyrie en gmail.com> wrote: > Hola. > > Para almacenar el estado de una variable dentro de una función o método y > que en la siguiente invocación lo tenga en cuenta puedes usar generadores > (la sentencia 'yield'). Al principio de este PEP te sale un ejemplo con la > sucesión de Fibonacci: http://www.python.org/dev/peps/pep-0255/ > > Creo que para tu problema se ajustaría bastante bien :) > > Un saludo. > _______________________________________________ > 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 alexis.roda.villalonga en gmail.com Fri Jul 18 23:04:56 2008 From: alexis.roda.villalonga en gmail.com (Alexis Roda) Date: Fri, 18 Jul 2008 23:04:56 +0200 Subject: =?ISO-8859-1?Q?Asignaci=F3n_de_eventos_?= =?ISO-8859-1?Q?en_Python?= In-Reply-To: References: Message-ID: <48810578.6070605@gmail.com> En/na Joan Pallarès ha escrit: Antes de responder me gustaría hacer un comentario. Si mandas un programa a la lista en busca de ayuda al menos deberías verificar que funciona (el tuyo da error con el paso de parámetros). Si alguien se toma la molestia de probar el programa y ve que no funciona lo más probable es que ignore tu mensaje. > Tenemos una *lista de parejas*, creada así: > *parejas = [(1, 'a'), (1, 'b'), (1, 'c'), (1, 'd'), > (2, 'a'), (2, 'b'), (2, 'c'), > (3, 'a'), (3, 'b'), (3, 'c'), (3, 'd')]* > > Queremos conseguir todas las *posibles combinaciones de numeros y > letras*sin que se repitan, por ejemplo: > *1a,2b,3c* Esta sería una solución > *1a,2b,3d* Otra posible solución > *1b,2a,3c* Una más > etc. > > No queremos conseguirlas todas las posibles soluciones de golpe, si no solo > una. Pero ha de guardar la informacion de la solucion de alguna manera para > luego poder pedir la siguiente solucion (o la anterior).* ¿Cómo lo haríais? Lo de la "anterior" lo veo mas complicado. Deberás guardar las soluciones encontradas en algún sitio para poder "volver" a las anteriores. > Yo he hecho un algortimo de backtraking que me obtiene la primera solución, > pero luego no se obtener las siguientes. Al algoritmo que propones le falta la parte del "back" para ser backtracking. Cuando has encontrado la solución con (3, 'd') debes seguir probando. Como no hay más posibilidades con el 3 vuelves atrás y pruebas a partir de [(1, 'a'), (2, 'c')], luego a partir de [(1, 'b')] etc. Backtracking es una manera fina de decir fuerza bruta. Siempre que utilices backtracking tienes que poner mucho cuidado en reducir el tamaño del espacio de búsqueda, en caso contrario el problema se vuelve rápidamente inmanejable (computacionalmente hablando) y siendo python un lenguaje interpretado cualquier optimización es interesante. Tal como planteas el problema no aprovechas que si has elegido (1, 'a') como primer elemento de la solución ninguna pareja con 1 o 'a' es aceptable. Por tanto estas comprobando muchas combinaciones que no son solución. Creo que hay una forma mejor de plantear/visualizar el problema que elimina las combinaciones que no son solución. La lista del ejemplo puede representarse matricialmente como: a b c d 1 1 1 1 1 2 1 1 1 0 3 1 1 1 1 donde un 1 en una casilla significa que la pareja aparece en la lista y un 0 que no aparece. Visto así el problema se reduce a escoger tres celdas de la matriz sin repetir fila ni columna. Algo parecido al problema de las 8 reinas, pero sin tener en cuenta las diagonales y con casillas que no son válidas. Una asignación puede representarse mediante una lista de caracteres: por ejemplo ['a', 'b', 'c'] representa la asignación (1, 'a'), (2, 'b'), (3, 'c'); ['b', 'a', 'd'] corresponde a (1, 'b'), (2, 'a'), (3, 'd') etc. Como tienes que elegir una celda de cada columna, sin repetir columna, una solución estará formada por tres letras distintas. No todas las listas con tres letras distintas corresponden a asignaciones válidas, p.e. ['a', 'd', 'b'] no es válida ya que la pareja (2, 'd') no aparece en la lista. Todo este rollo se resume en el siguiente programa (no muy pythonico). # por simplicidad la segunda componente se codifica mediante un # numero. 1 -> 'a', 2 -> 'b' etc. parejas = [(1, 1), (1, 2), (1, 3), (1, 4), (2, 1), (2, 2), (2, 3), (3, 1), (3, 2), (3, 3), (3, 4), ] def parejasAMatriz(p) : # genera la matriz a partir de la lista de parejas nfilas = max([i[0] for i in p]) ncols = max([i[1] for i in p]) m = [ list([0]*ncols) for i in xrange(nfilas) ] for f, c in p : m[f-1][c-1] = 1 return m def genDisponible(m, e, p) : # a partir de la matriz y una solucion parcial devuelve una lista # con las columnas disponibles para una fila determinada ncols = len(m[0]) res = [] for i in xrange(ncols) : if i not in e and m[p][i] : # la columna esta disponible y la asignacion es valida res.append(i) return iter(res) def generaSoluciones(p) : matriz = parejasAMatriz(p) nfilas = len(matriz) ncols = len(matriz[0]) estado = [-1] * nfilas disponible = [ None ] * nfilas fila = 0 disponible[fila] = iter(range(ncols)) while True : while not disponible[fila] : estado[fila] = -1 fila -= 1 # retrocede if fila < 0 : # no hay mas soluciones raise StopIteration() estado[fila] = disponible[fila].next() fila += 1 if fila >= nfilas : yield estado fila -= 1 else : disponible[fila] = genDisponible(matriz, estado, fila) for s in generaSoluciones(parejas) : print s Espero que te sirva. Saludos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From cristhianboujon en gmail.com Sat Jul 19 01:28:28 2008 From: cristhianboujon en gmail.com (Cristhian Boujon) Date: Fri, 18 Jul 2008 20:28:28 -0300 Subject: hacer esta funcion no recursiva Message-ID: Estoy investigando sobre grafos en Python, lo implemento con un diccionario. Hay alguna forma de hacer esta funcion no recursiva? def find_path(graph, start, end, path=[]): path = path + [start] if start == end: return path if not graph.has_key(start): return None for node in graph[start]: if node not in path: newpath = find_path(graph, node, end, path) if newpath: return newpath return None Saludos. -- 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 maengora en gmail.com Sat Jul 19 03:20:40 2008 From: maengora en gmail.com (=?ISO-8859-1?Q?Manuel_Enrique_Gonz=E1lez_Ram=EDrez?=) Date: Fri, 18 Jul 2008 20:20:40 -0500 Subject: =?ISO-8859-1?Q?Re:__Tama=F1o_de_ejecutables_Py2exe_con_GUI?= In-Reply-To: <7EF1391B1036417B8DDD121E0B762A62@Martelaptop> References: <7EF1391B1036417B8DDD121E0B762A62@Martelaptop> Message-ID: La verdad no sabría que decirte. Tengo actualmente dos aplicaciones, una de inventario y otra de facturación una con un ejecutable de 16.5K (inventario) que tiene cerca de 8 formularios con botones sencillos, button imagen, grillas, cajas de texto, etc. y el otro executable exactamente igual, de 16.5K (facturación) con 20 forms con iguales características que las anteriores; ahora, si no solo te refieres a los ejecutables "digamos el App.exe" sino también a sus librerías estos son los pesos respectivamente: 19.4Mb sin incluir las imágenes que están en una carpeta aparte (Inventario) 20 Mb sin incluir las imágenes que están en una carpeta aparte (Facturación) Como puedes ver el asunto del peso o tamaño al menos en win2 cuando creas ejecutables con py2exe radica en las dll, pyd y la carpeta library que crea. El día 18 de julio de 2008 13:24, Marte Fabián Baquerizo Sánchez < martefabian en tredasis.com> escribió: > Hola, > > ¿Alguien ha tenido experiencia en generar ejecutables de Python con GUI > utilizando Py2exe o similares? > > En ocasiones he tenido que distribuir alguna pequeña utilería programada en > Python y con una GUI sencilla (algunos botones, cajas de texto), he usado Wx > y también Tk, pero los ejecutables resultantes no bajan de 6 u 8 MB por el > tamaño de las librerías GUI. > > ¿Alguien ha logrado producir ejecutables más pequeños? ¿Tal vez reduciendo > las librerías incrustadas a sólo los widgets utilizados? > > Recuerdo que hace años en C usé una librería llamada FLTK que era muy > pequeña, pero no he probado a usarla en Python (pyFLTK). > > 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 From martefabian en tredasis.com Sat Jul 19 03:48:07 2008 From: martefabian en tredasis.com (=?iso-8859-1?Q?Marte_Fabi=E1n_Baquerizo_S=E1nchez?=) Date: Fri, 18 Jul 2008 20:48:07 -0500 Subject: =?iso-8859-1?Q?Re:_=5BPython-es=5D_Tama=F1o_de_ejecutables_Py2exe_con_GUI?= References: <7EF1391B1036417B8DDD121E0B762A62@Martelaptop> Message-ID: Gracias por tu comentario, Olvidé mencionar que pongo a la configuraciónde py2exe que meta todo al ejecutable (al .exe) Efectivamente el peso mayor se lo llevan las librerias. ¿No habrá forma de reducirlas al mínimo necesario? Las que más pesan son las de GUI. Supongo que por defecto se meten todos los widgets y extras ya sea que nuestro script los use o no. Saludos. -------------------------------------------------- From: "Manuel Enrique González Ramírez" Sent: Friday, July 18, 2008 8:20 PM To: "Lista de discusión sobre python en castellano" Subject: Re: [Python-es] Tamaño de ejecutables Py2exe con GUI > La verdad no sabría que decirte. > > Tengo actualmente dos aplicaciones, una de inventario y otra de > facturación > una con un ejecutable de 16.5K (inventario) que tiene cerca de 8 > formularios > con botones sencillos, button imagen, grillas, cajas de texto, etc. y el > otro executable exactamente igual, de 16.5K (facturación) con 20 forms con > iguales características que las anteriores; ahora, si no solo te refieres > a > los ejecutables "digamos el App.exe" sino también a sus librerías estos > son > los pesos respectivamente: > > 19.4Mb sin incluir las imágenes que están en una carpeta aparte > (Inventario) > 20 Mb sin incluir las imágenes que están en una carpeta aparte > (Facturación) > > Como puedes ver el asunto del peso o tamaño al menos en win2 cuando creas > ejecutables con py2exe radica en las dll, pyd y la carpeta library que > crea. > > El día 18 de julio de 2008 13:24, Marte Fabián Baquerizo Sánchez < > martefabian en tredasis.com> escribió: > >> Hola, >> >> ¿Alguien ha tenido experiencia en generar ejecutables de Python con GUI >> utilizando Py2exe o similares? >> >> En ocasiones he tenido que distribuir alguna pequeña utilería programada >> en >> Python y con una GUI sencilla (algunos botones, cajas de texto), he usado >> Wx >> y también Tk, pero los ejecutables resultantes no bajan de 6 u 8 MB por >> el >> tamaño de las librerías GUI. >> >> ¿Alguien ha logrado producir ejecutables más pequeños? ¿Tal vez >> reduciendo >> las librerías incrustadas a sólo los widgets utilizados? >> >> Recuerdo que hace años en C usé una librería llamada FLTK que era muy >> pequeña, pero no he probado a usarla en Python (pyFLTK). >> >> 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 > _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From subscripcions en trespams.com Sat Jul 19 10:36:03 2008 From: subscripcions en trespams.com (Antoni Aloy) Date: Sat, 19 Jul 2008 10:36:03 +0200 Subject: Salt en joomla In-Reply-To: <3da702830807180411q40956799qca7be6ef4d228708@mail.gmail.com> References: <3da702830807180411q40956799qca7be6ef4d228708@mail.gmail.com> Message-ID: <200807191036.04018.subscripcions@trespams.com> El Divendres, 18-07-08 a les 13:11 escrigueres: > Buenas tardes... Buenas! > Existe alguna funcion en python para agregar los salt de joomla.. osea > simplemente no crear el algoritmo encriptado con md5 de 32 bits.. sino > poder crear con el salt tambien.. > > gracias Algo así como http://mail.python.org/pipermail/python-list/2003-March/195202.html ? Saludos, -- Antoni Aloy López Binissalem - Mallorca http://trespams.com Soci de bulma #34 _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From elkura40 en hotmail.com Sat Jul 19 12:36:02 2008 From: elkura40 en hotmail.com (fernando martinez rodriguez) Date: Sat, 19 Jul 2008 12:36:02 +0200 Subject: Problema al ejecutar programa en un terminal Message-ID: Hola. Resulta que me estoy iniciando en esto de la programacion. He leido que python es una buena elección, asi que me puse manos a la obra. Como soy autodidacta me cuesta más. El caso es que realizo mi primer programa, el clasico "hola mundo" con estas lineas: #!/usr/bin/env python print ?Hola Mundo? raw_input() Bueno pues mas que intento ver algún fallo no lo encuentro. Esto lo escribo con un editor (lo cierto es que lo hice con varios), el Geany. Despues lo guardo con el nombre hola.py y le doy el permiso de ejecutarse como programa pichando con el boton en el icono y marcando la pestaña, pues con chmod tampoco soy capaz. Bueno pero cuando ejecuto el programa y lo hago con la opcion ejecutar en un terminal, lo mas que puedo es ver la pantalla aparecer y desaparece al instante. Creia que con el raw_input() la frenaba pero no. Asi que algo debo de hacer mal. Y aqui es donde solicito vuestra ayuda, muchas gracias por leerme y si alguien puede pues estaria muy agradecido. Un saludo _________________________________________________________________ Hazte tu propia televisión a la carta. Música, noticias, estrenos, cine, humor y viajes en MSN Vídeo http://video.msn.com/?mkt=es-es ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From alexis.roda.villalonga en gmail.com Sat Jul 19 14:11:30 2008 From: alexis.roda.villalonga en gmail.com (Alexis Roda Villalonga) Date: Sat, 19 Jul 2008 14:11:30 +0200 Subject: hacer esta funcion no recursiva In-Reply-To: References: Message-ID: <5f4eef560807190511n45d50cdey6f5b05afc4de4566@mail.gmail.com> 2008/7/19 Cristhian Boujon : > Estoy investigando sobre grafos en Python, lo implemento con un diccionario. > Hay alguna forma de hacer esta funcion no recursiva? > > def find_path(graph, start, end, path=[]): > > path = path + [start] > if start == end: > return path > if not graph.has_key(start): > return None > for node in graph[start]: > if node not in path: > > newpath = find_path(graph, node, end, path) > if newpath: return newpath > return None Cualquier función recursiva puede convertirse en iterativa utilizando explícitamente una pila. Tal vez te resulte interesante echarle un vistazo al algoritmo de Dijkstra (búsqueda de caminos mínimos en grafos) para ver como resolver tu problema de manera iterativa: http://en.wikipedia.org/wiki/Dijkstra%27s_algorithm Saludos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From txema en nabla.net Sat Jul 19 13:57:05 2008 From: txema en nabla.net (Txema Vicente) Date: Sat, 19 Jul 2008 13:57:05 +0200 Subject: Problema al ejecutar programa en un terminal References: Message-ID: Buenas. Puede ser porque esas ?dobles comillas? no son las "normales". ----- Original Message ----- From: "fernando martinez rodriguez" To: Sent: Saturday, July 19, 2008 12:36 PM Subject: [Python-es] Problema al ejecutar programa en un terminal Hola. Resulta que me estoy iniciando en esto de la programacion. He leido que python es una buena elección, asi que me puse manos a la obra. Como soy autodidacta me cuesta más. El caso es que realizo mi primer programa, el clasico "hola mundo" con estas lineas: #!/usr/bin/env python print ?Hola Mundo? raw_input() Bueno pues mas que intento ver algún fallo no lo encuentro. Esto lo escribo con un editor (lo cierto es que lo hice con varios), el Geany. Despues lo guardo con el nombre hola.py y le doy el permiso de ejecutarse como programa pichando con el boton en el icono y marcando la pestaña, pues con chmod tampoco soy capaz. Bueno pero cuando ejecuto el programa y lo hago con la opcion ejecutar en un terminal, lo mas que puedo es ver la pantalla aparecer y desaparece al instante. Creia que con el raw_input() la frenaba pero no. Asi que algo debo de hacer mal. Y aqui es donde solicito vuestra ayuda, muchas gracias por leerme y si alguien puede pues estaria muy agradecido. Un saludo _________________________________________________________________ Hazte tu propia televisión a la carta. Música, noticias, estrenos, cine, humor y viajes en MSN Vídeo http://video.msn.com/?mkt=es-es -------------------------------------------------------------------------------- _______________________________________________ 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 elkura40 en hotmail.com Sat Jul 19 14:23:12 2008 From: elkura40 en hotmail.com (fernando martinez rodriguez) Date: Sat, 19 Jul 2008 14:23:12 +0200 Subject: Problema al ejecutar programa en un terminal Message-ID: Pues creo que no, ya las cambie y me pasa lo mismo. ademas probé con otro programilla y siempre lo mismo, aparece y desaparece. #!/usr/bin/env python print "Hola Mundo" raw_input() Alguna otra idea??. gracias _________________________________________________________________ La última hora de tu ciudad en MSN Noticias http://noticias.es.msn.com/_______________________________________________ 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 Jul 19 18:40:58 2008 From: kalith.9 en gmail.com (kalith kalith) Date: Sat, 19 Jul 2008 12:10:58 -0430 Subject: Problema al ejecutar programa en un terminal In-Reply-To: References: Message-ID: <3da702830807190940j36ef8e18x257b18c18f004fad@mail.gmail.com> quien sabe lo de las comillas no creo.. pues porque no lo haces desde la consola python elnombredetuarchivo.py -- 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 elkura40 en hotmail.com Sat Jul 19 21:38:35 2008 From: elkura40 en hotmail.com (fernando martinez rodriguez) Date: Sat, 19 Jul 2008 21:38:35 +0200 Subject: Problema al ejecutar programa en un terminal Message-ID: python hola.py File "", line 1 python hola.py ^ SyntaxError: invalid syntax pues es que tampoco puedo. debe de ser algun problema de configurar algo porque otra cosa..... _________________________________________________________________ Hazte tu propia televisión a la carta. Música, noticias, estrenos, cine, humor y viajes en MSN Vídeo http://video.msn.com/?mkt=es-es_______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From elkura40 en hotmail.com Sat Jul 19 23:18:43 2008 From: elkura40 en hotmail.com (fernando martinez rodriguez) Date: Sat, 19 Jul 2008 23:18:43 +0200 Subject: Problema al ejecutar programa en un terminal Message-ID: Bueno pues parece que ya lo consegui. El problema era que no colocaba el terminal en la ruta necesaria. Es que solo llevo unos 20 dias utilizando linux(Ubuntu 8.04) y claro estoy un poco perdido. Muchas gracias de nuevo por vuestra ayuda. Un saludo _________________________________________________________________ Sigue en directo todas las competiciones deportivas en MSN Deportes http://deportes.es.msn.com/_______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From python en ammsoft.com Sat Jul 19 12:28:36 2008 From: python en ammsoft.com (Amm-Python) Date: Sat, 19 Jul 2008 12:28:36 +0200 Subject: =?iso-8859-1?Q?RE:_=5BPython-es=5D_Tama=F1o_de_ejecutables_Py2exe_con_GUI?= In-Reply-To: References: Message-ID: <001001c8e98a$34a61f40$640010ac@nombref31twj9b> Yo prefiero no meterlo todo en un único .exe. Creo que es mejor tener las librerías en una carpeta y tus módulos en un zip. De esta forma sólo es "pesado" cargar en la primera instalación, después, para actualizar, sólo hay que instalar lo que se modifica. Este es un trozo del setup que yo uso con py2exe 0.6.6: options = {"py2exe": {"compressed": 1, "optimize": 0, "bundle_files": 3, "dll_excludes": ["w9xpopen.exe"] }}, data_files=[("locale/ca/LC_MESSAGES", glob.glob("locale/ca/LC_MESSAGES/*.mo")), ("locale/es/LC_MESSAGES", glob.glob("locale/es/LC_MESSAGES/*.mo")), ("locale/en/LC_MESSAGES", glob.glob("locale/en/LC_MESSAGES/*.mo")), ("temas/tema-def", glob.glob("temas/tema-def/*.*")), ("temas/tema-def/16x16", glob.glob("temas/tema-def/16x16/*.*")), ("temas/tema-def/48x48", glob.glob("temas/tema-def/48x48/*.*")), ("temas/tema-def/22x22", glob.glob("temas/tema-def/22x22/*.*")), ("temas/tema-def/33x33", glob.glob("temas/tema-def/33x33/*.*")), ("temas/tema-def/sounds", glob.glob("temas/tema-def/sounds/*.*")), ("locale/ca/LC_HELP",glob.glob("locale/ca/LC_HELP/*.*")), ("locale/es/LC_HELP",glob.glob("locale/es/LC_HELP/*.*")), ("locale/en/LC_HELP",glob.glob("locale/en/LC_HELP/*.*")), ], zipfile = "lib/ammsoft.lib",#mis módulos windows = [gestion], ) Como puedes apreciar, la internacionalización, ayuda, iconos y sonidos también están en carpetas separadas. Yo solo he tenido un problema, en la última versión; 0.6.8, han cambiado la forma de empaquetar alguna librerías, por lo que me obliga a borrar la instalación anterior, de forma que no queden duplicadas. Espero que en futuras versiones no vuelvan a cambiar el sistema. Espero no haberte liado en vez de ayudarte. Yo tardé meses en decidir la forma de montar el .exe. Saludos, Toni Martínez > -----Mensaje original----- > De: python-es-bounces en aditel.org > [mailto:python-es-bounces en aditel.org] En nombre de Marte > Fabián Baquerizo Sánchez > Enviado el: dissabte, 19 / juliol / 2008 03:48 > Para: Lista de discusión sobre python en castellano > Asunto: Re: [Python-es] Tamaño de ejecutables Py2exe con GUI > > > Gracias por tu comentario, > > Olvidé mencionar que pongo a la configuraciónde py2exe que > meta todo al > ejecutable (al .exe) > > Efectivamente el peso mayor se lo llevan las librerias. ¿No > habrá forma de > reducirlas al mínimo necesario? Las que más pesan son las de GUI. > > Supongo que por defecto se meten todos los widgets y extras > ya sea que > nuestro script los use o no. > > Saludos. > > > -------------------------------------------------- > From: "Manuel Enrique González Ramírez" > Sent: Friday, July 18, 2008 8:20 PM > To: "Lista de discusión sobre python en castellano" > > Subject: Re: [Python-es] Tamaño de ejecutables Py2exe con GUI > > > La verdad no sabría que decirte. > > > > Tengo actualmente dos aplicaciones, una de inventario y otra de > > facturación > > una con un ejecutable de 16.5K (inventario) que tiene cerca de 8 > > formularios > > con botones sencillos, button imagen, grillas, cajas de > texto, etc. y el > > otro executable exactamente igual, de 16.5K (facturación) > con 20 forms con > > iguales características que las anteriores; ahora, si no > solo te refieres > > a > > los ejecutables "digamos el App.exe" sino también a sus > librerías estos > > son > > los pesos respectivamente: > > > > 19.4Mb sin incluir las imágenes que están en una carpeta aparte > > (Inventario) > > 20 Mb sin incluir las imágenes que están en una carpeta aparte > > (Facturación) > > > > Como puedes ver el asunto del peso o tamaño al menos en win2 cuando > > creas ejecutables con py2exe radica en las dll, pyd y la carpeta > > library que crea. > > > > El día 18 de julio de 2008 13:24, Marte Fabián Baquerizo Sánchez < > > martefabian en tredasis.com> escribió: > > > >> Hola, > >> > >> ¿Alguien ha tenido experiencia en generar ejecutables de > Python con > >> GUI utilizando Py2exe o similares? > >> > >> En ocasiones he tenido que distribuir alguna pequeña utilería > >> programada > >> en > >> Python y con una GUI sencilla (algunos botones, cajas de > texto), he usado > >> Wx > >> y también Tk, pero los ejecutables resultantes no bajan de > 6 u 8 MB por > >> el > >> tamaño de las librerías GUI. > >> > >> ¿Alguien ha logrado producir ejecutables más pequeños? ¿Tal vez > >> reduciendo > >> las librerías incrustadas a sólo los widgets utilizados? > >> > >> Recuerdo que hace años en C usé una librería llamada FLTK > que era muy > >> pequeña, pero no he probado a usarla en Python (pyFLTK). > >> > >> 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 > > > _______________________________________________ > 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 martefabian en tredasis.com Sun Jul 20 04:32:06 2008 From: martefabian en tredasis.com (=?iso-8859-1?Q?Marte_Fabi=E1n_Baquerizo_S=E1nchez?=) Date: Sat, 19 Jul 2008 21:32:06 -0500 Subject: =?iso-8859-1?Q?Re:_=5BPython-es=5D_Tama=F1o_de_ejecutables_Py2exe_con_GUI?= References: <001001c8e98a$34a61f40$640010ac@nombref31twj9b> Message-ID: <39B0A8D28FF9436A9359CA245C1E4498@Martelaptop> Gracias por tus sugerencias y por postear tu configuración. También me ha llevado un buen rato el decidir como distribuir/empaquetar los scripts de esta manera. Saludos. -------------------------------------------------- From: "Amm-Python" Sent: Saturday, July 19, 2008 5:28 AM To: "'Lista de discusión sobre python en castellano'" Subject: RE: [Python-es] Tamaño de ejecutables Py2exe con GUI > Yo prefiero no meterlo todo en un único .exe. > > Creo que es mejor tener las librerías en una carpeta y tus módulos en un > zip. > De esta forma sólo es "pesado" cargar en la primera instalación, > después, para actualizar, sólo hay que instalar lo que se modifica. > > Este es un trozo del setup que yo uso con py2exe 0.6.6: > > options = {"py2exe": {"compressed": 1, > "optimize": 0, > "bundle_files": 3, > "dll_excludes": ["w9xpopen.exe"] > }}, > data_files=[("locale/ca/LC_MESSAGES", > glob.glob("locale/ca/LC_MESSAGES/*.mo")), > ("locale/es/LC_MESSAGES", > glob.glob("locale/es/LC_MESSAGES/*.mo")), > ("locale/en/LC_MESSAGES", > glob.glob("locale/en/LC_MESSAGES/*.mo")), > ("temas/tema-def", glob.glob("temas/tema-def/*.*")), > ("temas/tema-def/16x16", > glob.glob("temas/tema-def/16x16/*.*")), > ("temas/tema-def/48x48", > glob.glob("temas/tema-def/48x48/*.*")), > ("temas/tema-def/22x22", > glob.glob("temas/tema-def/22x22/*.*")), > ("temas/tema-def/33x33", > glob.glob("temas/tema-def/33x33/*.*")), > ("temas/tema-def/sounds", > glob.glob("temas/tema-def/sounds/*.*")), > > ("locale/ca/LC_HELP",glob.glob("locale/ca/LC_HELP/*.*")), > > ("locale/es/LC_HELP",glob.glob("locale/es/LC_HELP/*.*")), > > ("locale/en/LC_HELP",glob.glob("locale/en/LC_HELP/*.*")), > ], > > zipfile = "lib/ammsoft.lib",#mis módulos > windows = [gestion], > ) > > Como puedes apreciar, la internacionalización, ayuda, iconos y sonidos > también están en carpetas separadas. > > Yo solo he tenido un problema, en la última versión; 0.6.8, han cambiado > la forma de empaquetar alguna librerías, por lo que me obliga a borrar > la instalación anterior, de forma que no queden duplicadas. Espero que > en futuras versiones no vuelvan a cambiar el sistema. > > Espero no haberte liado en vez de ayudarte. Yo tardé meses en decidir la > forma de montar el .exe. > > Saludos, > Toni Martínez > > >> -----Mensaje original----- >> De: python-es-bounces en aditel.org >> [mailto:python-es-bounces en aditel.org] En nombre de Marte >> Fabián Baquerizo Sánchez >> Enviado el: dissabte, 19 / juliol / 2008 03:48 >> Para: Lista de discusión sobre python en castellano >> Asunto: Re: [Python-es] Tamaño de ejecutables Py2exe con GUI >> >> >> Gracias por tu comentario, >> >> Olvidé mencionar que pongo a la configuraciónde py2exe que >> meta todo al >> ejecutable (al .exe) >> >> Efectivamente el peso mayor se lo llevan las librerias. ¿No >> habrá forma de >> reducirlas al mínimo necesario? Las que más pesan son las de GUI. >> >> Supongo que por defecto se meten todos los widgets y extras >> ya sea que >> nuestro script los use o no. >> >> Saludos. >> >> >> -------------------------------------------------- >> From: "Manuel Enrique González Ramírez" >> Sent: Friday, July 18, 2008 8:20 PM >> To: "Lista de discusión sobre python en castellano" >> >> Subject: Re: [Python-es] Tamaño de ejecutables Py2exe con GUI >> >> > La verdad no sabría que decirte. >> > >> > Tengo actualmente dos aplicaciones, una de inventario y otra de >> > facturación >> > una con un ejecutable de 16.5K (inventario) que tiene cerca de 8 >> > formularios >> > con botones sencillos, button imagen, grillas, cajas de >> texto, etc. y el >> > otro executable exactamente igual, de 16.5K (facturación) >> con 20 forms con >> > iguales características que las anteriores; ahora, si no >> solo te refieres >> > a >> > los ejecutables "digamos el App.exe" sino también a sus >> librerías estos >> > son >> > los pesos respectivamente: >> > >> > 19.4Mb sin incluir las imágenes que están en una carpeta aparte >> > (Inventario) >> > 20 Mb sin incluir las imágenes que están en una carpeta aparte >> > (Facturación) >> > >> > Como puedes ver el asunto del peso o tamaño al menos en win2 cuando >> > creas ejecutables con py2exe radica en las dll, pyd y la carpeta >> > library que crea. >> > >> > El día 18 de julio de 2008 13:24, Marte Fabián Baquerizo Sánchez < >> > martefabian en tredasis.com> escribió: >> > >> >> Hola, >> >> >> >> ¿Alguien ha tenido experiencia en generar ejecutables de >> Python con >> >> GUI utilizando Py2exe o similares? >> >> >> >> En ocasiones he tenido que distribuir alguna pequeña utilería >> >> programada >> >> en >> >> Python y con una GUI sencilla (algunos botones, cajas de >> texto), he usado >> >> Wx >> >> y también Tk, pero los ejecutables resultantes no bajan de >> 6 u 8 MB por >> >> el >> >> tamaño de las librerías GUI. >> >> >> >> ¿Alguien ha logrado producir ejecutables más pequeños? ¿Tal vez >> >> reduciendo >> >> las librerías incrustadas a sólo los widgets utilizados? >> >> >> >> Recuerdo que hace años en C usé una librería llamada FLTK >> que era muy >> >> pequeña, pero no he probado a usarla en Python (pyFLTK). >> >> >> >> 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 >> > >> _______________________________________________ >> 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 hidura en gmail.com Sun Jul 20 06:02:32 2008 From: hidura en gmail.com (Hidura) Date: Sun, 20 Jul 2008 00:02:32 -0400 Subject: Como ejecutar un modulo Message-ID: <4bbf7fb20807192102g1c244c72tf1795bd9501c83f0@mail.gmail.com> Buenas noches lista estoy trabajando en el ejecutable de un modulo y tengo un inconveniente para que ejecute pues como observaran cuando despues que hago la importacion y trato de ejecutar no hace nada cuando en realidad deberia abrir una ventana. import Main from Main import Main_Obje from Main import Login from Main.Login import login login() Gracias -- Hidura _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From py en ch3m4.org Sun Jul 20 13:05:46 2008 From: py en ch3m4.org (Chema Cortes) Date: Sun, 20 Jul 2008 13:05:46 +0200 Subject: Problemas con import In-Reply-To: <4bbf7fb20807180627le430953jeb9d3cc3db0090ea@mail.gmail.com> References: <4bbf7fb20807171250m1ded47bcm65a48541cd3915d2@mail.gmail.com> <2c9fb0dd0807180110k6b9529c8ve22b16fb0db0e67a@mail.gmail.com> <4bbf7fb20807180627le430953jeb9d3cc3db0090ea@mail.gmail.com> Message-ID: <200807201305.54615.py@ch3m4.org> El Friday 18 July 2008 15:27:26 Hidura escribió: > Ok, yo tengo un directorio dentro de la carpeta Hidalgo que se llama Main y > contiene los modulos: Login y Main > y tengo otro directorio fuera de Main pero dentro de la carpeta Hidalgo > llamado Global/ en este tengo MainObje mi pregunta se da como puedo hacer > para importar desde Main/ algo en Global/ por que por mas que intento no > funciona Si la carpeta Hidalgo cumple con estas condiciones a) es un paquete (con subpaquetes) b) está en la ruta de búsqueda (sys.path) entonces desde cualquier "sitio" (incluído el subpaquete Main) se puede acceder a lo que haya en Global del modo habitual from Hidalgo.Global import MainObje De momento no es posible realizar importaciones con ruta relativas. ------------ 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 py en ch3m4.org Sun Jul 20 13:32:25 2008 From: py en ch3m4.org (Chema Cortes) Date: Sun, 20 Jul 2008 13:32:25 +0200 Subject: Como ejecutar un modulo In-Reply-To: <4bbf7fb20807192102g1c244c72tf1795bd9501c83f0@mail.gmail.com> References: <4bbf7fb20807192102g1c244c72tf1795bd9501c83f0@mail.gmail.com> Message-ID: <200807201332.30256.py@ch3m4.org> El Sunday 20 July 2008 06:02:32 Hidura escribió: > Buenas noches lista estoy trabajando en el ejecutable de un modulo y tengo > un inconveniente para que ejecute pues como observaran cuando despues que > hago la importacion y trato de ejecutar no hace nada cuando en realidad > deberia abrir una ventana. Si no nos pones más código, con lo que dices no podemos adivinar lo que te pasa. > import Main > from Main import Main_Obje > from Main import Login > from Main.Login import login > login() > Tantos imports son inncesarios. Con el último debería bastar; a no ser que estés usando los imports para ejecutar código, cosa nada recomendable. Si fuera así, trata de agrupar el código ejecutable en una función o una clase para ser llamada explícitamente después de importar el módulo. ------------ 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 jm.galvez en oneandzero.net Sun Jul 20 14:14:41 2008 From: jm.galvez en oneandzero.net (=?iso-8859-1?Q?Jm._G=E1lvez?=) Date: Sun, 20 Jul 2008 14:14:41 +0200 Subject: Formulario llamar a una funcion en cherrypy Message-ID: <000601c8ea62$32fe4b80$2100a8c0@Principal> Buenas. Como puede llamar a una funcion en un formulario en cherrypy cuando esa funcion se encuentra en otro modulo que he importado. Ejemplo: import Funciones class WelcomePage: def index(self): # Ask for the user's name. return '''
What is your name?
''' index.exposed = True Funciones.py ################################ def greetUser(self, name = None): Al hacer esto no funciona no sabe encrontrar la funcion. Haber si alguien me puede ayudar, gracias. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From mti4 en hotmail.com Sun Jul 20 21:58:23 2008 From: mti4 en hotmail.com (mti-4 mti-4) Date: Sun, 20 Jul 2008 19:58:23 +0000 Subject: =?iso-8859-1?Q?RE:__Problema_extra=F1o_con_importaci=F3n_de_m?= =?iso-8859-1?Q?=F3dulos!!!!?= In-Reply-To: <2c9fb0dd0807180622l3065b96fn26f6735a48316d2d@mail.gmail.com> References: <93e969700807162340q22774ec2nb3024ba88a1cd59d@mail.gmail.com> <2c9fb0dd0807180622l3065b96fn26f6735a48316d2d@mail.gmail.com> Message-ID: POR QUE me enviais tanto spam PYTON > Date: Fri, 18 Jul 2008 15:22:08 +0200 > From: pych3m4 en gmail.com > To: python-es en aditel.org > Subject: Re: [Python-es] Problema extraño con importación de módulos!!!! > > El día 17 de julio de 2008 8:40, Juan Pablo Isler escribió: > > Tengo un grupo de carpetas para separar los módulos, resulta que importo los > > módulos de manera correcta en el pyScripter, pero cuando trato de correr mi > > programa a través de consola, me arroja el errór de que no encuentra el > > módulo =/. > > Lo primero que me intriga es si literalmente éste es el error que te > da ("módulo =/."). He observado que en la explicación usas nombres de > módulos con tildes, lo que podría ser causa de errores. > > > > Los import los hago de la siguiente forma > > > > from carpetaPrincipal.carpeta1.módulo3 import nombreClase > > Para que ésto funcione, el paquete "carpetaPrincipal" debe estar en la > ruta de búsqueda de módulos (o sea, en sys.path). Muchas veces, los > IDEs añaden el directorio de trabajo a la ruta de búsqueda, lo que > explicaría porqué te funciona en el IDE y no fuera. Revisa la ruta de > búsqueda (sys.path). > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes _________________________________________________________________ La última hora de tu ciudad en MSN Noticias http://noticias.es.msn.com/_______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From szyszeja en gmail.com Sun Jul 20 22:24:44 2008 From: szyszeja en gmail.com (Leonidas Szyszeja) Date: Sun, 20 Jul 2008 17:24:44 -0300 Subject: Problema al ejecutar programa en un terminal In-Reply-To: References: Message-ID: <48839F0C.8090700@gmail.com> Suerte con linux y python!!! no aflojes fernando martinez rodriguez escribió: > Bueno pues parece que ya lo consegui. El problema era que no colocaba el terminal en la ruta necesaria. Es que solo llevo unos 20 dias utilizando linux(Ubuntu 8.04) y claro estoy un poco perdido. Muchas gracias de nuevo por vuestra ayuda. Un saludo > _________________________________________________________________ > Sigue en directo todas las competiciones deportivas en MSN Deportes > http://deportes.es.msn.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 mti4 en hotmail.com Sun Jul 20 22:28:23 2008 From: mti4 en hotmail.com (mti-4 mti-4) Date: Sun, 20 Jul 2008 20:28:23 +0000 Subject: Problema al ejecutar programa en un terminal In-Reply-To: <48839F0C.8090700@gmail.com> References: <48839F0C.8090700@gmail.com> Message-ID: Tio no me envieis mas cositas de Python .................................... > Date: Sun, 20 Jul 2008 17:24:44 -0300 > From: szyszeja en gmail.com > To: python-es en aditel.org > Subject: Re: [Python-es] Problema al ejecutar programa en un terminal > > Suerte con linux y python!!! > no aflojes > > > fernando martinez rodriguez escribió: > > Bueno pues parece que ya lo consegui. El problema era que no colocaba el terminal en la ruta necesaria. Es que solo llevo unos 20 dias utilizando linux(Ubuntu 8.04) y claro estoy un poco perdido. Muchas gracias de nuevo por vuestra ayuda. Un saludo > > _________________________________________________________________ > > Sigue en directo todas las competiciones deportivas en MSN Deportes > > http://deportes.es.msn.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 _________________________________________________________________ Sigue en directo todas las competiciones deportivas en MSN Deportes http://deportes.es.msn.com/_______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From dreamtrick en gmail.com Sun Jul 20 22:35:41 2008 From: dreamtrick en gmail.com (Ignacio Quezada) Date: Sun, 20 Jul 2008 22:35:41 +0200 Subject: [OT] Python no es SPAM In-Reply-To: References: <48839F0C.8090700@gmail.com> Message-ID: <1216586141.7215.4.camel@DrEaMeREW.ZONE> Si te llegan mensajes sobre python.. 1. No es SPAM ¬¬. 2. Esto es una lista de correo para usuarios de Python. 3. Te debes de haber suscrito tu mismo en la página web. 4. Si quieres que te dejen de llegar e-mails tan interesantes como los de esta lista, ve a: http://listas.aditel.org/listinfo/python-es y busca en la zona inferior de la página un apartado con un botón que pone "anular su suscripción o editar sus preferencias" y te desapuntas. Saludos! ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From mti4 en hotmail.com Sun Jul 20 22:53:36 2008 From: mti4 en hotmail.com (mti-4 mti-4) Date: Sun, 20 Jul 2008 20:53:36 +0000 Subject: [OT] Python no es SPAM In-Reply-To: <1216586141.7215.4.camel@DrEaMeREW.ZONE> References: <48839F0C.8090700@gmail.com> <1216586141.7215.4.camel@DrEaMeREW.ZONE> Message-ID: Gracias Tal vez es muy interesante pero no me di de alta en ningun foro ni algo p. P. > From: dreamtrick en gmail.com > To: python-es en aditel.org > Date: Sun, 20 Jul 2008 22:35:41 +0200 > Subject: [Python-es] [OT] Python no es SPAM > > Si te llegan mensajes sobre python.. > 1. No es SPAM ¬¬. > 2. Esto es una lista de correo para usuarios de Python. > 3. Te debes de haber suscrito tu mismo en la página web. > 4. Si quieres que te dejen de llegar e-mails tan interesantes como los > de esta lista, ve a: > http://listas.aditel.org/listinfo/python-es > y busca en la zona inferior de la página un apartado con un botón que > pone "anular su suscripción o editar sus preferencias" y te desapuntas. > > Saludos! > _________________________________________________________________ Hazte tu propia televisión a la carta. Música, noticias, estrenos, cine, humor y viajes en MSN Vídeo http://video.msn.com/?mkt=es-es_______________________________________________ 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 Mon Jul 21 01:22:04 2008 From: gonzalo.castro.castilla en gmail.com (Gonzalo Castro) Date: Mon, 21 Jul 2008 01:22:04 +0200 Subject: autocompletado emacs Message-ID: <9685383c0807201622m20a14165m96c9f5db995cfe9e@mail.gmail.com> Saludos!! Estoy empezando a usar emacs para programar en python y me gustaría tener autocompletado en emacs. Ahora mismo, tengo algo de autocomletado, de forma que con la tecla ESC + TAB (alt, no funciona) me autocompleta las funciones y alguna que otra cosilla más gracias a estas webs: http://wiki.python.org/moin/EmacsPythonCompletion http://timchen119.blogspot.com/2007/02/bash-like-tab-completion-in-emacs.html http://www.rwdev.eu/articles/emacspyeng (falta el pycomplete.el y no puedo hacerlo) El caso es que no tengo todo el autocompletado que me gustaría: he estado usando ipython y he visto cómo te autocompleta las _variables_ que declaras anteriormente, cosa que me falta con el python mode y el pycomplete. ¿Existe la posibilidad de autocompletar las variables que hayan sido inicializadas tan sólo empleando la tecla TAB? Muchas gracias. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From minoztro en gmail.com Mon Jul 21 05:24:36 2008 From: minoztro en gmail.com (Milton Galo Patricio Inostroza Aguilera) Date: Sun, 20 Jul 2008 23:24:36 -0400 Subject: Reportes en pdf Message-ID: <172699c50807202024m34349e42y9b7d578ec25503e5@mail.gmail.com> Estimados: Hace bastante tiempo llevo confeccionando reportes utilizando reportlab...quedan maravillosos, en realidad no me quejo....pero siempre he tenido la duda y la inquietud de utilizar xml para poder hacer los reportes y luego con este xml transformarlo a cualquier otro formato...alguien me puede orientar sobre este tema..y si han utilizado xml para portarlo a pdf y cuales son sus limitaciones. Gracias por sus comentarios, -- Milton Inostroza Aguilera ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From suscripconvbe en gmail.com Mon Jul 21 05:27:23 2008 From: suscripconvbe en gmail.com (=?ISO-8859-1?Q?Vicente_Bal=B7le?=) Date: Mon, 21 Jul 2008 05:27:23 +0200 Subject: Programar con PythonCE en WindowsCE.NET 4.2 Message-ID: <2468bd4f0807202027x24127645w69d1dedfe5a7837d@mail.gmail.com> Saludos a todos. Quizás sea muy espartano en mi exposición pero creo que lo importante es que vaya a grano. El tema es el siguiente: Tengo que crear un programa de captación de datos a través del puerto serie y bluetooth con PythonCE en un Handheld PC cuyas características son las siguientes: S.O.: Windows CE .NET 4.2 Microprocesador: Intel X-Scale PXA255 a 400 Mhz Memoria: 32 MB SDRAM y 128 MB ROM (CF card) Pantalla: QVGA 3,5" TFT color de 240 x 320 Puerto Serie: RS-232C (D-sub 9) y otro RS-232C (6 pin) USB: Ver 1.1 Bluetooth: tipo CF card. Antes de pediros ayuda, ya he intentado instalar el PythonCE 2.5 para ARM, tanto el instalable desde un PC como el instalable directo sobre el HPC (.cab). Ni el uno ni el otro me lo han permitido. Visto que con la última versión de Python no conseguía nada recurrí a versiones inferiores como la Python-2.3.4/HPC-2000. Coloque la carpeta del paquete donde corresponde y ejecuté el python. Se quedaba colgado, pero podía cerrar la ventana que él abría. Por último me baje el PythonCE2.3.4-StorageCard de la siguiente dirección: http://ft.atr.bydgoszcz.pl/~leeloo/PythonCE2.3.4-StorageCard.zip De momento este versión se ha ejecutado bien; sólo me falta ejecutar el archivo link sin que me de un error (me he olvidado de tomar nota del error) y se pueda terminar de configurar el python. Tengo que admitir que mis conocimientos sobre WindowsCE es mínima, igual que con Python, pero aún así me he empecinado en instalar el PythonCE y programar con él, por esto os quiero plantear las siguientes cuestiones: Por una parte querría saber si hago bien en meterme a programar en PythonCE el HPC (Handheld PC). Por otra parte, es posible instalar el PythonCE 2.5 sobre WindowsCE.NET 4.2. En caso afirmativo; ¿Qué pasos tengo que seguir?. En el caso que no se pueda instalar PythonCE2.5; ¿Cómo instalar adecuadamente el pack de PythonCE2.3.4-StorageCard? Tengo muchas más dudas que exponer, pero no tiene sentido presentarlas ahora hasta que no haya resuelto las anteriores. Gracias de antemano por vuestra atención. Saludos. Vicente _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jcanto en hispasec.com Mon Jul 21 07:14:39 2008 From: jcanto en hispasec.com (Julio Canto) Date: Mon, 21 Jul 2008 07:14:39 +0200 Subject: [OT] Python no es SPAM In-Reply-To: References: <48839F0C.8090700@gmail.com> <1216586141.7215.4.camel@DrEaMeREW.ZONE> Message-ID: <48841B3F.9050000@hispasec.com> mti-4 mti-4 escribió: > Gracias Tal vez es muy interesante pero no me di de alta en ningun foro ni algo p. Que el administrador de la lista de de baja directamente ese email. Probablemente este lumbreras no recuerda ni cuando se dio de alta en la lista. -- 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 francisco.palm en gmail.com Mon Jul 21 13:51:52 2008 From: francisco.palm en gmail.com (Francisco Palm) Date: Tue, 22 Jul 2008 07:21:52 +1930 Subject: Reportes en pdf In-Reply-To: <172699c50807202024m34349e42y9b7d578ec25503e5@mail.gmail.com> References: <172699c50807202024m34349e42y9b7d578ec25503e5@mail.gmail.com> Message-ID: Antes que XML que considero un formato nefasto y cuasi-aberrante te recomendaría utilizar algo mucho mas elegante y pytónico como reStructuredText (rst) y desde allí generar LaTeX o XML y entonces si generar el PDF. Es un formato legible y sencillo de mantener (cómo python!) y desde allí tienes más opciones como generar HTML muy bonito con herramientas como Sphinx http://sphinx.pocoo.org/. Con reStructuredText cuentas luego con comandos como rst2html.py rst2newlatex.py rst2s5.py rst2latex.py rst2pseudoxml.py rst2xml.py Solamente hecho en falta una forma sencilla de editar reStructuredText, supongo que todos los que se ponen a programar editores de rst en el camino se acostumbran a editarlo directamente. Vale la pena echarle un ojo a http://rst2a.com Saludos F. Palm 2008/7/21 Milton Galo Patricio Inostroza Aguilera : > Estimados: > > Hace bastante tiempo llevo confeccionando reportes utilizando > reportlab...quedan maravillosos, en realidad no me quejo....pero > siempre he tenido la duda y la inquietud de utilizar xml para poder > hacer los reportes y luego con este xml transformarlo a cualquier otro > formato...alguien me puede orientar sobre este tema..y si han > utilizado xml para portarlo a pdf y cuales son sus limitaciones. > > Gracias por sus comentarios, > > -- > Milton Inostroza Aguilera > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- -------------------------------------- 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 lgs en sicem.biz Mon Jul 21 18:32:37 2008 From: lgs en sicem.biz (Lorenzo Gil =?ISO-8859-1?Q?S=E1nchez?=) Date: Mon, 21 Jul 2008 18:32:37 +0200 Subject: Reportes en pdf In-Reply-To: <172699c50807202024m34349e42y9b7d578ec25503e5@mail.gmail.com> References: <172699c50807202024m34349e42y9b7d578ec25503e5@mail.gmail.com> Message-ID: <1216657957.3034.3.camel@yog-sothoth.lorenzogil.com> Tienes RML (también de Reportlab, pero esta vez de pago) que es un dialecto de XML, especifico para escribir informes (aka reportes). http://www.reportlab.com/docs/rml2pdf-ds.pdf La gente de Reportlab te vende rml2pdf, que es un ejecutable que convierte archivos rml a pdfs: http://www.reportlab.com/rml_index.html Si no te sobra el dinero, puedes optar por el proyecto OpenReport que tienen una alternativa al rml2pdf de Reportlab, esta vez libre: http://openreport.org/index.py/trml2pdf Un saludo Lorenzo El dom, 20-07-2008 a las 23:24 -0400, Milton Galo Patricio Inostroza Aguilera escribió: > Estimados: > > Hace bastante tiempo llevo confeccionando reportes utilizando > reportlab...quedan maravillosos, en realidad no me quejo....pero > siempre he tenido la duda y la inquietud de utilizar xml para poder > hacer los reportes y luego con este xml transformarlo a cualquier otro > formato...alguien me puede orientar sobre este tema..y si han > utilizado xml para portarlo a pdf y cuales son sus limitaciones. > > Gracias por sus comentarios, > > _______________________________________________ > 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 pych3m4 en gmail.com Tue Jul 22 00:38:47 2008 From: pych3m4 en gmail.com (Chema Cortes) Date: Tue, 22 Jul 2008 00:38:47 +0200 Subject: Reportes en pdf In-Reply-To: <172699c50807202024m34349e42y9b7d578ec25503e5@mail.gmail.com> References: <172699c50807202024m34349e42y9b7d578ec25503e5@mail.gmail.com> Message-ID: <2c9fb0dd0807211538s48cab326u2ccacb69de2a964a@mail.gmail.com> El día 21 de julio de 2008 5:24, Milton Galo Patricio Inostroza Aguilera escribió: > Estimados: > > Hace bastante tiempo llevo confeccionando reportes utilizando > reportlab...quedan maravillosos, en realidad no me quejo....pero > siempre he tenido la duda y la inquietud de utilizar xml para poder > hacer los reportes y luego con este xml transformarlo a cualquier otro > formato...alguien me puede orientar sobre este tema..y si han > utilizado xml para portarlo a pdf y cuales son sus limitaciones. Como ya te han dicho, es complicado diseñar directamente con xml si no dispones de alguna herramienta apropiada. Una alternativa muy simple y accesible es utilizar documentos ODF (Open Document Format) que puedes diseñar desde openoffice o cualquier otro editor que acepte el estándar Open Document Text. Los informes se pueden transformar luego en PDF, DOC y otros formatos: http://appyframework.org/pod.html _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From pych3m4 en gmail.com Tue Jul 22 02:00:11 2008 From: pych3m4 en gmail.com (Chema Cortes) Date: Tue, 22 Jul 2008 02:00:11 +0200 Subject: autocompletado emacs In-Reply-To: <9685383c0807201622m20a14165m96c9f5db995cfe9e@mail.gmail.com> References: <9685383c0807201622m20a14165m96c9f5db995cfe9e@mail.gmail.com> Message-ID: <2c9fb0dd0807211700o3e0574c7n9172e9f3b0ae426a@mail.gmail.com> El día 21 de julio de 2008 1:22, Gonzalo Castro escribió: > Saludos!! > Estoy empezando a usar emacs para programar en python y me gustaría > tener autocompletado en emacs. Ahora mismo, tengo algo de > autocomletado, de forma que con la tecla ESC + TAB (alt, no funciona) > me autocompleta las funciones y alguna que otra cosilla más gracias a > estas webs: > > http://wiki.python.org/moin/EmacsPythonCompletion > http://timchen119.blogspot.com/2007/02/bash-like-tab-completion-in-emacs.html > http://www.rwdev.eu/articles/emacspyeng (falta el pycomplete.el y no > puedo hacerlo) > > El caso es que no tengo todo el autocompletado que me gustaría: he > estado usando ipython y he visto cómo te autocompleta las _variables_ > que declaras anteriormente, cosa que me falta con el python mode y el > pycomplete. ¿Existe la posibilidad de autocompletar las variables que > hayan sido inicializadas tan sólo empleando la tecla TAB? Este tipo de autocompletado podría funcionar en la parte de "abajo" del emacs, pero era algo que daba bastantes problemas, como te dicen en esta web: http://www.emacswiki.org/cgi-bin/wiki/PythonMode Me temo que no se puede hacer mucho más en emacs sin ralentizar bastante la edición. Tienes otros editores capaces de autocompletar los nombres de variables (...y espero con ello no haber empezado una "guerra de religión"). _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From luis en luismedel.com Tue Jul 22 07:45:46 2008 From: luis en luismedel.com (=?UTF-8?Q?Luis_Medel_C=C3=A1ceres?=) Date: Tue, 22 Jul 2008 07:45:46 +0200 Subject: autocompletado emacs In-Reply-To: <2c9fb0dd0807211700o3e0574c7n9172e9f3b0ae426a@mail.gmail.com> References: <9685383c0807201622m20a14165m96c9f5db995cfe9e@mail.gmail.com> <2c9fb0dd0807211700o3e0574c7n9172e9f3b0ae426a@mail.gmail.com> Message-ID: 2008/7/22 Chema Cortes : > El día 21 de julio de 2008 1:22, Gonzalo Castro > escribió: >> Saludos!! >> Estoy empezando a usar emacs para programar en python y me gustaría >> tener autocompletado en emacs. Ahora mismo, tengo algo de >> autocomletado, de forma que con la tecla ESC + TAB (alt, no funciona) >> me autocompleta las funciones y alguna que otra cosilla más gracias a >> estas webs: >> >> http://wiki.python.org/moin/EmacsPythonCompletion >> http://timchen119.blogspot.com/2007/02/bash-like-tab-completion-in-emacs.html >> http://www.rwdev.eu/articles/emacspyeng (falta el pycomplete.el y no >> puedo hacerlo) >> >> El caso es que no tengo todo el autocompletado que me gustaría: he >> estado usando ipython y he visto cómo te autocompleta las _variables_ >> que declaras anteriormente, cosa que me falta con el python mode y el >> pycomplete. ¿Existe la posibilidad de autocompletar las variables que >> hayan sido inicializadas tan sólo empleando la tecla TAB? > > Este tipo de autocompletado podría funcionar en la parte de "abajo" > del emacs, pero era algo que daba bastantes problemas, como te dicen > en esta web: > > http://www.emacswiki.org/cgi-bin/wiki/PythonMode > > Me temo que no se puede hacer mucho más en emacs sin ralentizar > bastante la edición. Tienes otros editores capaces de autocompletar > los nombres de variables (...y espero con ello no haber empezado una > "guerra de religión"). Hola, Si os sirve de ayuda, desde hace algunos meses estoy utilizando OpenKomodo (http://www.openkomodo.com/) y la verdad es que estoy *muy* contento con este editor. El autocompletado es bastante bueno y, aunque un poco falto de extensiones todavía, promete. Un saludo. > _______________________________________________ > 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 camontuyu en yahoo.es Tue Jul 22 14:23:46 2008 From: camontuyu en yahoo.es (Beni) Date: Tue, 22 Jul 2008 14:23:46 +0200 Subject: =?utf-8?q?=5Bpygtk=5D_distintos_tipos_de_gr=C3=A1fic?= =?utf-8?q?as?= Message-ID: <8a19bc7c0807220523x5328dc8fkfbf4fe9cbd3f84da@mail.gmail.com> Hola... ¿existe la posibilidad de crear gráficas de diferentes tipos (barras, lineas, tartas,...) con pygtk y python? He visto que existe el objeto DrawingArea para dibujar cositas, pero muy a bajo nivel. ¿Qué librería, lo más sencilla posible, utilizarías para crear y gestionar gráficas en python? Un saludo y gracias. -- Benito Rodríguez Arcos ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From camontuyu en yahoo.es Tue Jul 22 14:27:54 2008 From: camontuyu en yahoo.es (Beni) Date: Tue, 22 Jul 2008 14:27:54 +0200 Subject: [pygtk] mostrar y ocultar un marco en el mismo contenedor Message-ID: <8a19bc7c0807220527i6c09d03apdd39fe799404804b@mail.gmail.com> Hola... ¿es posible poner dos marcos en el mismo contenedor para ocultar y mostrar uno de ellos cuando sea necesario? Estoy trabajando con glade y no me gustaría que crear objetos mediante código. Un saludo y gracias. -- Benito Rodríguez Arcos ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From inigo_aldazabal en ehu.es Tue Jul 22 15:09:17 2008 From: inigo_aldazabal en ehu.es (Inigo Aldazabal Mensa) Date: Tue, 22 Jul 2008 15:09:17 +0200 Subject: [pygtk] distintos tipos de =?iso-8859-15?q?gr=E1ficas?= In-Reply-To: <8a19bc7c0807220523x5328dc8fkfbf4fe9cbd3f84da@mail.gmail.com> References: <8a19bc7c0807220523x5328dc8fkfbf4fe9cbd3f84da@mail.gmail.com> Message-ID: <200807221509.18336.inigo_aldazabal@ehu.es> El Martes, 22 de Julio de 2008 14:23, Beni escribió: > Hola... > > ¿existe la posibilidad de crear gráficas de diferentes tipos (barras, > lineas, tartas,...) con pygtk y python? > > He visto que existe el objeto DrawingArea para dibujar cositas, pero muy > a bajo nivel. > DrawingArea es para dibujar dentro de ella, como con el gimp por ejemplo. Una opción muy sencilla es generar la imagen de otra forma y luego colocarla en un widget de imagen. Un documento bastante bueno sobre cómo hacer una aplicación sencilla que haga exactamente esto es "Introduction to GUI building with Glade"[1]. En concreto usa gnuplot para generar la imagen, pero es lo de menos. Para crear la imagen puedes utilizar el mismo gnuplot[2,3] o alguna de las librerías que se mencionaban hace pocos días en la lista, pyx[4], pyxplot[5], Pycha[6], que parece muy sencillo y con muy buena pinta, matplotlib[7], rrdtool[8], etc. En fin, dependiendo de qué tipo de gráficas necesites, busca el mas adecuado. Algunos, como el matplotlib, los puedes embeber directamente en la aplicación, en vez de generar imágenes externas, pero es mas complicado, claro. Un saludo [1] http://www-uxsup.csx.cam.ac.uk/courses/Glade/ [2] http://www.gnuplot.info/ [3] http://gnuplot-py.sourceforge.net/ [4] http://pyx.sourceforge.net/index [5] http://www.pyxplot.org.uk/ [6] http://www.lorenzogil.com/projects/pycha [7] http://matplotlib.sourceforge.net/ [8] http://oss.oetiker.ch/rrdtool/ ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From cdgarciaq en yahoo.com Tue Jul 22 17:55:41 2008 From: cdgarciaq en yahoo.com (Cesar Garcia) Date: Tue, 22 Jul 2008 10:55:41 -0500 Subject: =?iso-8859-1?q?utilizaci=F3n_de_TK_para_programa?= Message-ID: <488602FD.6060705@yahoo.com> Buen día !!! Hice este programa, con ayuda de la Lista, pero la impresión es muy pobre quisiera utilizar TK para que se vea mejor el resultado estoy esperando sugerencias Saludos Atte Cesar Garcia ahí va el Programa multiplicacion.py # Programa de Comprobación de Multiplicación from math import * def SumarDigitos(x): x = abs(int(x)) # Convertimos en Entero res = 0 while x != 0: x, mod = divmod(x, 10) res += mod return res if __name__ == '__main__': Multiplicando = int(raw_input(('Multiplicando : = '))) Multiplicador = int(raw_input (('Multiplicador : = ' ))) producto = Multiplicando*Multiplicador x = SumarDigitos(Multiplicando) y = SumarDigitos(Multiplicador) z = SumarDigitos(producto) x1 = SumarDigitos(x) y1 = SumarDigitos(y) z1 = SumarDigitos(z) '----------------Comprobacion Metodo Aspa ---------------' 'resultado del metodo aspa' r = x1*y1 print '----------------------------' print ' \ %d / ' % x print ' \ / ' print ' ? \/ %d' % (z) print ' /\ ' print ' / \ ' print ' / %d \ ' % y print '----------------------------' print ' Flato sumar !!!!!!!' print '----------------------------' print ' \ %d / ' % x1 print ' \ / ' print ' %d \/ %d' % ((r),SumarDigitos(z1)) print ' /\ ' print ' / \ ' print ' / %d \ ' % y1 print '----------------------------' print ' Flato sumar ohhhh !!!!!!!' print '----------------------------' print ' \ %d / ' % x1 print ' \ / ' print ' %d \/ %d' % (SumarDigitos(SumarDigitos(r)),SumarDigitos(z1)) print ' /\ ' print ' / \ ' print ' / %d \ ' % y1 print '----------------------------' print ' Que Bueno Termino !!!!!!!' print '----------------------------' print ' Danilo Garcia Julio 2008' _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jcaballero.hep en gmail.com Tue Jul 22 18:03:31 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Tue, 22 Jul 2008 12:03:31 -0400 Subject: =?ISO-8859-1?Q?Re:__utilizaci=F3n_de_TK_para_programa?= In-Reply-To: <488602FD.6060705@yahoo.com> References: <488602FD.6060705@yahoo.com> Message-ID: Repasa bien tu programa. Le faltan algunos print. No se deberían mandar ejemplos de código a la lista sin comprobarlos antes. Da una imagen muy poco profesional. 2008/7/22 Cesar Garcia : > Buen día !!! > Hice este programa, con ayuda de la Lista, pero la impresión es muy pobre > quisiera utilizar TK para que se vea mejor el resultado > estoy esperando sugerencias > Saludos > Atte > Cesar Garcia > ahí va el Programa > > > multiplicacion.py > > # Programa de Comprobación de Multiplicación > > from math import * > > def SumarDigitos(x): > x = abs(int(x)) # Convertimos en Entero > res = 0 > while x != 0: > x, mod = divmod(x, 10) > res += mod > return res > > > > if __name__ == '__main__': > Multiplicando = int(raw_input(('Multiplicando : = '))) > Multiplicador = int(raw_input (('Multiplicador : = ' ))) > producto = Multiplicando*Multiplicador > x = SumarDigitos(Multiplicando) > y = SumarDigitos(Multiplicador) > z = SumarDigitos(producto) > > x1 = SumarDigitos(x) > y1 = SumarDigitos(y) > z1 = SumarDigitos(z) > '----------------Comprobacion Metodo Aspa ---------------' > > 'resultado del metodo aspa' r = x1*y1 > print '----------------------------' > print ' \ %d / ' % x > print ' \ / ' > print ' ? \/ %d' % (z) > print ' /\ ' > print ' / \ ' > print ' / %d \ ' % y > print '----------------------------' > print ' Flato sumar !!!!!!!' > print '----------------------------' > print ' \ %d / ' % x1 > print ' \ / ' > print ' %d \/ %d' % ((r),SumarDigitos(z1)) > print ' /\ ' > print ' / \ ' > print ' / %d \ ' % y1 > print '----------------------------' > print ' Flato sumar ohhhh !!!!!!!' > print '----------------------------' > print ' \ %d / ' % x1 > print ' \ / ' > print ' %d \/ %d' % > (SumarDigitos(SumarDigitos(r)),SumarDigitos(z1)) > print ' /\ ' > print ' / \ ' > print ' / %d \ ' % y1 > print '----------------------------' > print ' Que Bueno Termino !!!!!!!' > print '----------------------------' > print ' Danilo Garcia Julio 2008' > > _______________________________________________ > 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 camontuyu en yahoo.es Tue Jul 22 18:05:10 2008 From: camontuyu en yahoo.es (Beni) Date: Tue, 22 Jul 2008 18:05:10 +0200 Subject: =?UTF-8?Q?Re:__[pygtk]_distintos_tipos_de_gr=C3=A1ficas?= In-Reply-To: <200807221509.18336.inigo_aldazabal@ehu.es> References: <8a19bc7c0807220523x5328dc8fkfbf4fe9cbd3f84da@mail.gmail.com> <200807221509.18336.inigo_aldazabal@ehu.es> Message-ID: <8a19bc7c0807220905g5434f841h70fbf356226e8d41@mail.gmail.com> 2008/7/22 Inigo Aldazabal Mensa : > DrawingArea es para dibujar dentro de ella, como con el gimp por ejemplo. > Una opción muy sencilla es generar la imagen de otra forma y luego > colocarla en un widget de imagen. > > Un documento bastante bueno sobre cómo hacer una aplicación sencilla que > haga exactamente esto es "Introduction to GUI building with Glade"[1]. En > concreto usa gnuplot para generar la imagen, pero es lo de menos. > > Para crear la imagen puedes utilizar el mismo gnuplot[2,3] o alguna de las > librerías que se mencionaban hace pocos días en la lista, pyx[4], > pyxplot[5], Pycha[6], que parece muy sencillo y con muy buena pinta, > matplotlib[7], rrdtool[8], etc. En fin, dependiendo de qué tipo de > gráficas necesites, busca el mas adecuado. > > Algunos, como el matplotlib, los puedes embeber directamente en la > aplicación, en vez de generar imágenes externas, pero es mas complicado, > claro. > > Un saludo > > [1] http://www-uxsup.csx.cam.ac.uk/courses/Glade/ > [2] http://www.gnuplot.info/ > [3] http://gnuplot-py.sourceforge.net/ > [4] http://pyx.sourceforge.net/index > [5] http://www.pyxplot.org.uk/ > [6] http://www.lorenzogil.com/projects/pycha > [7] http://matplotlib.sourceforge.net/ > [8] http://oss.oetiker.ch/rrdtool/ > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > Muchas gracias por tu esplicación; muy completa. Supongo que le echaré un vistazo a eso de generar las imágenes con una librería y mostrarlas mediante un widget image. Así pensando a bote pronto, ¿no existe una posibilidad de generar gráficos SVG y mostrarlos en gtk de forma sencilla?. De esta forma supongo que se podrá interactuar con el svg y hacer los gráficos dinámicos; de forma similar a lo que hace dojo con su librería gfx. ( http://archive.dojotoolkit.org/nightly/dojotoolkit/dojox/charting/tests/test_event2d.html ) Un saludo. -- Benito Rodríguez Arcos ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From imobachgs en gmail.com Tue Jul 22 18:44:00 2008 From: imobachgs en gmail.com (=?ISO-8859-1?Q?Imobach_Gonz=E1lez_Sosa?=) Date: Tue, 22 Jul 2008 17:44:00 +0100 Subject: =?ISO-8859-1?Q?Re:__utilizaci=F3n_de_TK_para_programa?= In-Reply-To: References: <488602FD.6060705@yahoo.com> Message-ID: <5f0cf48c0807220944q257c0337sb04a29b8e61fa77b@mail.gmail.com> El día 22 de julio de 2008 17:03, Jose Caballero escribió: > Repasa bien tu programa. Le faltan algunos print. > No se deberían mandar ejemplos de código a la lista sin comprobarlos antes. > Da una imagen muy poco profesional. Bueno, imagino que será un simple despiste: cosas que pasan. Por cierto, ¿esta es una lista sólo para "profesionales"? Sin acritud. Un saludo. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From camontuyu en yahoo.es Tue Jul 22 18:47:46 2008 From: camontuyu en yahoo.es (Beni) Date: Tue, 22 Jul 2008 18:47:46 +0200 Subject: =?utf-8?q?Otra_vez_la_herencia_m=C3=BAltiple?= Message-ID: <8a19bc7c0807220947t3b9c720ehabd73328851940ed@mail.gmail.com> Tengo este código de ejemplo: class A(object): def __init__(self, nombre): print nombre class B(object): def __init__(self, nombre, apellidos): print nombre, apellidos class C(A, B): def __init__(self): super(C, self).__init__("hola") class D(B, A): def __init__(self): super(D, self).__init__("hola", "adios") print "C (A, B) - A(nombre) - B(nombre, apellidos) >", c = C() print "D (B, A) - A(nombre) - B(nombre, apellidos) >", d = D() Devuelve: C (A, B) - A(nombre) - B(nombre, apellidos) > hola D (B, A) - A(nombre) - B(nombre, apellidos) > hola adios A parte de que, parece que sobreescribe los métodos por el orden de la definción de la clase: - C(A, B) usa el init de A - D(B, A) usa el init de B ¿Como puedo llamar a ambos métodos init desde la clase hija con los parámetros que guste? Debo hacer class C(A, B): def __init__(): A.__init__(self, "hola") B.__init__(self, "hola", "adios") Si es así, ¿para que sirve el super?. No le veo utilidad (en el nivel de conocimiento que tengo de python) Saludo y gracias. -- Benito Rodríguez Arcos ------------ próxima parte ------------ _______________________________________________ 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 Tue Jul 22 19:52:36 2008 From: gonzalo.castro.castilla en gmail.com (Gonzalo Castro) Date: Tue, 22 Jul 2008 19:52:36 +0200 Subject: autocompletado emacs Message-ID: <9685383c0807221052x1ecc0d5ydf3c5b9e8abccdfb@mail.gmail.com> Conseguido! En realidad no hay que hacer nada. Emacs solito ya tiene el autocompletado! Sólo que es una combinación "incómoda" M-/ . Para poner algo más cómodo, podemos escribir esto en el .emacs (global-set-key [(C-tab)] 'dabbrev-expand) y usar C-tabulador para el autocompletado tanto de variables como de funciones. En fin, que donde esté emacs... _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From jcaballero.hep en gmail.com Tue Jul 22 20:07:14 2008 From: jcaballero.hep en gmail.com (Jose Caballero) Date: Tue, 22 Jul 2008 14:07:14 -0400 Subject: =?ISO-8859-1?Q?Re:__utilizaci=F3n_de_TK_para_programa?= In-Reply-To: <5f0cf48c0807220944q257c0337sb04a29b8e61fa77b@mail.gmail.com> References: <488602FD.6060705@yahoo.com> <5f0cf48c0807220944q257c0337sb04a29b8e61fa77b@mail.gmail.com> Message-ID: Pues supongo que no. Si todos fuéramos profesionales esta lista no tendría razón de ser. Pero yo diría que es una lista para gente que quiere llegar a ser profesional. Esa es mi opinión. Y la profesionalidad empieza por la actitud: escribiendo los mensajes en perfecto español, sin las faltas de ortografía y las aberraciones gramaticales que tenemos que soportar tan frecuentemente; comprobando los códigos antes de mandarlos a la lista; buscando un poquito en google antes de preguntar; y demostrar que se tienen de verdad ganas de aprender y no usar la lista sólo para que te hagan las prácticas de clase. Y, por supuesto, nadie está libre de cometer errores. Errare humanum est. Que para eso estamos (algunos) aquí, para aprender. Saludos. Jose El día 22 de julio de 2008 12:44, Imobach González Sosa escribió: > El día 22 de julio de 2008 17:03, Jose Caballero > escribió: > > Repasa bien tu programa. Le faltan algunos print. > > No se deberían mandar ejemplos de código a la lista sin comprobarlos > antes. > > Da una imagen muy poco profesional. > > Bueno, imagino que será un simple despiste: cosas que pasan. Por > cierto, ¿esta es una lista sólo para "profesionales"? > > Sin acritud. > > Un saludo. > _______________________________________________ > 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 alexis.roda.villalonga en gmail.com Tue Jul 22 20:32:40 2008 From: alexis.roda.villalonga en gmail.com (Alexis Roda) Date: Tue, 22 Jul 2008 20:32:40 +0200 Subject: Otra vez la herencia =?ISO-8859-1?Q?m=FAltiple?= In-Reply-To: <8a19bc7c0807220947t3b9c720ehabd73328851940ed@mail.gmail.com> References: <8a19bc7c0807220947t3b9c720ehabd73328851940ed@mail.gmail.com> Message-ID: <488627C8.9020205@gmail.com> En/na Beni ha escrit: > Tengo este código de ejemplo: Lo que intentas hacer me parece un tanto extraño. Entiendo que esperas que el __init__ de D llame automáticamente al __init__ de B y A, pero la signatura de estos métodos es distinta! > A parte de que, parece que sobreescribe los métodos por el orden de la > definción de la clase: > > - C(A, B) usa el init de A > - D(B, A) usa el init de B > > ¿Como puedo llamar a ambos métodos init desde la clase hija con los > parámetros que guste? Te faltan sendas llamadas a super(A, self) y super(B, self) en el método __init__ de las clases A y B respectivamente. Para ampliar detalles puedes consultar: http://www.python.org/download/releases/2.2.3/descrintro/#cooperation Saludos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From vimes656 en gmail.com Tue Jul 22 21:52:08 2008 From: vimes656 en gmail.com (Danny Navarro) Date: Tue, 22 Jul 2008 21:52:08 +0200 Subject: =?ISO-8859-1?Q?Re:__Otra_vez_la_herencia_m=FAltiple?= In-Reply-To: <8a19bc7c0807220947t3b9c720ehabd73328851940ed@mail.gmail.com> References: <8a19bc7c0807220947t3b9c720ehabd73328851940ed@mail.gmail.com> Message-ID: <3BCEC6F3-AE52-481F-9F4B-728DFBAAB053@gmail.com> Hola Benito, Este link explica de manera muy fácil cuál es el sentido de usar super() http://www.cafepy.com/article/python_attributes_and_methods/python_attributes_and_methods.html#id837781 Básicamente super() distingue qué método escoger cuando hay una colisión de nombres en dos superclases. El método que super() escoge depende del __mro__ de la clase desde donde se usa super(). El orden de precedencia viene explicado en el documento. De todas formas es un poco peligroso andar con herencia múltiple, si tienes alternativas razonables trataría de evitarla. -- Danny Navarro http://twitter.com/vimes656 On 22 Jul 2008, at 18:47, Beni wrote: > Tengo este código de ejemplo: > > class A(object): > def __init__(self, nombre): > print nombre > > class B(object): > def __init__(self, nombre, apellidos): > print nombre, apellidos > > class C(A, B): > def __init__(self): > super(C, self).__init__("hola") > > class D(B, A): > def __init__(self): > super(D, self).__init__("hola", "adios") > > print "C (A, B) - A(nombre) - B(nombre, apellidos) >", > c = C() > > print "D (B, A) - A(nombre) - B(nombre, apellidos) >", > d = D() > > Devuelve: > > C (A, B) - A(nombre) - B(nombre, apellidos) > hola > D (B, A) - A(nombre) - B(nombre, apellidos) > hola adios > > A parte de que, parece que sobreescribe los métodos por el orden de la > definción de la clase: > > - C(A, B) usa el init de A > - D(B, A) usa el init de B > > ¿Como puedo llamar a ambos métodos init desde la clase hija con los > parámetros que guste? Debo hacer > > class C(A, B): > def __init__(): > A.__init__(self, "hola") > B.__init__(self, "hola", "adios") > > Si es así, ¿para que sirve el super?. No le veo utilidad (en el > nivel de > conocimiento que tengo de python) > > Saludo y gracias. > > -- > Benito Rodríguez Arcos > _______________________________________________ > 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 mayragm en finlay.cmw.sld.cu Tue Jul 22 10:41:26 2008 From: mayragm en finlay.cmw.sld.cu (=?UTF-8?Q?Mayra_Gonz=C3=A1lez_Morales?=) Date: Tue, 22 Jul 2008 03:41:26 -0500 Subject: autocompletado emacs References: <9685383c0807201622m20a14165m96c9f5db995cfe9e@mail.gmail.com><2c9fb0dd0807211700o3e0574c7n9172e9f3b0ae426a@mail.gmail.com> Message-ID: <002101c8ebd7$1444fa60$cbd3dcc9@jorge> Yo hace unos días estuve escribiendo algún que otro script de Python y realmente lo que mejor me sirvió para trabajar fue el eclipse + pydev, corriendo sobre un S.O GNU/Linux Debian 4.0, me fue muy bien aunque reconozco que el Eclipse demanda bastante recursos para correr, en mi caso poseo 512MB de RAM que aunque no es demasiado siempre y cuando no cargara demasiadas aplicaciones me permitía programar de lo mejor. slds ----- Original Message ----- From: "Luis Medel Cáceres" To: "Lista de discusión sobre python en castellano" Sent: Tuesday, July 22, 2008 12:45 AM Subject: Re: [Python-es] autocompletado emacs > 2008/7/22 Chema Cortes : >> El día 21 de julio de 2008 1:22, Gonzalo Castro >> escribió: >>> Saludos!! >>> Estoy empezando a usar emacs para programar en python y me gustaría >>> tener autocompletado en emacs. Ahora mismo, tengo algo de >>> autocomletado, de forma que con la tecla ESC + TAB (alt, no funciona) >>> me autocompleta las funciones y alguna que otra cosilla más gracias a >>> estas webs: >>> >>> http://wiki.python.org/moin/EmacsPythonCompletion >>> http://timchen119.blogspot.com/2007/02/bash-like-tab-completion-in-emacs.html >>> http://www.rwdev.eu/articles/emacspyeng (falta el pycomplete.el y no >>> puedo hacerlo) >>> >>> El caso es que no tengo todo el autocompletado que me gustaría: he >>> estado usando ipython y he visto cómo te autocompleta las _variables_ >>> que declaras anteriormente, cosa que me falta con el python mode y el >>> pycomplete. ¿Existe la posibilidad de autocompletar las variables que >>> hayan sido inicializadas tan sólo empleando la tecla TAB? >> >> Este tipo de autocompletado podría funcionar en la parte de "abajo" >> del emacs, pero era algo que daba bastantes problemas, como te dicen >> en esta web: >> >> http://www.emacswiki.org/cgi-bin/wiki/PythonMode >> >> Me temo que no se puede hacer mucho más en emacs sin ralentizar >> bastante la edición. Tienes otros editores capaces de autocompletar >> los nombres de variables (...y espero con ello no haber empezado una >> "guerra de religión"). > > Hola, > > Si os sirve de ayuda, desde hace algunos meses estoy utilizando > OpenKomodo (http://www.openkomodo.com/) y la verdad es que estoy *muy* > contento con este editor. El autocompletado es bastante bueno y, > aunque un poco falto de extensiones todavía, promete. > > Un saludo. > > >> _______________________________________________ >> Lista de correo Python-es >> http://listas.aditel.org/listinfo/python-es >> FAQ: http://listas.aditel.org/faqpyes >> > > -- > Este mensaje ha sido analizado por MailScanner del Nodo Finlay, Camaguey, > Cuba > en busca de virus y se considera que est limpio. > > -------------------------------------------------------------------------------- _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes -- Este mensaje ha sido analizado por MailScanner del Nodo Finlay, Camaguey, Cuba en busca de virus y se considera que está limpio. ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From vima_roma en wanadoo.es Tue Jul 22 22:08:16 2008 From: vima_roma en wanadoo.es (vima_roma en wanadoo.es) Date: Tue, 22 Jul 2008 20:08:16 +0000 Subject: =?Windows-1252?B?UmU6IFtQeXRob24tZXNdIE90cmEgdmV6IGxhIGhlcmVuY2lhIG36bHRpcGxl?= In-Reply-To: <3BCEC6F3-AE52-481F-9F4B-728DFBAAB053@gmail.com> References: <8a19bc7c0807220947t3b9c720ehabd73328851940ed@mail.gmail.com><3BCEC6F3-AE52-481F-9F4B-728DFBAAB053@gmail.com> Message-ID: <186490786-1216757347-cardhu_decombobulator_blackberry.rim.net-1025045394-@bxe048.bisx.produk.on.blackberry> BlackBerry de movistar, allí donde estés está tu oficin@ -----Original Message----- From: Danny Navarro Date: Tue, 22 Jul 2008 21:52:08 To: Lista de discusión sobre python en castellano; Beni Subject: Re: [Python-es] Otra vez la herencia múltiple Hola Benito, Este link explica de manera muy fácil cuál es el sentido de usar super() http://www.cafepy.com/article/python_attributes_and_methods/python_attributes_and_methods.html#id837781 Básicamente super() distingue qué método escoger cuando hay una colisión de nombres en dos superclases. El método que super() escoge depende del__mro__ de la clase desde donde se usa super(). El orden de precedencia viene explicado en el documento. De todas formas es un poco peligroso andar con herencia múltiple, si tienes alternativas razonables trataría de evitarla. -- Danny Navarro http://twitter.com/vimes656 On 22 Jul 2008, at 18:47, Beni wrote: > Tengo este código de ejemplo: > > class A(object): > def__init__(self, nombre): > print nombre > > class B(object): > def__init__(self, nombre, apellidos): > print nombre, apellidos > > class C(A, B): > def__init__(self): > super(C, self).__init__("hola") > > class D(B, A): > def__init__(self): > super(D, self).__init__("hola", "adios") > > print "C (A, B) - A(nombre) - B(nombre, apellidos) >", > c = C() > > print "D (B, A) - A(nombre) - B(nombre, apellidos) >", > d = D() > > Devuelve: > > C (A, B) - A(nombre) - B(nombre, apellidos) > hola > D (B, A) - A(nombre) - B(nombre, apellidos) > hola adios > > A parte de que, parece que sobreescribe los métodos por el orden de la > definción de la clase: > > - C(A, B) usa el init de A > - D(B, A) usa el init de B > > ¿Como puedo llamar a ambos métodos init desde la clase hija con los > parámetros que guste? Debo hacer > > class C(A, B): > def__init__(): > A.__init__(self, "hola") > B.__init__(self, "hola", "adios") > > Si es así, ¿para que sirve el super?. No le veo utilidad (en el > nivel de > conocimiento que tengo de python) > > Saludo y gracias. > > -- > Benito Rodríguez Arcos >_______________________________________________ > 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 vima_roma en wanadoo.es Tue Jul 22 22:09:41 2008 From: vima_roma en wanadoo.es (vima_roma en wanadoo.es) Date: Tue, 22 Jul 2008 20:09:41 +0000 Subject: =?Windows-1252?B?UmU6IFtQeXRob24tZXNdIE90cmEgdmV6IGxhIGhlcmVuY2lhIG36bHRpcGxl?= In-Reply-To: <3BCEC6F3-AE52-481F-9F4B-728DFBAAB053@gmail.com> References: <8a19bc7c0807220947t3b9c720ehabd73328851940ed@mail.gmail.com><3BCEC6F3-AE52-481F-9F4B-728DFBAAB053@gmail.com> Message-ID: <678134758-1216757431-cardhu_decombobulator_blackberry.rim.net-800845693-@bxe048.bisx.produk.on.blackberry> BlackBerry de movistar, allí donde estés está tu oficin@ -----Original Message----- From: Danny Navarro Date: Tue, 22 Jul 2008 21:52:08 To: Lista de discusión sobre python en castellano; Beni Subject: Re: [Python-es] Otra vez la herencia múltiple Hola Benito, Este link explica de manera muy fácil cuál es el sentido de usar super() http://www.cafepy.com/article/python_attributes_and_methods/python_attributes_and_methods.html#id837781 Básicamente super() distingue qué método escoger cuando hay una colisión de nombres en dos superclases. El método que super() escoge depende del__mro__ de la clase desde donde se usa super(). El orden de precedencia viene explicado en el documento. De todas formas es un poco peligroso andar con herencia múltiple, si tienes alternativas razonables trataría de evitarla. -- Danny Navarro http://twitter.com/vimes656 On 22 Jul 2008, at 18:47, Beni wrote: > Tengo este código de ejemplo: > > class A(object): > def__init__(self, nombre): > print nombre > > class B(object): > def__init__(self, nombre, apellidos): > print nombre, apellidos > > class C(A, B): > def__init__(self): > super(C, self).__init__("hola") > > class D(B, A): > def__init__(self): > super(D, self).__init__("hola", "adios") > > print "C (A, B) - A(nombre) - B(nombre, apellidos) >", > c = C() > > print "D (B, A) - A(nombre) - B(nombre, apellidos) >", > d = D() > > Devuelve: > > C (A, B) - A(nombre) - B(nombre, apellidos) > hola > D (B, A) - A(nombre) - B(nombre, apellidos) > hola adios > > A parte de que, parece que sobreescribe los métodos por el orden de la > definción de la clase: > > - C(A, B) usa el init de A > - D(B, A) usa el init de B > > ¿Como puedo llamar a ambos métodos init desde la clase hija con los > parámetros que guste? Debo hacer > > class C(A, B): > def__init__(): > A.__init__(self, "hola") > B.__init__(self, "hola", "adios") > > Si es así, ¿para que sirve el super?. No le veo utilidad (en el > nivel de > conocimiento que tengo de python) > > Saludo y gracias. > > -- > Benito Rodríguez Arcos >_______________________________________________ > 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 riverplatense en gmail.com Wed Jul 23 01:06:21 2008 From: riverplatense en gmail.com (Javier Castrillo) Date: Tue, 22 Jul 2008 20:06:21 -0300 Subject: autocompletado emacs In-Reply-To: <002101c8ebd7$1444fa60$cbd3dcc9@jorge> References: <9685383c0807201622m20a14165m96c9f5db995cfe9e@mail.gmail.com> <2c9fb0dd0807211700o3e0574c7n9172e9f3b0ae426a@mail.gmail.com> <002101c8ebd7$1444fa60$cbd3dcc9@jorge> Message-ID: 2008/7/22 Mayra González Morales : > Yo hace unos días estuve escribiendo algún que otro script de Python y > realmente lo que mejor me sirvió para trabajar fue el eclipse + pydev, > corriendo sobre un S.O GNU/Linux Debian 4.0, me fue muy bien aunque > reconozco que el Eclipse demanda bastante recursos para correr, en mi caso > poseo 512MB de RAM que aunque no es demasiado siempre y cuando no cargara > demasiadas aplicaciones me permitía programar de lo mejor. Editor de Python + Debian + liviano + autocompletado = Scribes text editor Saludos -- Javier Castrillo ========================================================= GNU / Linux User #242275 Jabber: riverplatense en jabberes.org Blog: http://javiercastrillo.wordpress.com Site: http://carapa.com.ar River: http://siguiendoariver.blogspot.com ========================================================= Usá Software Libre _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From cristhianboujon en gmail.com Wed Jul 23 10:03:01 2008 From: cristhianboujon en gmail.com (Cristhian Boujon) Date: Wed, 23 Jul 2008 05:03:01 -0300 Subject: Fecha en python Message-ID: Necesito que el programa me muestre la fecha en el siguiente formato: 'Miercoles 23 de Julio del 2008' sé que puedo hacer strftime('%A --- de %B del %Y', time.localtime()) no se como hacer para que me aparezca el numero del mes correspondiente al dia. No me interesa que apareza el dia y el mes en ingles. Saludos -- 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 inigo_aldazabal en ehu.es Wed Jul 23 10:27:57 2008 From: inigo_aldazabal en ehu.es (Inigo Aldazabal Mensa) Date: Wed, 23 Jul 2008 10:27:57 +0200 Subject: [pygtk] distintos tipos de =?iso-8859-15?q?gr=E1ficas?= In-Reply-To: <8a19bc7c0807220905g5434f841h70fbf356226e8d41@mail.gmail.com> References: <8a19bc7c0807220523x5328dc8fkfbf4fe9cbd3f84da@mail.gmail.com> <200807221509.18336.inigo_aldazabal@ehu.es> <8a19bc7c0807220905g5434f841h70fbf356226e8d41@mail.gmail.com> Message-ID: <200807231027.58074.inigo_aldazabal@ehu.es> El Martes, 22 de Julio de 2008 18:05, Beni escribió: > 2008/7/22 Inigo Aldazabal Mensa : > > DrawingArea es para dibujar dentro de ella, como con el gimp por > > ejemplo. Una opción muy sencilla es generar la imagen de otra forma y > > luego colocarla en un widget de imagen. > > > > Un documento bastante bueno sobre cómo hacer una aplicación sencilla > > que haga exactamente esto es "Introduction to GUI building with > > Glade"[1]. En concreto usa gnuplot para generar la imagen, pero es lo > > de menos. > > > > Para crear la imagen puedes utilizar el mismo gnuplot[2,3] o alguna de > > las librerías que se mencionaban hace pocos días en la lista, pyx[4], > > pyxplot[5], Pycha[6], que parece muy sencillo y con muy buena pinta, > > matplotlib[7], rrdtool[8], etc. En fin, dependiendo de qué tipo de > > gráficas necesites, busca el mas adecuado. > > > > Algunos, como el matplotlib, los puedes embeber directamente en la > > aplicación, en vez de generar imágenes externas, pero es mas > > complicado, claro. > > > > Un saludo > > > > [1] http://www-uxsup.csx.cam.ac.uk/courses/Glade/ > > [2] http://www.gnuplot.info/ > > [3] http://gnuplot-py.sourceforge.net/ > > [4] http://pyx.sourceforge.net/index > > [5] http://www.pyxplot.org.uk/ > > [6] http://www.lorenzogil.com/projects/pycha > > [7] http://matplotlib.sourceforge.net/ > > [8] http://oss.oetiker.ch/rrdtool/ > > > > _______________________________________________ > > Lista de correo Python-es > > http://listas.aditel.org/listinfo/python-es > > FAQ: http://listas.aditel.org/faqpyes > > Muchas gracias por tu esplicación; muy completa. Supongo que le echaré > un vistazo a eso de generar las imágenes con una librería y mostrarlas > mediante un widget image. > > Así pensando a bote pronto, ¿no existe una posibilidad de generar > gráficos SVG y mostrarlos en gtk de forma sencilla?. De esta forma > supongo que se podrá interactuar con el svg y hacer los gráficos > dinámicos; de forma similar a lo que hace dojo con su librería gfx. ( > http://archive.dojotoolkit.org/nightly/dojotoolkit/dojox/charting/tests/ >test_event2d.html ) Parece un poco complicado ¿no?. Generar una imagen o mostrarla, incluso hacer una animación no es especialmente difícil, pero ya interaccionar con la imagen sí me parece más. Tienes un ejemplo de algo parecido, pero no para svg, en el manual de pygtk[1]. Si quieres que sea svg, ¿quieres hacer un editor de svg simple o algo así?, sería mas complicado porque tendrías que seleccionar el tipo de objeto, los puntos de control, etc... Para solo mostrar un svg ya creado parece que no hay problema[2]. Si quieres dibujar svg puedes usar cairo[3]. Aquí [4] un tutorial para pygtk. [1]http://www.pygtk.org/pygtk2tutorial/ch-Scribble.html [2]http://faq.pygtk.org/index.py?req=show&file=faq08.010.htp [3]http://www.cairographics.org/ [4]http://www.tortall.net/mu/wiki/PyGTKCairoTutorial ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From the.blue.valkyrie en gmail.com Wed Jul 23 11:49:35 2008 From: the.blue.valkyrie en gmail.com (=?ISO-8859-1?Q?Cristina_Yenyxe_Gonz=E1lez_Garc=EDa?=) Date: Wed, 23 Jul 2008 11:49:35 +0200 Subject: Fecha en python In-Reply-To: References: Message-ID: Hola: Para que te aparezca el valor numérico del mes utiliza %m, y para el día, %d. Si no, para tratar fechas también puedes utilizar la clase datetime: http://docs.python.org/lib/datetime-datetime.html Un saludo. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From camontuyu en yahoo.es Wed Jul 23 12:28:34 2008 From: camontuyu en yahoo.es (Beni) Date: Wed, 23 Jul 2008 12:28:34 +0200 Subject: =?UTF-8?Q?Re:__[pygtk]_distintos_tipos_de_gr=C3=A1ficas?= In-Reply-To: <200807231027.58074.inigo_aldazabal@ehu.es> References: <8a19bc7c0807220523x5328dc8fkfbf4fe9cbd3f84da@mail.gmail.com> <200807221509.18336.inigo_aldazabal@ehu.es> <8a19bc7c0807220905g5434f841h70fbf356226e8d41@mail.gmail.com> <200807231027.58074.inigo_aldazabal@ehu.es> Message-ID: <8a19bc7c0807230328y1cbe2f77n90a19662b65b6840@mail.gmail.com> 2008/7/23 Inigo Aldazabal Mensa : > El Martes, 22 de Julio de 2008 18:05, Beni escribió: > > 2008/7/22 Inigo Aldazabal Mensa : > > > DrawingArea es para dibujar dentro de ella, como con el gimp por > > > ejemplo. Una opción muy sencilla es generar la imagen de otra forma y > > > luego colocarla en un widget de imagen. > > > > > > Un documento bastante bueno sobre cómo hacer una aplicación sencilla > > > que haga exactamente esto es "Introduction to GUI building with > > > Glade"[1]. En concreto usa gnuplot para generar la imagen, pero es lo > > > de menos. > > > > > > Para crear la imagen puedes utilizar el mismo gnuplot[2,3] o alguna de > > > las librerías que se mencionaban hace pocos días en la lista, pyx[4], > > > pyxplot[5], Pycha[6], que parece muy sencillo y con muy buena pinta, > > > matplotlib[7], rrdtool[8], etc. En fin, dependiendo de qué tipo de > > > gráficas necesites, busca el mas adecuado. > > > > > > Algunos, como el matplotlib, los puedes embeber directamente en la > > > aplicación, en vez de generar imágenes externas, pero es mas > > > complicado, claro. > > > > > > Un saludo > > > > > > [1] http://www-uxsup.csx.cam.ac.uk/courses/Glade/ > > > [2] http://www.gnuplot.info/ > > > [3] http://gnuplot-py.sourceforge.net/ > > > [4] http://pyx.sourceforge.net/index > > > [5] http://www.pyxplot.org.uk/ > > > [6] http://www.lorenzogil.com/projects/pycha > > > [7] http://matplotlib.sourceforge.net/ > > > [8] http://oss.oetiker.ch/rrdtool/ > > > > Muy bueno Inigo. Gracias por todos esos enlaces. Básicamente lo que quiero es poder hacer graficas e interacturar con ellas. Por ejemplo seleccionar un pico de una función y que realice ciertos calculos. Lo del svg lo sugerí por que vi este comportamiento con la librería dojo que renderiza a svg y queda bastante impresionante. Pero viendo la documentación que me has dado y más concretamente el mathplotlib, parece que puedes interactuar con los gráficos que generas. Que es el comportamiento que búscaba. Así que muchas gracias seguiré echandole un vistazo a todo esto. Saludos -- Benito Rodríguez Arcos ------------ próxima parte ------------ _______________________________________________ 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 Jul 23 13:09:09 2008 From: inigo_aldazabal en ehu.es (Inigo Aldazabal Mensa) Date: Wed, 23 Jul 2008 13:09:09 +0200 Subject: [pygtk] distintos tipos de =?iso-8859-15?q?gr=E1ficas?= In-Reply-To: <8a19bc7c0807230328y1cbe2f77n90a19662b65b6840@mail.gmail.com> References: <8a19bc7c0807220523x5328dc8fkfbf4fe9cbd3f84da@mail.gmail.com> <200807231027.58074.inigo_aldazabal@ehu.es> <8a19bc7c0807230328y1cbe2f77n90a19662b65b6840@mail.gmail.com> Message-ID: <200807231309.09554.inigo_aldazabal@ehu.es> El Miércoles, 23 de Julio de 2008 12:28, Beni escribió: > 2008/7/23 Inigo Aldazabal Mensa : > > El Martes, 22 de Julio de 2008 18:05, Beni escribió: > > > 2008/7/22 Inigo Aldazabal Mensa : > > > > DrawingArea es para dibujar dentro de ella, como con el gimp por > > > > ejemplo. Una opción muy sencilla es generar la imagen de otra > > > > forma y luego colocarla en un widget de imagen. > > > > > > > > Un documento bastante bueno sobre cómo hacer una aplicación > > > > sencilla que haga exactamente esto es "Introduction to GUI > > > > building with Glade"[1]. En concreto usa gnuplot para generar la > > > > imagen, pero es lo de menos. > > > > > > > > Para crear la imagen puedes utilizar el mismo gnuplot[2,3] o > > > > alguna de las librerías que se mencionaban hace pocos días en la > > > > lista, pyx[4], pyxplot[5], Pycha[6], que parece muy sencillo y con > > > > muy buena pinta, matplotlib[7], rrdtool[8], etc. En fin, > > > > dependiendo de qué tipo de gráficas necesites, busca el mas > > > > adecuado. > > > > > > > > Algunos, como el matplotlib, los puedes embeber directamente en la > > > > aplicación, en vez de generar imágenes externas, pero es mas > > > > complicado, claro. > > > > > > > > Un saludo > > > > > > > > [1] http://www-uxsup.csx.cam.ac.uk/courses/Glade/ > > > > [2] http://www.gnuplot.info/ > > > > [3] http://gnuplot-py.sourceforge.net/ > > > > [4] http://pyx.sourceforge.net/index > > > > [5] http://www.pyxplot.org.uk/ > > > > [6] http://www.lorenzogil.com/projects/pycha > > > > [7] http://matplotlib.sourceforge.net/ > > > > [8] http://oss.oetiker.ch/rrdtool/ > > Muy bueno Inigo. Gracias por todos esos enlaces. > > Básicamente lo que quiero es poder hacer graficas e interacturar con > ellas. Por ejemplo seleccionar un pico de una función y que realice > ciertos calculos. Lo del svg lo sugerí por que vi este comportamiento > con la librería dojo que renderiza a svg y queda bastante impresionante. > > Pero viendo la documentación que me has dado y más concretamente el > mathplotlib, parece que puedes interactuar con los gráficos que generas. > Que es el comportamiento que búscaba. Así que muchas gracias seguiré > echandole un vistazo a todo esto. Con matplotlib sí interaccionas, en el sentido que el gui que tiene el propio sistema lo embebes en tu aplicación, y puedes usar también la barra de herramientas que tiene, sin hacer nada. De esa forma puedes obtener coordenadas de un cierto punto, ampliar una cierta parte de la gráfica, mover los ejes y cosas así de forma "automágica". Yo por ejemplo hice una aplicación de postprocesado que realizaba una animación de unos resultados y podías pararla pinchando en la ventana de la gráfica, hacer zoom, guardar la imagen (con la propia barra de matplotlib, claro), etc. Lo de la animación fue un poco lío sobre todo en los detalles, pero si tu gráfica es estática esta tirado. A mi me fue muy bien para empezar este tutorial[1]. También creo que algo había en los ejemplos de matplotlib. http://www.serpia.org/blog/2007/nov/03/matplotlib-and-pygtk-app/ Un saludo. ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From camontuyu en yahoo.es Wed Jul 23 13:57:02 2008 From: camontuyu en yahoo.es (Beni) Date: Wed, 23 Jul 2008 13:57:02 +0200 Subject: =?UTF-8?Q?Re:__Otra_vez_la_herencia_m=C3=BAltiple?= In-Reply-To: <678134758-1216757431-cardhu_decombobulator_blackberry.rim.net-800845693-@bxe048.bisx.produk.on.blackberry> References: <8a19bc7c0807220947t3b9c720ehabd73328851940ed@mail.gmail.com> <3BCEC6F3-AE52-481F-9F4B-728DFBAAB053@gmail.com> <678134758-1216757431-cardhu_decombobulator_blackberry.rim.net-800845693-@bxe048.bisx.produk.on.blackberry> Message-ID: <8a19bc7c0807230457o21e552b3ja51e56af348db7c5@mail.gmail.com> Leyendo lo que me habeis pasado y pensando un poco... supongo que como parece que funciona python, la signatura de los métodos tiene que ser igual. Pero no veo el por que no tener constructores con distintos tipos de parámetros. Java los usa continuamente. Es más, son objetos distintos que tienen sus propias propiedades y métodos. Y si heredo de ellos necesitaré algún método para poder llamarlos con los parámetros que yo crea necesarios en el hijo. Si no me equivoco (no domino mucho el inglés) parece que super te devuelve el tipo de una clase para llamar al método. Este tipo pude ser A, B, C dependiendo de la definición de la misma. Por tanto, como comentaba Alexis, deben tener la misma signatura. Por tanto para llamar a cada constructor necesitaré hacerlo de la forma antes comentada. class C(A, B): def __init__(): A.__init__(self, "hola") B.__init__(self, "hola", "adios") ¿Sería correcto? Un saludo y gracias. 2008/7/22 : > > BlackBerry de movistar, allí donde estés está tu oficin@ > > -----Original Message----- > From: Danny Navarro > > Date: Tue, 22 Jul 2008 21:52:08 > To: Lista de discusión sobre python en castellano; > Beni > Subject: Re: [Python-es] Otra vez la herencia múltiple > > > Hola Benito, > > Este link explica de manera muy fácil cuál es el sentido de usar super() > > http://www.cafepy.com/article/python_attributes_and_methods/python_attributes_and_methods.html#id837781 > > Básicamente super() distingue qué método escoger cuando hay una > colisión de nombres en dos superclases. El método que super() escoge > depende del__mro__ de la clase desde donde se usa super(). El orden > de precedencia viene explicado en el documento. > > De todas formas es un poco peligroso andar con herencia múltiple, si > tienes alternativas razonables trataría de evitarla. > > -- > Danny Navarro > http://twitter.com/vimes656 > > On 22 Jul 2008, at 18:47, Beni wrote: > > > Tengo este código de ejemplo: > > > > class A(object): > > def__init__(self, nombre): > > print nombre > > > > class B(object): > > def__init__(self, nombre, apellidos): > > print nombre, apellidos > > > > class C(A, B): > > def__init__(self): > > super(C, self).__init__("hola") > > > > class D(B, A): > > def__init__(self): > > super(D, self).__init__("hola", "adios") > > > > print "C (A, B) - A(nombre) - B(nombre, apellidos) >", > > c = C() > > > > print "D (B, A) - A(nombre) - B(nombre, apellidos) >", > > d = D() > > > > Devuelve: > > > > C (A, B) - A(nombre) - B(nombre, apellidos) > hola > > D (B, A) - A(nombre) - B(nombre, apellidos) > hola adios > > > > A parte de que, parece que sobreescribe los métodos por el orden de la > > definción de la clase: > > > > - C(A, B) usa el init de A > > - D(B, A) usa el init de B > > > > ¿Como puedo llamar a ambos métodos init desde la clase hija con los > > parámetros que guste? Debo hacer > > > > class C(A, B): > > def__init__(): > > A.__init__(self, "hola") > > B.__init__(self, "hola", "adios") > > > > Si es así, ¿para que sirve el super?. No le veo utilidad (en el > > nivel de > > conocimiento que tengo de python) > > > > Saludo y gracias. > > > > -- > > Benito Rodríguez Arcos > >_______________________________________________ > > 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 > -- Benito Rodríguez Arcos ------------ 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 Wed Jul 23 17:25:01 2008 From: antonio.beamud en gmail.com (Antonio Beamud Montero) Date: Wed, 23 Jul 2008 17:25:01 +0200 Subject: Indexador de disco Message-ID: <1216826701.7347.114.camel@soberbia.copypastesi.es> Alguien tiene experiencia con algún indexador/cache de disco para hacer búsquedas (no de texto, sino tipo a lo que hace locate/slocate, para localizar ficheros por nombre o que cumplan un determinado requisito, como su fecha, etc) y que tenga un api accesible via python. Un saludo. P.D: Estoy pensando en implementarmela yo usando sqlite o pytables, pero quería saber si alguién tenía experiencia con el tema. ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From necudeco en gmail.com Wed Jul 23 17:52:01 2008 From: necudeco en gmail.com (necudeco) Date: Wed, 23 Jul 2008 10:52:01 -0500 Subject: Indexador de disco In-Reply-To: <1216826701.7347.114.camel@soberbia.copypastesi.es> References: <1216826701.7347.114.camel@soberbia.copypastesi.es> Message-ID: <2ccb93070807230852m5eaa9a8k4173421852b4b50c@mail.gmail.com> has visto beagle ? O siquieres un api de indexacion puedes ver el proyecto lucene en apache 2008/7/23 Antonio Beamud Montero : > Alguien tiene experiencia con algún indexador/cache de disco para hacer > búsquedas (no de texto, sino tipo a lo que hace locate/slocate, para > localizar ficheros por nombre o que cumplan un determinado requisito, > como su fecha, etc) y que tenga un api accesible via python. > > Un saludo. > > P.D: Estoy pensando en implementarmela yo usando sqlite o pytables, pero > quería saber si alguién tenía experiencia con el tema. > > > > _______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- NeCuDeCo Asociacion Peruana de Software Libre http://necudeco.com http://apesol.org Your Jugdment Day is NOW sudo kills -9 $richard_penguin_signature _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From alexis.roda.villalonga en gmail.com Wed Jul 23 18:20:26 2008 From: alexis.roda.villalonga en gmail.com (Alexis Roda) Date: Wed, 23 Jul 2008 18:20:26 +0200 Subject: Otra vez la herencia =?ISO-8859-1?Q?m=FAltiple?= In-Reply-To: <8a19bc7c0807230457o21e552b3ja51e56af348db7c5@mail.gmail.com> References: <8a19bc7c0807220947t3b9c720ehabd73328851940ed@mail.gmail.com> <3BCEC6F3-AE52-481F-9F4B-728DFBAAB053@gmail.com> <678134758-1216757431-cardhu_decombobulator_blackberry.rim.net-800845693-@bxe048.bisx.produk.on.blackberry> <8a19bc7c0807230457o21e552b3ja51e56af348db7c5@mail.gmail.com> Message-ID: <48875A4A.8020205@gmail.com> En/na Beni ha escrit: > Leyendo lo que me habeis pasado y pensando un poco... > > supongo que como parece que funciona python, la signatura de los métodos > tiene que ser igual. Pero no veo el por que no tener constructores con > distintos tipos de parámetros. Java los usa continuamente. Es más, son > objetos distintos que tienen sus propias propiedades y métodos. Y si heredo > de ellos necesitaré algún método para poder llamarlos con los parámetros que > yo crea necesarios en el hijo. Para decidir que método invocar Java compara el número y tipo de los argumentos utilizados en la llamada con los argumentos formales (número y tipo) de los métodos homónimos y a partir de ciertas reglas escoge el que mejor se ajusta. En python el tipo de los argumentos de una función/método no se declara, por tanto este mecanismo no es aplicable directamente. En python es posible conseguir un efecto parecido utilizando *args y **kw y programando la función/método de forma que se comporte de manera diferente en función de los argumentos recibidos. > Si no me equivoco (no domino mucho el inglés) parece que super te devuelve > el tipo de una clase para llamar al método. Este tipo pude ser A, B, C > dependiendo de la definición de la misma. Por tanto, como comentaba Alexis, > deben tener la misma signatura. No me explique bien. Quería decir que tu ejemplo no funcionaría por este motivo. Como bien dices, super() se limita a ofrecer un mecanismo para localizar el método y no sabe nada sobre los parámetros utilizados en la llamada. La restricción no es tan fuerte. Más que signaturas idénticas deben tener signaturas compatibles. Esto puedes conseguirlo con *args, **kw y/o argumentos con valores por defecto. class A(object): def __init__(self, nombre, *args): print nombre super(A, self).__init__(nombre, *args) class B(object): def __init__(self, nombre, apellidos): print nombre, apellidos super(B, self).__init__(nombre, apellidos) class C(A, B): def __init__(self): super(C, self).__init__("hola", "adios") class D(B, A): def __init__(self): super(D, self).__init__("hola", "adios") print "C (A, B) - A(nombre) - B(nombre, apellidos) >", c = C() print "D (B, A) - A(nombre) - B(nombre, apellidos) >", d = D() Aunque en mi opinión es un truco muy sucio, con más inconvenientes que ventajas. > Por tanto para llamar a cada constructor necesitaré hacerlo de la forma > antes comentada. > class C(A, B): > def __init__(): > A.__init__(self, "hola") > B.__init__(self, "hola", "adios") > > ¿Sería correcto? Funciona, sí y si A y B son clases dispares probablemente sea la mejor opción. Saludos _______________________________________________ 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 Jul 23 18:26:43 2008 From: med.swl en gmail.com (Medardo Rodriguez) Date: Wed, 23 Jul 2008 12:26:43 -0400 Subject: =?ISO-8859-1?Q?Re:__Otra_vez_la_herencia_m=FAltiple?= In-Reply-To: <8a19bc7c0807220947t3b9c720ehabd73328851940ed@mail.gmail.com> References: <8a19bc7c0807220947t3b9c720ehabd73328851940ed@mail.gmail.com> Message-ID: <4891add70807230926g6defc496v79e49fae2c46a41a@mail.gmail.com> Primero, el python no anuncia esta posibilidad como herencia multiplem una declaración como «class D(A, B, C)» lo que debe expresar semánticamente es «La clase D hereda de A y se compone por los mixins B y C». Por otro lado, el super se debe usar solo si todos los métodos de igual nombre cumplen con el contrato de los parámetros actuales que pasas. También siempre tienes la alternativa de llamar directo con el nombre de la clase o mixin superior y los parámetros que corresponda en cada caso. Saludos. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From alexis.roda.villalonga en gmail.com Wed Jul 23 18:29:21 2008 From: alexis.roda.villalonga en gmail.com (Alexis Roda) Date: Wed, 23 Jul 2008 18:29:21 +0200 Subject: Fecha en python In-Reply-To: References: Message-ID: <48875C61.5050000@gmail.com> En/na Cristhian Boujon ha escrit: > Necesito que el programa me muestre la fecha en el siguiente formato: > 'Miercoles 23 de Julio del 2008' > sé que puedo hacer strftime('%A --- de %B del %Y', time.localtime()) no se > como hacer para que me aparezca el numero del mes correspondiente al dia. En la documentación del método time.strftime se listan los códigos disponibles: http://docs.python.org/lib/module-time.html > No me interesa que apareza el dia y el mes en ingles. Según esta documentación %A muestra el nombre del día de la semana según el locale que tengas configurado en el sistema. >>> import locale >>> locale.setlocale(locale.LC_ALL, '') 'es_ES.UTF-8' >>> import time >>> time.strftime("%A") 'mi\xc3\xa9rcoles' Saludos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From cristhianboujon en gmail.com Wed Jul 23 18:38:10 2008 From: cristhianboujon en gmail.com (Cristhian Boujon) Date: Wed, 23 Jul 2008 13:38:10 -0300 Subject: Fecha en python In-Reply-To: <48875C61.5050000@gmail.com> References: <48875C61.5050000@gmail.com> Message-ID: Gracias Cristina. Alexis, interesante lo que me decis, lo probé pero no me funcionó >>> import locale >>> locale.setlocale(locale.LC_ALL) 'LC_COLLATE=C;LC_CTYPE=Spanish_Spain.1252;LC_MONETARY=C;LC_NUMERIC=C;LC_TIME=C' >>> time.strftime('%A') 'Wednesday' >>> El día 23 de julio de 2008 13:29, Alexis Roda < alexis.roda.villalonga en gmail.com> escribió: > En/na Cristhian Boujon ha escrit: > >> Necesito que el programa me muestre la fecha en el siguiente formato: >> 'Miercoles 23 de Julio del 2008' >> sé que puedo hacer strftime('%A --- de %B del %Y', time.localtime()) no se >> como hacer para que me aparezca el numero del mes correspondiente al dia. >> > > En la documentación del método time.strftime se listan los códigos > disponibles: > > http://docs.python.org/lib/module-time.html > > No me interesa que apareza el dia y el mes en ingles. >> > > Según esta documentación %A muestra el nombre del día de la semana según el > locale que tengas configurado en el sistema. > > >>> import locale > >>> locale.setlocale(locale.LC_ALL, '') > 'es_ES.UTF-8' > >>> import time > >>> time.strftime("%A") > 'mi\xc3\xa9rcoles' > > > > Saludos > > _______________________________________________ > 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 cristhianboujon en gmail.com Wed Jul 23 18:48:59 2008 From: cristhianboujon en gmail.com (Cristhian Boujon) Date: Wed, 23 Jul 2008 13:48:59 -0300 Subject: Fecha en python In-Reply-To: References: <48875C61.5050000@gmail.com> Message-ID: Solucionado, gracias. Tenía que especificar el parametro opcional con '' El día 23 de julio de 2008 13:38, Cristhian Boujon < cristhianboujon en gmail.com> escribió: > Gracias Cristina. > Alexis, interesante lo que me decis, lo probé pero no me funcionó > > >>> import locale > >>> locale.setlocale(locale.LC_ALL) > > 'LC_COLLATE=C;LC_CTYPE=Spanish_Spain.1252;LC_MONETARY=C;LC_NUMERIC=C;LC_TIME=C' > >>> time.strftime('%A') > 'Wednesday' > >>> > > El día 23 de julio de 2008 13:29, Alexis Roda < > alexis.roda.villalonga en gmail.com> escribió: > > En/na Cristhian Boujon ha escrit: >> >>> Necesito que el programa me muestre la fecha en el siguiente formato: >>> 'Miercoles 23 de Julio del 2008' >>> sé que puedo hacer strftime('%A --- de %B del %Y', time.localtime()) no >>> se >>> como hacer para que me aparezca el numero del mes correspondiente al dia. >>> >> >> En la documentación del método time.strftime se listan los códigos >> disponibles: >> >> http://docs.python.org/lib/module-time.html >> >> No me interesa que apareza el dia y el mes en ingles. >>> >> >> Según esta documentación %A muestra el nombre del día de la semana según >> el locale que tengas configurado en el sistema. >> >> >>> import locale >> >>> locale.setlocale(locale.LC_ALL, '') >> 'es_ES.UTF-8' >> >>> import time >> >>> time.strftime("%A") >> 'mi\xc3\xa9rcoles' >> >> >> >> Saludos >> >> _______________________________________________ >> 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 > -- 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 cristhianboujon en gmail.com Wed Jul 23 18:56:57 2008 From: cristhianboujon en gmail.com (Cristhian Boujon) Date: Wed, 23 Jul 2008 13:56:57 -0300 Subject: Fecha en python In-Reply-To: References: <48875C61.5050000@gmail.com> Message-ID: Otra cosa, no tengo experiencia en manipulacion de strings asi que no tengo idea. A la hora de mostrar esto en la futura aplicacion, como aparecera miércoles? El día 23 de julio de 2008 13:48, Cristhian Boujon < cristhianboujon en gmail.com> escribió: > Solucionado, gracias. Tenía que especificar el parametro opcional con '' > > El día 23 de julio de 2008 13:38, Cristhian Boujon < > cristhianboujon en gmail.com> escribió: > > Gracias Cristina. >> Alexis, interesante lo que me decis, lo probé pero no me funcionó >> >> >>> import locale >> >>> locale.setlocale(locale.LC_ALL) >> >> 'LC_COLLATE=C;LC_CTYPE=Spanish_Spain.1252;LC_MONETARY=C;LC_NUMERIC=C;LC_TIME=C' >> >>> time.strftime('%A') >> 'Wednesday' >> >>> >> >> El día 23 de julio de 2008 13:29, Alexis Roda < >> alexis.roda.villalonga en gmail.com> escribió: >> >> En/na Cristhian Boujon ha escrit: >>> >>>> Necesito que el programa me muestre la fecha en el siguiente formato: >>>> 'Miercoles 23 de Julio del 2008' >>>> sé que puedo hacer strftime('%A --- de %B del %Y', time.localtime()) no >>>> se >>>> como hacer para que me aparezca el numero del mes correspondiente al >>>> dia. >>>> >>> >>> En la documentación del método time.strftime se listan los códigos >>> disponibles: >>> >>> http://docs.python.org/lib/module-time.html >>> >>> No me interesa que apareza el dia y el mes en ingles. >>>> >>> >>> Según esta documentación %A muestra el nombre del día de la semana según >>> el locale que tengas configurado en el sistema. >>> >>> >>> import locale >>> >>> locale.setlocale(locale.LC_ALL, '') >>> 'es_ES.UTF-8' >>> >>> import time >>> >>> time.strftime("%A") >>> 'mi\xc3\xa9rcoles' >>> >>> >>> >>> Saludos >>> >>> _______________________________________________ >>> 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 >> > > > > -- > Cristhian A. Boujon > --------------------------------- > http//esintuitivo.blogspot.com > -- 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 antonio.beamud en gmail.com Wed Jul 23 19:02:12 2008 From: antonio.beamud en gmail.com (Antonio Beamud Montero) Date: Wed, 23 Jul 2008 19:02:12 +0200 Subject: Indexador de disco In-Reply-To: <2ccb93070807230852m5eaa9a8k4173421852b4b50c@mail.gmail.com> References: <1216826701.7347.114.camel@soberbia.copypastesi.es> <2ccb93070807230852m5eaa9a8k4173421852b4b50c@mail.gmail.com> Message-ID: <1216832532.7347.131.camel@soberbia.copypastesi.es> El mié, 23-07-2008 a las 10:52 -0500, necudeco escribió: > has visto beagle ? Si, tanto beagle como tracker están más orientados a indexar el contenido y aunque no son accesibles directamente via python (al menos no lo he visto), si que se podría acceder via d-bus, pero de todas formas, lo veo como matar moscas a cañonazos, ya que no quiero indexación de contenido, sino únicamente del nombre, incluso de partes del nombre del fichero o de las fechas, para correr en un servidor web > O siquieres un api de indexacion puedes ver el proyecto lucene en apache Igualmente, lucene está pensado más como un indexador de texto, y yo únicamente querría hacer busquedas como mucho del nombre del fichero (que es busqueda exacta), fechas concretas, de modificación y acceso, la extensión y poco más. Buscaría algo que fuese sencillo y que me permita indexar gran cantidad de archivos, que tenga mantenimiento casi nulo... Un saludo. ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From alexis.roda.villalonga en gmail.com Wed Jul 23 19:10:21 2008 From: alexis.roda.villalonga en gmail.com (Alexis Roda) Date: Wed, 23 Jul 2008 19:10:21 +0200 Subject: Fecha en python In-Reply-To: References: <48875C61.5050000@gmail.com> Message-ID: <488765FD.5050204@gmail.com> En/na Cristhian Boujon ha escrit: > Otra cosa, no tengo experiencia en manipulacion de strings asi que no tengo > idea. > A la hora de mostrar esto en la futura aplicacion, como aparecera miércoles? Supongo que te refieres a los códigos "extraños" que aparecen. No deberías tener problemas con ellos. En el peor de los casos, si la librería que utilizas para el GUI trabaja con cadenas unicode o UTF8 p.e., deberías recodificar la cadena. Saludos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From llonchj en atcubic.com Wed Jul 23 19:21:26 2008 From: llonchj en atcubic.com (Jordi Llonch) Date: Wed, 23 Jul 2008 19:21:26 +0200 Subject: Indexador de disco In-Reply-To: <1216826701.7347.114.camel@soberbia.copypastesi.es> References: <1216826701.7347.114.camel@soberbia.copypastesi.es> Message-ID: http://www.libferris.com/ El 23/07/2008, a las 17:25, Antonio Beamud Montero escribió: > Alguien tiene experiencia con algún indexador/cache de disco para > hacer > búsquedas (no de texto, sino tipo a lo que hace locate/slocate, para > localizar ficheros por nombre o que cumplan un determinado requisito, > como su fecha, etc) y que tenga un api accesible via python. > > Un saludo. > > P.D: Estoy pensando en implementarmela yo usando sqlite o pytables, > pero > quería saber si alguién tenía experiencia con el tema. > > > _______________________________________________ > 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 joan.pallares en gmail.com Wed Jul 23 21:45:35 2008 From: joan.pallares en gmail.com (=?ISO-8859-1?Q?Joan_Pallar=E8s?=) Date: Wed, 23 Jul 2008 21:45:35 +0200 Subject: =?ISO-8859-1?Q?Re:__Re:_Asignaci=F3n_de_eventos_en_Python?= In-Reply-To: <48810578.6070605@gmail.com> References: <48810578.6070605@gmail.com> Message-ID: Hola, Siento mucho haber enviado el programa sin que se pudiera ejecutar. Muchas gracias con tu ayuda. Aunque me interesa alguna forma "más elegante" de volver atrás" acabo de usar tu codigo y me escupe esto: Solucion [0, 1, 2] Solucion [0, 1, 3] [[1, 1, 1, 1], [1, 1, 1, 0], [1, 1, 1, 1]] por lo que no hace bactracking, no? te has olvidado algo? o yo me he dejado algo? ¿Alguien tiene alguna idea más? Saludos y gracias 2008/7/18 Alexis Roda : > En/na Joan Pallarès ha escrit: > > Antes de responder me gustaría hacer un comentario. > > Si mandas un programa a la lista en busca de ayuda al menos deberías > verificar que funciona (el tuyo da error con el paso de parámetros). Si > alguien se toma la molestia de probar el programa y ve que no funciona lo > más probable es que ignore tu mensaje. > > > Tenemos una *lista de parejas*, creada así: >> *parejas = [(1, 'a'), (1, 'b'), (1, 'c'), (1, 'd'), >> (2, 'a'), (2, 'b'), (2, 'c'), >> (3, 'a'), (3, 'b'), (3, 'c'), (3, 'd')]* >> >> Queremos conseguir todas las *posibles combinaciones de numeros y >> letras*sin que se repitan, por ejemplo: >> *1a,2b,3c* Esta sería una solución >> *1a,2b,3d* Otra posible solución >> *1b,2a,3c* Una más >> etc. >> >> No queremos conseguirlas todas las posibles soluciones de golpe, si no >> solo >> una. Pero ha de guardar la informacion de la solucion de alguna manera >> para >> luego poder pedir la siguiente solucion (o la anterior).* ¿Cómo lo >> haríais? >> > > Lo de la "anterior" lo veo mas complicado. Deberás guardar las soluciones > encontradas en algún sitio para poder "volver" a las anteriores. > > Yo he hecho un algortimo de backtraking que me obtiene la primera >> solución, >> pero luego no se obtener las siguientes. >> > > Al algoritmo que propones le falta la parte del "back" para ser > backtracking. Cuando has encontrado la solución con (3, 'd') debes seguir > probando. Como no hay más posibilidades con el 3 vuelves atrás y pruebas a > partir de [(1, 'a'), (2, 'c')], luego a partir de [(1, 'b')] etc. > > Backtracking es una manera fina de decir fuerza bruta. Siempre que utilices > backtracking tienes que poner mucho cuidado en reducir el tamaño del espacio > de búsqueda, en caso contrario el problema se vuelve rápidamente inmanejable > (computacionalmente hablando) y siendo python un lenguaje interpretado > cualquier optimización es interesante. > > Tal como planteas el problema no aprovechas que si has elegido (1, 'a') > como primer elemento de la solución ninguna pareja con 1 o 'a' es aceptable. > Por tanto estas comprobando muchas combinaciones que no son solución. > > Creo que hay una forma mejor de plantear/visualizar el problema que elimina > las combinaciones que no son solución. > > La lista del ejemplo puede representarse matricialmente como: > > a b c d > 1 1 1 1 1 > 2 1 1 1 0 > 3 1 1 1 1 > > donde un 1 en una casilla significa que la pareja aparece en la lista y un > 0 que no aparece. > > Visto así el problema se reduce a escoger tres celdas de la matriz sin > repetir fila ni columna. Algo parecido al problema de las 8 reinas, pero sin > tener en cuenta las diagonales y con casillas que no son válidas. > > Una asignación puede representarse mediante una lista de caracteres: por > ejemplo ['a', 'b', 'c'] representa la asignación (1, 'a'), (2, 'b'), (3, > 'c'); ['b', 'a', 'd'] corresponde a (1, 'b'), (2, 'a'), (3, 'd') etc. > > Como tienes que elegir una celda de cada columna, sin repetir columna, una > solución estará formada por tres letras distintas. > > No todas las listas con tres letras distintas corresponden a asignaciones > válidas, p.e. ['a', 'd', 'b'] no es válida ya que la pareja (2, 'd') no > aparece en la lista. > > > > Todo este rollo se resume en el siguiente programa (no muy pythonico). > > # por simplicidad la segunda componente se codifica mediante un > # numero. 1 -> 'a', 2 -> 'b' etc. > > parejas = [(1, 1), (1, 2), (1, 3), (1, 4), > (2, 1), (2, 2), (2, 3), > (3, 1), (3, 2), (3, 3), (3, 4), > ] > > def parejasAMatriz(p) : > # genera la matriz a partir de la lista de parejas > nfilas = max([i[0] for i in p]) > ncols = max([i[1] for i in p]) > m = [ list([0]*ncols) for i in xrange(nfilas) ] > for f, c in p : > m[f-1][c-1] = 1 > return m > > def genDisponible(m, e, p) : > # a partir de la matriz y una solucion parcial devuelve una lista > # con las columnas disponibles para una fila determinada > ncols = len(m[0]) > res = [] > for i in xrange(ncols) : > if i not in e and m[p][i] : > # la columna esta disponible y la asignacion es valida > res.append(i) > return iter(res) > > > def generaSoluciones(p) : > matriz = parejasAMatriz(p) > nfilas = len(matriz) > ncols = len(matriz[0]) > estado = [-1] * nfilas > disponible = [ None ] * nfilas > fila = 0 > disponible[fila] = iter(range(ncols)) > while True : > while not disponible[fila] : > estado[fila] = -1 > fila -= 1 # retrocede > if fila < 0 : # no hay mas soluciones > raise StopIteration() > estado[fila] = disponible[fila].next() > fila += 1 > if fila >= nfilas : > yield estado > fila -= 1 > else : > disponible[fila] = genDisponible(matriz, estado, fila) > > > for s in generaSoluciones(parejas) : > print s > > Espero que te sirva. > > > > > Saludos > > _______________________________________________ > 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 alexis.roda.villalonga en gmail.com Wed Jul 23 23:35:58 2008 From: alexis.roda.villalonga en gmail.com (Alexis Roda) Date: Wed, 23 Jul 2008 23:35:58 +0200 Subject: =?ISO-8859-1?Q?Asignaci=F3n_de_eventos_?= =?ISO-8859-1?Q?en_Python?= In-Reply-To: References: <48810578.6070605@gmail.com> Message-ID: <4887A43E.6040601@gmail.com> En/na Joan Pallarès ha escrit: > Hola, > > Muchas gracias con tu ayuda. Aunque me interesa alguna forma "más elegante" > de volver atrás" En backtracking, volver atrás no significa encontrar la solución "anterior" (que me parece que es lo que quieres) sino retroceder, deshaciendo el último "cambio" y probando otra posibilidad para encontrar la "siguiente" solución. Para lo que (creo que) quieres solo tienes que implementa una clase con dos metodos, prev y next, una lista que almacene las soluciones encontradas hasta el momento y el indice de la "solución actual". Si al llamar a next no quedan "soluciones anteriores" se calcula una nueva solución y se almacena en la lista. class Soluciones : def __init__(self, parejas) : self._encontrado = [] self._indice = 0 matr = parejasAMatriz(parejas) self._generador = iter(generaSoluciones(matr)) def next(self) : if self._indice >= len(self._encontrado) : self._encontrado.append(list(self._generador.next())) self._indice += 1 return self._encontrado[self._indice - 1] def prev(self) : if self._indice <= 0 : return None self._indice -= 1 return self._encontrado[self._indice] Deberías añadir alguna comprobación extra para el caso que se agoten todas las soluciones y asegurarte que las comprobaciones que hace son correctas. > acabo de usar tu codigo y me escupe esto: > > Solucion [0, 1, 2] > Solucion [0, 1, 3] > [[1, 1, 1, 1], [1, 1, 1, 0], [1, 1, 1, 1]] No entiendo de donde sale la última linea. Mi código no imprime la matriz! > por lo que no hace bactracking, no? El bucle "while not disponible[fila]" implementa el retroceso: si no quedan posibilidades para una posición retrocede una posición para seguir probando. > te has olvidado algo? o yo me he dejado algo? Al ejecutarlo me imprime: [0, 1, 2] [0, 1, 3] ... [3, 2, 0] [3, 2, 1] Saludos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From lasizoillo en gmail.com Thu Jul 24 00:59:53 2008 From: lasizoillo en gmail.com (lasizoillo) Date: Thu, 24 Jul 2008 00:59:53 +0200 Subject: Indexador de disco In-Reply-To: <1216826701.7347.114.camel@soberbia.copypastesi.es> References: <1216826701.7347.114.camel@soberbia.copypastesi.es> Message-ID: <49414f570807231559v6a1e9caek4935326bfe2890a0@mail.gmail.com> Buenas: El día 23 de julio de 2008 17:25, Antonio Beamud Montero escribió: > Alguien tiene experiencia con algún indexador/cache de disco para hacer > búsquedas (no de texto, sino tipo a lo que hace locate/slocate, para > localizar ficheros por nombre o que cumplan un determinado requisito, > como su fecha, etc) y que tenga un api accesible via python. > No conozco nada así > Un saludo. > > P.D: Estoy pensando en implementarmela yo usando sqlite o pytables, pero > quería saber si alguién tenía experiencia con el tema. > > Yo votaría por sqlite. El soporte de Full Text Search te puede ayudar buscando por nombre. http://www.sqlite.org/cvstrac/wiki?p=FtsUsage Un saludo: Javi _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From joan.pallares en gmail.com Thu Jul 24 01:55:03 2008 From: joan.pallares en gmail.com (=?ISO-8859-1?Q?Joan_Pallar=E8s?=) Date: Thu, 24 Jul 2008 01:55:03 +0200 Subject: =?ISO-8859-1?Q?Re:__Re:_Asignaci=F3n_de_eventos_en_Python?= In-Reply-To: <4887A43E.6040601@gmail.com> References: <48810578.6070605@gmail.com> <4887A43E.6040601@gmail.com> Message-ID: He copiado y pegado tu codigo y solo he añadido que imprima solucion delante de cada solucion y que imprima la matriz al final. Bueno y por no cambiar la lista de parejas y puesto un diccionario, así: *def parejasAMatriz(p) : # genera la matriz a partir de la lista de parejas dict = {'a':1,'b':2,'c':3,'d':4} nfilas = max([i[0] for i in p]) ncols = max([i[1] for i in p]) NUMncols = dict[ncols] m = [ list([0]*NUMncols) for i in xrange(nfilas) ] for f, c in p : m[f-1][dict[c]-1] = 1 return m* y me imprime lo que te he puesto antes: Solucion [0, 1, 2] Solucion [0, 1, 3] [[1, 1, 1, 1], [1, 1, 1, 0], [1, 1, 1, 1]] Debo haber cambiado algo mientras copiaba y pegaba, no valgo ni para eso xD......: Entiendo perfectamente lo que es backtracking, y sí, es una buena idea lo que me dices de las funciones next y prev pero en el caso real que voy a utilizar este algoritmo sera una matriz de 100x100 o incluso más y no se si será del todo eficiente calcular todas las soluciones de golpe. Sería mejor generar una a una según las pidiera el usuario (pero claro no se hacerlo). Aunque quizá con este sistema de la matriz es muy rápido y lo puedo calcular todo de golpe. Pero bueno primero tengo que conseguir que me funcione con este caso sencillo y luego adaptarlo al grande. Pongo todo el código que me devuelve lo que he dicho antes, que puede pasar para que no nos devuelva lo mismo?: *parejas = [(1, 'a'), (1, 'b'), (1, 'c'), (1, 'd'), (2, 'a'), (2, 'b'), (2, 'c'), (3, 'a'), (3, 'b'), (3, 'c'), (3, 'd')] def parejasAMatriz(p) : # genera la matriz a partir de la lista de parejas dict = {'a':1,'b':2,'c':3,'d':4} nfilas = max([i[0] for i in p]) ncols = max([i[1] for i in p]) NUMncols = dict[ncols] m = [ list([0]*NUMncols) for i in xrange(nfilas) ] for f, c in p : m[f-1][dict[c]-1] = 1 return m def genDisponible(m, e, p) : # a partir de la matriz y una solucion parcial devuelve una lista # con las columnas disponibles para una fila determinada ncols = len(m[0]) res = [] for i in xrange(ncols) : if i not in e and m[p][i] : # la columna esta disponible y la asignacion es valida res.append(i) return iter(res) def generaSoluciones(p) : matriz = parejasAMatriz(p) nfilas = len(matriz) ncols = len(matriz[0]) estado = [-1] * nfilas disponible = [ None ] * nfilas fila = 0 disponible[fila] = iter(range(ncols)) while True : while not disponible[fila] : estado[fila] = -1 fila -= 1 # retrocede if fila < 0 : # no hay mas soluciones raise StopIteration() estado[fila] = disponible[fila].next() fila += 1 if fila >= nfilas : yield estado fila -= 1 else : disponible[fila] = genDisponible(matriz, estado, fila) for s in generaSoluciones(parejas) : print 'Solucion',s print parejasAMatriz(parejas)* Voy a la cama que mañana toca madrugar. Muchas gracias Alexis Saludos 2008/7/23 Alexis Roda : > En/na Joan Pallarès ha escrit: > >> Hola, >> >> Muchas gracias con tu ayuda. Aunque me interesa alguna forma "más >> elegante" >> de volver atrás" >> > > En backtracking, volver atrás no significa encontrar la solución "anterior" > (que me parece que es lo que quieres) sino retroceder, deshaciendo el último > "cambio" y probando otra posibilidad para encontrar la "siguiente" solución. > > > Para lo que (creo que) quieres solo tienes que implementa una clase con dos > metodos, prev y next, una lista que almacene las soluciones encontradas > hasta el momento y el indice de la "solución actual". Si al llamar a next no > quedan "soluciones anteriores" se calcula una nueva solución y se almacena > en la lista. > > class Soluciones : > def __init__(self, parejas) : > self._encontrado = [] > self._indice = 0 > matr = parejasAMatriz(parejas) > self._generador = iter(generaSoluciones(matr)) > > def next(self) : > if self._indice >= len(self._encontrado) : > self._encontrado.append(list(self._generador.next())) > self._indice += 1 > return self._encontrado[self._indice - 1] > > def prev(self) : > if self._indice <= 0 : > return None > self._indice -= 1 > return self._encontrado[self._indice] > > Deberías añadir alguna comprobación extra para el caso que se agoten todas > las soluciones y asegurarte que las comprobaciones que hace son correctas. > > > acabo de usar tu codigo y me escupe esto: >> >> Solucion [0, 1, 2] >> Solucion [0, 1, 3] >> [[1, 1, 1, 1], [1, 1, 1, 0], [1, 1, 1, 1]] >> > > No entiendo de donde sale la última linea. Mi código no imprime la matriz! > > por lo que no hace bactracking, no? >> > > El bucle "while not disponible[fila]" implementa el retroceso: si no quedan > posibilidades para una posición retrocede una posición para seguir probando. > > te has olvidado algo? o yo me he dejado algo? >> > > Al ejecutarlo me imprime: > > [0, 1, 2] > [0, 1, 3] > ... > [3, 2, 0] > [3, 2, 1] > > > > > Saludos > _______________________________________________ > 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 joan.pallares en gmail.com Thu Jul 24 02:04:35 2008 From: joan.pallares en gmail.com (=?ISO-8859-1?Q?Joan_Pallar=E8s?=) Date: Thu, 24 Jul 2008 02:04:35 +0200 Subject: =?ISO-8859-1?Q?Re:__Re:_Asignaci=F3n_de_eventos_en_Python?= In-Reply-To: References: <48810578.6070605@gmail.com> <4887A43E.6040601@gmail.com> Message-ID: Comprobado He copiado tu código tal cual y me devuelve: [0, 1, 2] [0, 1, 3] fenómenos paranormales? no creo, debe ser el compilador o que se te ocurre? tengo Python 2.5, y lo ejecuto desde Eclipse bajo Windows XP (no me critiqueis mucho xD) Saludos 2008/7/24 Joan Pallarès : > He copiado y pegado tu codigo y solo he añadido que imprima solucion > delante de cada solucion y que imprima la matriz al final. Bueno y por no > cambiar la lista de parejas y puesto un diccionario, así: > > *def parejasAMatriz(p) : > # genera la matriz a partir de la lista de parejas > dict = {'a':1,'b':2,'c':3,'d':4} > nfilas = max([i[0] for i in p]) > ncols = max([i[1] for i in p]) > NUMncols = dict[ncols] > m = [ list([0]*NUMncols) for i in xrange(nfilas) ] > for f, c in p : > m[f-1][dict[c]-1] = 1 > return m* > > y me imprime lo que te he puesto antes: > Solucion [0, 1, 2] > Solucion [0, 1, 3] > [[1, 1, 1, 1], [1, 1, 1, 0], [1, 1, 1, 1]] > > Debo haber cambiado algo mientras copiaba y pegaba, no valgo ni para eso > xD......: > > Entiendo perfectamente lo que es backtracking, y sí, es una buena idea lo > que me dices de las funciones next y prev pero en el caso real que voy a > utilizar este algoritmo sera una matriz de 100x100 o incluso más y no se si > será del todo eficiente calcular todas las soluciones de golpe. Sería mejor > generar una a una según las pidiera el usuario (pero claro no se hacerlo). > Aunque quizá con este sistema de la matriz es muy rápido y lo puedo calcular > todo de golpe. Pero bueno primero tengo que conseguir que me funcione con > este caso sencillo y luego adaptarlo al grande. > > Pongo todo el código que me devuelve lo que he dicho antes, que puede pasar > para que no nos devuelva lo mismo?: > > *parejas = [(1, 'a'), (1, 'b'), (1, 'c'), (1, 'd'), > (2, 'a'), (2, 'b'), (2, 'c'), > (3, 'a'), (3, 'b'), (3, 'c'), (3, 'd')] > > > def parejasAMatriz(p) : > # genera la matriz a partir de la lista de parejas > dict = {'a':1,'b':2,'c':3,'d':4} > nfilas = max([i[0] for i in p]) > ncols = max([i[1] for i in p]) > NUMncols = dict[ncols] > m = [ list([0]*NUMncols) for i in xrange(nfilas) ] > for f, c in p : > m[f-1][dict[c]-1] = 1 > > return m > > def genDisponible(m, e, p) : > # a partir de la matriz y una solucion parcial devuelve una lista > # con las columnas disponibles para una fila determinada > ncols = len(m[0]) > res = [] > for i in xrange(ncols) : > if i not in e and m[p][i] : > # la columna esta disponible y la asignacion es valida > res.append(i) > return iter(res) > > > def generaSoluciones(p) : > matriz = parejasAMatriz(p) > nfilas = len(matriz) > ncols = len(matriz[0]) > estado = [-1] * nfilas > disponible = [ None ] * nfilas > fila = 0 > disponible[fila] = iter(range(ncols)) > while True : > while not disponible[fila] : > estado[fila] = -1 > fila -= 1 # retrocede > if fila < 0 : # no hay mas soluciones > raise StopIteration() > estado[fila] = disponible[fila].next() > fila += 1 > if fila >= nfilas : > yield estado > fila -= 1 > else : > disponible[fila] = genDisponible(matriz, estado, fila) > > > for s in generaSoluciones(parejas) : > print 'Solucion',s > print parejasAMatriz(parejas)* > > Voy a la cama que mañana toca madrugar. Muchas gracias Alexis > > Saludos > > 2008/7/23 Alexis Roda : > > En/na Joan Pallarès ha escrit: >> >>> Hola, >>> >>> Muchas gracias con tu ayuda. Aunque me interesa alguna forma "más >>> elegante" >>> de volver atrás" >>> >> >> En backtracking, volver atrás no significa encontrar la solución >> "anterior" (que me parece que es lo que quieres) sino retroceder, >> deshaciendo el último "cambio" y probando otra posibilidad para encontrar la >> "siguiente" solución. >> >> >> Para lo que (creo que) quieres solo tienes que implementa una clase con >> dos metodos, prev y next, una lista que almacene las soluciones encontradas >> hasta el momento y el indice de la "solución actual". Si al llamar a next no >> quedan "soluciones anteriores" se calcula una nueva solución y se almacena >> en la lista. >> >> class Soluciones : >> def __init__(self, parejas) : >> self._encontrado = [] >> self._indice = 0 >> matr = parejasAMatriz(parejas) >> self._generador = iter(generaSoluciones(matr)) >> >> def next(self) : >> if self._indice >= len(self._encontrado) : >> self._encontrado.append(list(self._generador.next())) >> self._indice += 1 >> return self._encontrado[self._indice - 1] >> >> def prev(self) : >> if self._indice <= 0 : >> return None >> self._indice -= 1 >> return self._encontrado[self._indice] >> >> Deberías añadir alguna comprobación extra para el caso que se agoten todas >> las soluciones y asegurarte que las comprobaciones que hace son correctas. >> >> >> acabo de usar tu codigo y me escupe esto: >>> >>> Solucion [0, 1, 2] >>> Solucion [0, 1, 3] >>> [[1, 1, 1, 1], [1, 1, 1, 0], [1, 1, 1, 1]] >>> >> >> No entiendo de donde sale la última linea. Mi código no imprime la matriz! >> >> por lo que no hace bactracking, no? >>> >> >> El bucle "while not disponible[fila]" implementa el retroceso: si no >> quedan posibilidades para una posición retrocede una posición para seguir >> probando. >> >> te has olvidado algo? o yo me he dejado algo? >>> >> >> Al ejecutarlo me imprime: >> >> [0, 1, 2] >> [0, 1, 3] >> ... >> [3, 2, 0] >> [3, 2, 1] >> >> >> >> >> Saludos >> _______________________________________________ >> 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 pych3m4 en gmail.com Thu Jul 24 02:33:33 2008 From: pych3m4 en gmail.com (Chema Cortes) Date: Thu, 24 Jul 2008 02:33:33 +0200 Subject: =?ISO-8859-1?Q?Re:__Otra_vez_la_herencia_m=FAltiple?= In-Reply-To: <4891add70807230926g6defc496v79e49fae2c46a41a@mail.gmail.com> References: <8a19bc7c0807220947t3b9c720ehabd73328851940ed@mail.gmail.com> <4891add70807230926g6defc496v79e49fae2c46a41a@mail.gmail.com> Message-ID: <2c9fb0dd0807231733h2bc9a120p21b7cb93d05854ee@mail.gmail.com> El día 23 de julio de 2008 18:26, Medardo Rodriguez escribió: > Primero, el python no anuncia esta posibilidad como herencia multiplem > una declaración como «class D(A, B, C)» lo que debe expresar > semánticamente es «La clase D hereda de A y se compone por los mixins > B y C». Creo que merece aclararse un poco más este punto: Una clase debería heredar únicamente los métodos __new__ y __init__ de la clase base, que es la que determina su "tipo". Si se desea invocar a varios inicializadores, o se hace de modo explícito, o bien se crea una superclase "factoría" y se deriva de ella. En general, la herencia múltiple funciona bastante bien con los "interfaces" como los accesores (__getattribute__) o la simulación de tipos de datos (file, list, dict,...). Fuera de este uso, hay que andar con mucho cuidado si se espera que alguna subclase cambie el número de argumentos de un método heredado. En este caso, la herencia múltiple da más disgustos que beneficios. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From alexis.roda.villalonga en gmail.com Thu Jul 24 18:09:16 2008 From: alexis.roda.villalonga en gmail.com (Alexis Roda) Date: Thu, 24 Jul 2008 18:09:16 +0200 Subject: =?ISO-8859-1?Q?Asignaci=F3n_de_eventos_?= =?ISO-8859-1?Q?en_Python?= In-Reply-To: References: <48810578.6070605@gmail.com> <4887A43E.6040601@gmail.com> Message-ID: <4888A92C.50700@gmail.com> En/na Joan Pallarès ha escrit: > Comprobado > > He copiado tu código tal cual y me devuelve: > > [0, 1, 2] > [0, 1, 3] > > fenómenos paranormales? no creo, debe ser el compilador o que se te ocurre? > tengo Python 2.5, y lo ejecuto desde Eclipse bajo Windows XP (no me > critiqueis mucho xD) Efectivamente, no funciona con python 2.5, sí lo hace con el 2.4. El problema parece estar relacionado con el uso de iter() en las funciones genDisponible y generaSoluciones. Aquí tienes código que funciona en ambas versiones: def genDisponible(m, e, p) : ncols = len(m[0]) res = [] for i in xrange(ncols - 1, -1, -1) : if i not in e and m[p][i] : res.append(i) return res def generaSoluciones(matriz) : nfilas = len(matriz) ncols = len(matriz[0]) estado = [-1] * nfilas disponible = [ None ] * nfilas fila = 0 disponible[fila] = genDisponible(matriz, estado, fila) while True : while not disponible[fila] : estado[fila] = -1 fila -= 1 # retrocede if fila < 0 : # no hay mas soluciones raise StopIteration() estado[fila] = disponible[fila].pop() fila += 1 if fila >= nfilas : yield list(estado) fila -= 1 else : disponible[fila] = genDisponible(matriz, estado, fila) > Entiendo perfectamente lo que es backtracking, y sí, es una buena idea lo > que me dices de las funciones next y prev pero en el caso real que voy a > utilizar este algoritmo sera una matriz de 100x100 o incluso más y no se si > será del todo eficiente calcular todas las soluciones de golpe. Porque te empeñas en que el algoritmo calcula todas las soluciones de golpe ? La función generaSoluciones, y por extensión la clase Soluciones, solamente calcula UNA SOLUCIÓN CADA VEZ. Mira el código con más atención y verás que generaSoluciones es una función generadora. Después relee la respuesta que te mando Cristina Yenyxe. > Sería mejor > generar una a una según las pidiera el usuario (pero claro no se hacerlo). La clase Soluciones hace justamente eso: >>> s = Soluciones(parejas) >>> s._encontrado [] # no se ha encontrado ninguna solucion >>> s.next() [0, 1, 2] >>> s._encontrado [[0, 1, 2]] # una solucion encontrada >>> s.next() [0, 1, 3] >>> s._encontrado [[0, 1, 2], [0, 1, 3]] # dos soluciones encontradas >>> s.next() [0, 2, 1] >>> s._encontrado [[0, 1, 2], [0, 1, 3], [0, 2, 1]] >>> s.prev() [0, 2, 1] >>> s.prev() [0, 1, 3] hay que afinar un poco los métodos next() y prev(), pero como ejemplo ya vale. Saludos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From dreamtrick en gmail.com Thu Jul 24 18:44:47 2008 From: dreamtrick en gmail.com (Ignacio Quezada) Date: Thu, 24 Jul 2008 18:44:47 +0200 Subject: Python socket seguridad. Message-ID: <1216917887.6958.7.camel@DrEaMeREW.ZONE> Buenas!! Tras haber jugado un poco con wxwindow como gui me ha animado a hacer una especie de aplicación para el control remoto de mis 2 servidores caseros. Una conexión mediante socket y así poder controlarlo mediante comandos (automatizado por la gui, claro). Entonces, si son 2 servidores, 1 que hace de router y el otro sirve a la red con shares y más, dejando un puerto abierto ¿que problemas podría tener?, he pensado en lo típico, una regla de iptables que permita solo a la red interna (-s IP/NETMASK) entrar a los servidores por ese puerto, en caso del router seria más simple (-i ${Interfaz LAN}) pero no se si existirá algo en python mas "limpio", y si lo existe..alguna indicación por favor, no iría nada mal :P, ¿quizás identificación?, ¿con openssl ?, ¿simplemente encriptar la conexión con openssl ? o ¿será suficiente la regla iptables? ------------ próxima parte ------------ _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ing_emanuels en hotmail.com Thu Jul 24 19:56:45 2008 From: ing_emanuels en hotmail.com (Emanuel Sotelo) Date: Thu, 24 Jul 2008 12:56:45 -0500 Subject: como llamar visual basic desde python Message-ID: buenas dias o tardes, bueno mi pregunta es si es posible llamar a Visual Basic 6.0 desde pythonwin como se hacen con Word, Excel y todos los demas de Office a que lei en un libro que para estos se hacen por medio de import win32com.client..Dispatch("Excel.Application"), ahora yo quiero hacer los mismo con Visual Basic, anteriormente me recomendaron que crear Add-ins en VB pero y despues ya no se como llamar estos Add-ins, incluso logre crear el dll del proyecto pero no se como llamarlo para usarlo en python, espero que alguien me pueda ayudar ya que apenas empece a estudiar python y casi no le entiendo _________________________________________________________________ Juega y gana, tenemos 3 Xbox a la semana. http://club.prodigymsn.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 Thu Jul 24 20:32:57 2008 From: med.swl en gmail.com (Medardo Rodriguez) Date: Thu, 24 Jul 2008 14:32:57 -0400 Subject: =?ISO-8859-1?Q?Re:__Otra_vez_la_herencia_m=FAltiple?= In-Reply-To: <2c9fb0dd0807231733h2bc9a120p21b7cb93d05854ee@mail.gmail.com> References: <8a19bc7c0807220947t3b9c720ehabd73328851940ed@mail.gmail.com> <4891add70807230926g6defc496v79e49fae2c46a41a@mail.gmail.com> <2c9fb0dd0807231733h2bc9a120p21b7cb93d05854ee@mail.gmail.com> Message-ID: <4891add70807241132u437e7f95j1bd104dc4d03dc12@mail.gmail.com> 2008/7/23 Chema Cortes : > El día 23 de julio de 2008 18:26, Medardo Rodriguez > escribió: >> Primero, el python no anuncia esta posibilidad como herencia multiplem >> una declaración como «class D(A, B, C)» lo que debe expresar >> semánticamente es «La clase D hereda de A y se compone por los mixins >> B y C». > > Creo que merece aclararse un poco más este punto: Bueno, creo que están hablando de herencia múltiple, eso no lo puedo aclarar porque nunca, en ningún modelo he visto herencia múltiple, y por lo tanto nunca la he usado. Para composición si es rico usarla, como en las interfaces (tipos), o en los mixins. Saludos _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From py en ch3m4.org Thu Jul 24 21:38:03 2008 From: py en ch3m4.org (Chema Cortes) Date: Thu, 24 Jul 2008 21:38:03 +0200 Subject: como llamar visual basic desde python In-Reply-To: References: Message-ID: <200807242138.14200.py@ch3m4.org> El Thursday 24 July 2008 19:56:45 Emanuel Sotelo escribió: > buenas dias o tardes, bueno mi pregunta es si es posible llamar a Visual > Basic 6.0 desde pythonwin como se hacen con Word, Excel y todos los demas > de Office a que lei en un libro que para estos se hacen por medio de import > win32com.client..Dispatch("Excel.Application"), ahora yo quiero hacer los > mismo con Visual Basic, anteriormente me recomendaron que crear Add-ins en > VB pero y despues ya no se como llamar estos Add-ins, incluso logre crear > el dll del proyecto pero no se como llamarlo para usarlo en python, espero > que alguien me pueda ayudar ya que apenas empece a estudiar python y casi > no le entiendo No conozco estos entornos, pero entiendo que deberías usar IronPython en lugar de pythonwin. El IronPython se integra en el VisualStudio y es inmediato su funcionamiento con VB o c#. http://code.msdn.microsoft.com/IPyDD Si quieres seguir usando pythonwin, supongo que tendrás que usar PythonNet, que invoca a .Net desde python estándar: http://pythonnet.sourceforge.net/ Desconozco cómo está el "estado del arte" de estas cosas. ------------ 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 jlzaratec en hotmail.com Thu Jul 24 23:44:42 2008 From: jlzaratec en hotmail.com (Jose Luis Zarate Cervantes) Date: Thu, 24 Jul 2008 16:44:42 -0500 Subject: Python web In-Reply-To: References: Message-ID: Hola soy novato en Python, quisiera saber que alternativas hay para desarrollos web bajo python y generacion de reportes PDF. atte jose luis zarate cervantes _________________________________________________________________ Los mejores conciertos en exclusiva por MSN in concert http://video.msn.com/?mkt=es-mx_______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From francofuji en gmail.com Thu Jul 24 23:52:46 2008 From: francofuji en gmail.com (francofuji en gmail.com) Date: Thu, 24 Jul 2008 17:52:46 -0400 Subject: Sitio de Google App Engine - Interesante Message-ID: <30fdaa240807241452t754d5ef7ya3498c46ad5ba37a@mail.gmail.com> Hola lista... En mensajes anteriores ya se ha hablado del Google App Engine.. Les escribo a todos aquellos interesados en esta novedosa herramienta de Google..en [1] les dejo un sitio de clasificados, uno mas de tantos, pero que tiene como idea novedosa un enlace donde los desarrolladores explican como lo hicieron y dan una introduccion muy buena a aquellos que quieren comenzar a utilizar el Google App Engine para poner tambien su sitio en internet con su lenguaje de programacion favorito, python. El link de la ayuda es este [2] y lo mejor es que esta en completo español. Saludos. [1] http://bazar.appspot.com [2] http://bazar.appspot.com/comosehizo/index.html _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From ematus en gmail.com Thu Jul 24 23:57:20 2008 From: ematus en gmail.com (Eduardo Matus) Date: Thu, 24 Jul 2008 17:57:20 -0400 Subject: Python web In-Reply-To: References: Message-ID: <984ad6a0807241457j8abbdafh27dc9ac6258a199e@mail.gmail.com> para desarrollar WEB, django por lejos.. y lo de pdf, ni idea. Saludos. 2008/7/24 Jose Luis Zarate Cervantes : > > Hola soy novato en Python, quisiera saber que alternativas hay para > desarrollos web bajo python y generacion de reportes PDF. > > > atte > > jose luis zarate cervantes > > _________________________________________________________________ > Los mejores conciertos en exclusiva por MSN in concert > > http://video.msn.com/?mkt=es-mx_______________________________________________ > 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 francofuji en gmail.com Thu Jul 24 23:58:08 2008 From: francofuji en gmail.com (francofuji en gmail.com) Date: Thu, 24 Jul 2008 17:58:08 -0400 Subject: Python web In-Reply-To: References: Message-ID: <30fdaa240807241458m26f1430fhd3c7154d73d15078@mail.gmail.com> echale un vistazo al google app engine [1]. y aqui tienes una ayuda de como usarlo [2] saludos [1] http://code.google.com/appengine [2] http://bazar.appspot.com/comosehizo/index.html 2008/7/24 Jose Luis Zarate Cervantes : > > Hola soy novato en Python, quisiera saber que alternativas hay para desarrollos web bajo python y generacion de reportes PDF. > > > atte > > jose luis zarate cervantes > > _________________________________________________________________ > Los mejores conciertos en exclusiva por MSN in concert > http://video.msn.com/?mkt=es-mx_______________________________________________ > 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 juatman_2000 en yahoo.es Fri Jul 25 00:06:34 2008 From: juatman_2000 en yahoo.es (Juan M Puertas) Date: Thu, 24 Jul 2008 15:06:34 -0700 (PDT) Subject: Python web Message-ID: <911376.94384.qm@web34806.mail.mud.yahoo.com> Hola, Para la web, puedes buscar Django, Turbogears, Pylons, etc ... Para la generación de reportes PDF, existe Reportlab. ----- Mensaje original ---- De: Jose Luis Zarate Cervantes Para: Lista de discusión sobre python en castellano Enviado: jueves, 24 de julio, 2008 23:44:42 Asunto: [Python-es] Python web Hola soy novato en Python, quisiera saber que alternativas hay para desarrollos web bajo python y generacion de reportes PDF. atte jose luis zarate cervantes _________________________________________________________________ Los mejores conciertos en exclusiva por MSN in concert http://video.msn.com/?mkt=es-mx_______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes ¿No te gusta tu dirección de correo? Consigue una que te guste de verdad - millones de direcciones de correo disponibles en Yahoo! http://es.docs.yahoo.com/mail/nueva_direccion.html _______________________________________________ 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 Jul 25 00:13:38 2008 From: francisco.palm en gmail.com (Francisco Palm) Date: Fri, 25 Jul 2008 17:43:38 +1930 Subject: Python web In-Reply-To: References: Message-ID: Te recomiendo que revises Django (http://www.djangoproject.com/) y web2py! (http://mdp.cti.depaul.edu/) Saludos F. Palm 2008/7/25 Jose Luis Zarate Cervantes : > > Hola soy novato en Python, quisiera saber que alternativas hay para desarrollos web bajo python y generacion de reportes PDF. > > > atte > > jose luis zarate cervantes > > _________________________________________________________________ > Los mejores conciertos en exclusiva por MSN in concert > http://video.msn.com/?mkt=es-mx_______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- -------------------------------------- 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 ing_emanuels en hotmail.com Fri Jul 25 00:34:01 2008 From: ing_emanuels en hotmail.com (Emanuel Sotelo) Date: Thu, 24 Jul 2008 17:34:01 -0500 Subject: de excel a word mediante python Message-ID: hola de nuevo queria que me ayudaran esto realiaando un codigo sencillo en cual creo un documento de excel se agregan los datos desde python solamente un saludo inicial, un numero cualquiera, y en un campo contiene una formula el cual multiplica el numero anterior por otro, al final del codigo se guarda el documeno de excel, en este mismo progama creo un documento de word, el cual tiene un saludo, lo que quiero es que en la parte central del documento de word y en unos reglones mas abajo se imprima el numero resultante de la formula y despues en el mismo programa que lo mande a imprimir en la impresora. este es el codigo que tengo: from win32com.client import Dispatch MYDIR='C:\\Documents and Settings\\Administrador\\Mis documentos' xl= Dispatch("Excel.Application") xl.Visible=1 xl.Workbooks.Add() xl.Cells(1,2).Value="Datos de excel enviados a word" xl.Cells(2,4).Value=3 xl.Cells(3,6).Formula='=D2*10' xl.SaveAs(MYDIR+'\\excelword.doc') wordapp = Dispatch("Word.Application") wordapp.Visible = 1 worddoc = wordapp.Documents.Add() rango = worddoc.Range(0,0) rango.InsertBefore('hola vamos a traer un dato de excel ponerlo en word e imprimirlo') worddoc.SaveAs(MYDIR+ '\\wordexcel.doc') yo se que tiene muchas fallas este codigo asi que tambien acepto sugerencias de mejorameinto de este codigo _________________________________________________________________ Los mejores conciertos en exclusiva por MSN in concert http://video.msn.com/?mkt=es-mx_______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From eduardo.ulfe en gmail.com Fri Jul 25 01:28:45 2008 From: eduardo.ulfe en gmail.com (Eduardo) Date: Thu, 24 Jul 2008 20:28:45 -0300 Subject: de excel a word mediante python In-Reply-To: References: Message-ID: <29e33c430807241628y2bb626c8j4b2f9c5119897871@mail.gmail.com> Uh, no sabia q habia librerias para manejar el office. Hay tambien para openoffice ?? Me interesa el generar planillas de calculo desde Python El día 24 de julio de 2008 19:34, Emanuel Sotelo escribió: > > hola de nuevo queria que me ayudaran esto realiaando un codigo sencillo en > cual creo un documento de > excel se agregan los datos desde python solamente un saludo inicial, un > numero cualquiera, y en un > campo contiene una formula el cual multiplica el numero anterior por otro, > al final del codigo se guarda > el documeno de excel, en este mismo progama creo un documento de word, el > cual tiene un saludo, lo > que quiero es que en la parte central del documento de word y en unos > reglones mas abajo se imprima > el numero resultante de la formula y despues en el mismo programa que lo > mande a imprimir en la > impresora. > este es el codigo que tengo: > > from win32com.client import Dispatch > MYDIR='C:\\Documents and Settings\\Administrador\\Mis documentos' > xl= Dispatch("Excel.Application") > xl.Visible=1 > xl.Workbooks.Add() > xl.Cells(1,2).Value="Datos de excel enviados a word" > xl.Cells(2,4).Value=3 > xl.Cells(3,6).Formula='=D2*10' > xl.SaveAs(MYDIR+'\\excelword.doc') > > wordapp = Dispatch("Word.Application") > wordapp.Visible = 1 > worddoc = wordapp.Documents.Add() > rango = worddoc.Range(0,0) > rango.InsertBefore('hola vamos a traer un dato de excel ponerlo en word e > imprimirlo') > worddoc.SaveAs(MYDIR+ '\\wordexcel.doc') > > > > yo se que tiene muchas fallas este codigo asi que tambien acepto > sugerencias de mejorameinto de este codigo > > _________________________________________________________________ > Los mejores conciertos en exclusiva por MSN in concert > > http://video.msn.com/?mkt=es-mx_______________________________________________ > Lista de correo Python-es > http://listas.aditel.org/listinfo/python-es > FAQ: http://listas.aditel.org/faqpyes > -- Sea Seeder Voluntario y ayude a la Humanidad. Campaña contra el 99,9% completado. _______________________________________________ Lista de correo Python-es http://listas.aditel.org/listinfo/python-es FAQ: http://listas.aditel.org/faqpyes From miuler en gmail.com Fri Jul 25 03:07:09 2008 From: miuler en gmail.com (Hector Miuler Malpica Gallegos) Date: Thu, 24 Jul 2008 20:07:09 -0500 Subject: Zope, plantillas, zpt, tal y javascript Message-ID: <1216948029.21267.8.camel@miuler.miuler.dyndns.org> Hola amigos, tengo un problema, estoy haciendo una pagina muy sencilla para mostrar data usando javascript, y justo aquí tengo el problema, no se puedo añadir ningún tag en el javascript, ¿como se puede crear data dinamicamente en javascript con plantillas tal?, es más tengo un simple ejemplo: Eso funciona, pero esto no funciona: y me sale el siguiente error en zope: ... ... File "/home/miuler/buildout-eggs/tmpXXriEO/zope.pagetemplate-3.4.0-py2.5.egg/zope/pagetemplate/pagetemplate.py", line 109, in pt_render - Warning: Compilation failed - Warning: : Open tags , ,