From gheize en gmail.com Sat Sep 1 04:29:19 2007 From: gheize en gmail.com (Guillermo Heizenreder) Date: Fri, 31 Aug 2007 23:29:19 -0300 Subject: consulta sobre pygtk Message-ID: <1188613759.7952.8.camel@leinad-desktop> Hola lista! Estoy comenzando a programar con esta librería. En principio es mi consulta es la siguiente: Tengo un formulario de entrada, al completarse se verifican si los datos son validos y ésto me permite acceder a completar dos datos más: [1] gtk.Entry : es un nombre. [2] gtk.TextView : es una observacion. Mi solución como newie fué hacer dos diálogos separados. Pero mi consulta es si se podría en el mismo dialogo poner todo junto. Por defecto [1] y [2] deben ser ocultos hasta que se verifiquen los datos. Alguién lo ah hecho ó tiene algún tutorial que me pueda pasar?. No se si entiende lo que quiero hacer, cualquier cosa me avisan y me explico más o les mando un poco de código. Gracias por sus respuestas! Saludos! -- Heizenreder Guillermo http://code.google.com/u/gheize/ ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From arnau en ehas.org Sat Sep 1 10:59:04 2007 From: arnau en ehas.org (Arnau Sanchez) Date: Sat, 01 Sep 2007 10:59:04 +0200 Subject: consulta sobre pygtk In-Reply-To: <1188613759.7952.8.camel@leinad-desktop> References: <1188613759.7952.8.camel@leinad-desktop> Message-ID: <46D929D8.3000002@ehas.org> Guillermo Heizenreder escribió: > Tengo un formulario de entrada, al completarse se verifican si los datos > son validos y ésto me permite acceder a completar dos datos más: > [1] gtk.Entry : es un nombre. > [2] gtk.TextView : es una observacion. > > Mi solución como newie fué hacer dos diálogos separados. Pero mi > consulta es si se podría en el mismo dialogo poner todo junto. > Por defecto [1] y [2] deben ser ocultos hasta que se verifiquen los > datos. > Alguién lo ah hecho ó tiene algún tutorial que me pueda pasar?. > No se si entiende lo que quiero hacer, cualquier cosa me avisan y me > explico más o les mando un poco de código. Pues casi que sí, manda algo de código (corto pero funcional), con lo que cuentas es difícil hacerse una idea de qué quieres. Si el Entry y el TextView están relacionados, está claro que tienen que estar en el mismo diálogo, y eso se consigue fácilmente añadiéndolos en una misma caja contenedora (cómo hacerlo dependerá de los detalles de tu código). Y para tuturiales, el oficial, de largo el más completo que encontrarás por ahí: http://www.pygtk.org/pygtk2tutorial-es/index.html Mírate también algo del FAQ: http://pythonesfaq.k-rolus.net/#index68h3 ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From joana_mendaro en hotmail.com Sat Sep 1 11:43:18 2007 From: joana_mendaro en hotmail.com (joana salgado gomez) Date: Sat, 1 Sep 2007 09:43:18 +0000 Subject: expresiones regulares In-Reply-To: <2c9fb0dd0708311158q7501c5dbo101dac924b942c82@mail.gmail.com> References: <2c9fb0dd0708311158q7501c5dbo101dac924b942c82@mail.gmail.com> Message-ID: Hola gracias por responder pero me ha surgido una duda. Me has dicho que para comprobar si solo hay letras y números se usa "w+" pero y para comprobar que solo haya letras(considerando como letras las vocales acentuadas y la eñe en sistemas en castellano.) y espacios en blanco, por ejemplo 'José Aldaña'.> Date: Fri, 31 Aug 2007 20:58:00 +0200> From: pych3m4 en gmail.com> To: python-es en aditel.org> Subject: Re: [Python-es] expresiones regulares> > El 31/08/07, joana salgado gomez escribió:> >> > hola!!! mi pregunta es la siguiente:> >> > Para comparar que un variable solo haya letras y numeros lo comparo con lo siguietne un programa que he hecho: [A-Za-z0-9] pro para comprobar que solo haya numeros y '/' con que lo debo de comparar????> > Este sería el algoritmo:> >> > import redef validar(s, regexp, errmsg): if not re.match(regexp, s): raise ValueError, "Error validando '%s': %s"%(errmsg, s)> >> >> > validar(clave, "[A-Za-z0-9]"clave")> > Resulta más corto usar "\w+" para comprobar si sólo hay letras y> números, aunque con la diferencia de que también considera letras las> vocales acentuadas y la eñe en sistemas en castellano.> > Para sólo números y '/' sería simplemente: "[0-9/]+" ó "[\d/]+"> _______________________________________________> Python-es mailing list> Python-es en aditel.org> http://listas.aditel.org/listinfo/python-es _________________________________________________________________ Prueba algunos de los nuevos servicios en línea que te ofrece Windows Live Ideas: tan nuevos que ni siquiera se han publicado oficialmente todavía. http://ideas.live.com From foxandxss en gmail.com Sat Sep 1 12:51:35 2007 From: foxandxss en gmail.com (Jesus Rodriguez) Date: Sat, 1 Sep 2007 12:51:35 +0200 Subject: consulta sobre pygtk In-Reply-To: <46D929D8.3000002@ehas.org> References: <1188613759.7952.8.camel@leinad-desktop> <46D929D8.3000002@ehas.org> Message-ID: <2a1edb210709010351y16b8bb4dt8413fe0699eb85c6@mail.gmail.com> Puedes meter esas 2 cosas en una caja tipo HBOX o VBOX y ponerle el atributo (a la caja) visible en False, cuando compruebes todo, la pones visible. From gheize en gmail.com Sat Sep 1 14:46:36 2007 From: gheize en gmail.com (Guillermo Heizenreder) Date: Sat, 01 Sep 2007 09:46:36 -0300 Subject: consulta sobre pygtk In-Reply-To: <2a1edb210709010351y16b8bb4dt8413fe0699eb85c6@mail.gmail.com> References: <1188613759.7952.8.camel@leinad-desktop> <46D929D8.3000002@ehas.org> <2a1edb210709010351y16b8bb4dt8413fe0699eb85c6@mail.gmail.com> Message-ID: <1188650796.7952.11.camel@leinad-desktop> El sáb, 01-09-2007 a las 12:51 +0200, Jesus Rodriguez escribió: > Puedes meter esas 2 cosas en una caja tipo HBOX o VBOX y ponerle el atributo > (a la caja) visible en False, cuando compruebes todo, la pones visible. :) Justo lo que necesitaba. Muchas gracias por sus respuestas. Saludos! > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es -- Heizenreder Guillermo http://code.google.com/u/gheize/ ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From pych3m4 en gmail.com Sat Sep 1 19:57:05 2007 From: pych3m4 en gmail.com (Chema Cortes) Date: Sat, 1 Sep 2007 19:57:05 +0200 Subject: expresiones regulares In-Reply-To: References: <2c9fb0dd0708311158q7501c5dbo101dac924b942c82@mail.gmail.com> Message-ID: <2c9fb0dd0709011057j7286d59bwe6ea8d693a957a9@mail.gmail.com> El 1/09/07, joana salgado gomez escribió: > Me has dicho que para comprobar si solo hay letras y números se usa "w+" pero y para comprobar que solo haya letras(considerando como letras las vocales acentuadas y la eñe en sistemas en castellano.) y espacios en blanco, por ejemplo 'José Aldaña'. No hay nada especial para este caso. Si el "locale" funcionara como debe, serviría la cadena string.letters para crear el patrón '['+string.letters+']' La solución que te aconsejo es indicar explícitamente los caracteres: [a-zA-ZáéíóúñÑ ] Quizás con la llegada del python3000 se implementen las expresiones regulares en unicode (UTS#18). Entonces se podría buscar sólo letras con este patrón: "\p{letter}" e incluso considerar que estamos usando el español tradicional para que tome como una sóla letra las letras dobles 'll', 'rr' y 'ch'. UTC#18: http://www.unicode.org/reports/tr18/ From joana_mendaro en hotmail.com Sat Sep 1 20:21:24 2007 From: joana_mendaro en hotmail.com (joana salgado gomez) Date: Sat, 1 Sep 2007 18:21:24 +0000 Subject: expresiones regulares In-Reply-To: <2c9fb0dd0709011057j7286d59bwe6ea8d693a957a9@mail.gmail.com> References: <2c9fb0dd0708311158q7501c5dbo101dac924b942c82@mail.gmail.com> <2c9fb0dd0709011057j7286d59bwe6ea8d693a957a9@mail.gmail.com> Message-ID: Dado que tiene que ver con el tema, voy a hacer la pregunta con el mismo thread. Quisiera hacer una select en my base de datos pasandole un valor por ejemplo, 'pimentón' y que me saque la informacion referente a ello la cual logicamente esta en una tabala,hasta aqui no tengo problema. este surge cuando pimentón en la base de datos está sin tilde, ya que no lo reconoce, es decir me da que pimentón!=pimenton como puedo hacer para que sean iguales????? > Date: Sat, 1 Sep 2007 19:57:05 +0200> From: pych3m4 en gmail.com> To: python-es en aditel.org> Subject: Re: [Python-es] expresiones regulares> > El 1/09/07, joana salgado gomez escribió:> > > Me has dicho que para comprobar si solo hay letras y números se usa "w+" pero y para comprobar que solo haya letras(considerando como letras las vocales acentuadas y la eñe en sistemas en castellano.) y espacios en blanco, por ejemplo 'José Aldaña'.> > No hay nada especial para este caso. Si el "locale" funcionara como> debe, serviría la cadena string.letters para crear el patrón> '['+string.letters+']'> > La solución que te aconsejo es indicar explícitamente los caracteres:> > [a-zA-ZáéíóúñÑ ]> > > Quizás con la llegada del python3000 se implementen las expresiones> regulares en unicode (UTS#18). Entonces se podría buscar sólo letras> con este patrón: "\p{letter}" e incluso considerar que estamos> usando el español tradicional para que tome como una sóla letra las> letras dobles 'll', 'rr' y 'ch'.> > UTC#18: http://www.unicode.org/reports/tr18/> _______________________________________________> Python-es mailing list> Python-es en aditel.org> http://listas.aditel.org/listinfo/python-es _________________________________________________________________ Prueba algunos de los nuevos servicios en línea que te ofrece Windows Live Ideas: tan nuevos que ni siquiera se han publicado oficialmente todavía. http://ideas.live.com From rabs en dimension-virtual.com Sat Sep 1 22:44:14 2007 From: rabs en dimension-virtual.com (=?iso-8859-1?q?Ra=FAl_Alexis_Betancor_Santana?=) Date: Sat, 1 Sep 2007 20:44:14 +0000 Subject: expresiones regulares In-Reply-To: References: <2c9fb0dd0709011057j7286d59bwe6ea8d693a957a9@mail.gmail.com> Message-ID: <200709012044.15655.rabs@dimension-virtual.com> El Saturday 01 September 2007 18:21:24 joana salgado gomez escribió: > Dado que tiene que ver con el tema, voy a hacer la pregunta con el mismo > thread. Aunque sea totalmente fuera de tema ... ¿podrías por favor revisar porqué demonios tu MUA convierte el correo al que respondes en algo ilegible por favor? -- Saludos. Raúl Alexis Betancor Santana Dimensión Virtual S.L. From pych3m4 en gmail.com Sun Sep 2 05:48:13 2007 From: pych3m4 en gmail.com (Chema Cortes) Date: Sun, 2 Sep 2007 05:48:13 +0200 Subject: expresiones regulares In-Reply-To: References: <2c9fb0dd0708311158q7501c5dbo101dac924b942c82@mail.gmail.com> <2c9fb0dd0709011057j7286d59bwe6ea8d693a957a9@mail.gmail.com> Message-ID: <2c9fb0dd0709012048y413ca14el81e48fcf04f9cb02@mail.gmail.com> El 1/09/07, joana salgado gomez escribió: > > Dado que tiene que ver con el tema, voy a hacer la pregunta con el mismo thread. > > Quisiera hacer una select en my base de datos pasandole un valor por ejemplo, 'pimentón' y que me saque la informacion referente a ello la cual logicamente esta en una tabala,hasta aqui no tengo problema. este surge cuando pimentón en la base de datos está sin tilde, ya que no lo reconoce, es decir me da que pimentón!=pimenton como puedo hacer para que sean iguales????? Depende muuuuucho de tu gestor de base de datos. Tal vez encuentres respuestas en estos hilos de la lista, donde te respondieron a ésta misma pregunta: http://listas.aditel.org/archivos/python-es/2007-April/021820.html http://listas.aditel.org/archivos/python-es/2007-March/021643.html Parece que sigues dándole vueltas a la misma cuestión. Si no te quedó claro, tal vez deberías ampliar lo que te pasa para así darte respuestas más concretas. From fidita48 en hotmail.com Sun Sep 2 14:54:09 2007 From: fidita48 en hotmail.com (=?iso-8859-1?Q?Idoia_Villaci=E1n_Z=E1rate?=) Date: Sun, 2 Sep 2007 14:54:09 +0200 Subject: Coger datos de una ventana en PSP Message-ID: Hola, Gracias Chema, ya puse lo que me dijiste, y si me salio la ventana Abrir en PSP:
Y ahora en mi ventana me sale un cuadro en blanco y el boton Examinar,cuando pincho en el boton examinar, me sale la ventana abrir y escojo el fichero que quiero, me sale en el cuadro que te he comentado anteriormente el path de ese fichero, que es lo que yo quiero. Mi pregunta es, como puedo coger la informacion que me sale en ese cuadro para poder guardarlo? Gracias _________________________________________________________________ Consigue el nuevo Windows Live Messenger http://get.live.com/messenger/overview From joana_mendaro en hotmail.com Sun Sep 2 15:53:00 2007 From: joana_mendaro en hotmail.com (joana salgado gomez) Date: Sun, 2 Sep 2007 13:53:00 +0000 Subject: expresiones regulares In-Reply-To: <2c9fb0dd0709012048y413ca14el81e48fcf04f9cb02@mail.gmail.com> References: <2c9fb0dd0708311158q7501c5dbo101dac924b942c82@mail.gmail.com> <2c9fb0dd0709011057j7286d59bwe6ea8d693a957a9@mail.gmail.com> <2c9fb0dd0709012048y413ca14el81e48fcf04f9cb02@mail.gmail.com> Message-ID: Gracias por refresercarme la memoria. Mi opcion a sido la de elgir la siguiente función: def soloascii(uni): assert isinstance(uni, unicode) return unicodedata.normalize("NFKD", uni).encode("ascii","ignore") Pero ahora mi duda es: para convertir una valor en unicode se hace : u"pimentón" pero y para convertir una variable en unicode por ejemplo: x=pimentón convertir x en unicode???? sera una tonteria pero no lo encuentropor ningun lado > Date: Sun, 2 Sep 2007 05:48:13 +0200> From: pych3m4 en gmail.com> To: python-es en aditel.org> Subject: Re: [Python-es] expresiones regulares> > El 1/09/07, joana salgado gomez escribió:> >> > Dado que tiene que ver con el tema, voy a hacer la pregunta con el mismo thread.> >> > Quisiera hacer una select en my base de datos pasandole un valor por ejemplo, 'pimentón' y que me saque la informacion referente a ello la cual logicamente esta en una tabala,hasta aqui no tengo problema. este surge cuando pimentón en la base de datos está sin tilde, ya que no lo reconoce, es decir me da que pimentón!=pimenton como puedo hacer para que sean iguales?????> > Depende muuuuucho de tu gestor de base de datos. Tal vez encuentres> respuestas en estos hilos de la lista, donde te respondieron a ésta> misma pregunta:> > http://listas.aditel.org/archivos/python-es/2007-April/021820.html> http://listas.aditel.org/archivos/python-es/2007-March/021643.html> > Parece que sigues dándole vueltas a la misma cuestión. Si no te quedó> claro, tal vez deberías ampliar lo que te pasa para así darte> respuestas más concretas.> _______________________________________________> Python-es mailing list> Python-es en aditel.org> http://listas.aditel.org/listinfo/python-es _________________________________________________________________ Busca desde cualquier página Web con una protección excepcional. Consigue la Barra de herramientas de Windows Live hoy mismo y GRATUITAMENTE. http://www.toolbar.live.com From pych3m4 en gmail.com Sun Sep 2 18:59:04 2007 From: pych3m4 en gmail.com (Chema Cortes) Date: Sun, 2 Sep 2007 18:59:04 +0200 Subject: expresiones regulares In-Reply-To: References: <2c9fb0dd0708311158q7501c5dbo101dac924b942c82@mail.gmail.com> <2c9fb0dd0709011057j7286d59bwe6ea8d693a957a9@mail.gmail.com> <2c9fb0dd0709012048y413ca14el81e48fcf04f9cb02@mail.gmail.com> Message-ID: <2c9fb0dd0709020959m67166de4k606bd7d098034f59@mail.gmail.com> El 2/09/07, joana salgado gomez escribió: > > Gracias por refresercarme la memoria. Mi opcion a sido la de elgir la siguiente función: > > def soloascii(uni): assert isinstance(uni, unicode) return unicodedata.normalize("NFKD", uni).encode("ascii","ignore") > > > Pero ahora mi duda es: > para convertir una valor en unicode se hace : u"pimentón" pero y para convertir una > variable en unicode por ejemplo: > x=pimentón > > convertir x en unicode???? > sera una tonteria pero no lo encuentropor ningun lado Creo que no te pillo bien. Tal vez estás buscando la "función" unicode() (siendo precisos, en realidad es un constructor para la clase "unicode"). unicode(x,"utf8") #para convertir a unicode con x codificado en utf8 unicode(x,"latin1") #idem, para x codificado en latin1 En el tutorial te explica cómo crear estas cadenas de unicodes. From joana_mendaro en hotmail.com Sun Sep 2 20:09:20 2007 From: joana_mendaro en hotmail.com (joana salgado gomez) Date: Sun, 2 Sep 2007 18:09:20 +0000 Subject: expresiones regulares In-Reply-To: <2c9fb0dd0709020959m67166de4k606bd7d098034f59@mail.gmail.com> References: <2c9fb0dd0708311158q7501c5dbo101dac924b942c82@mail.gmail.com> <2c9fb0dd0709011057j7286d59bwe6ea8d693a957a9@mail.gmail.com> <2c9fb0dd0709012048y413ca14el81e48fcf04f9cb02@mail.gmail.com> <2c9fb0dd0709020959m67166de4k606bd7d098034f59@mail.gmail.com> Message-ID: unicode(x,"utf8") #para convertir a unicode con x codificado en utf8 unicode(x,"latin1") #idem, para x codificado en latin1 si pero esto realmente no funciona con todos son todo: por ejemplo: x='pimentón' unicode(x,"utf8") #para convertir a unicode con x codificado en utf8 Traceback (most recent call last): File "", line 1, in ? unicode(x,"utf8") File "C:\Python24\lib\encodings\utf_8.py", line 16, in decode return codecs.utf_8_decode(input, errors, True)UnicodeDecodeError: 'utf8' codec can't decode bytes in position 6-7: unexpected end of data > Date: Sun, 2 Sep 2007 18:59:04 +0200> From: pych3m4 en gmail.com> To: python-es en aditel.org> Subject: Re: [Python-es] expresiones regulares> > El 2/09/07, joana salgado gomez escribió:> >> > Gracias por refresercarme la memoria. Mi opcion a sido la de elgir la siguiente función:> >> > def soloascii(uni): assert isinstance(uni, unicode) return unicodedata.normalize("NFKD", uni).encode("ascii","ignore")> >> >> > Pero ahora mi duda es:> > para convertir una valor en unicode se hace : u"pimentón" pero y para convertir una> > variable en unicode por ejemplo:> > x=pimentón> >> > convertir x en unicode????> > sera una tonteria pero no lo encuentropor ningun lado> > Creo que no te pillo bien. Tal vez estás buscando la "función"> unicode() (siendo precisos, en realidad es un constructor para la> clase "unicode").> > unicode(x,"utf8") #para convertir a unicode con x codificado en utf8> unicode(x,"latin1") #idem, para x codificado en latin1> > En el tutorial te explica cómo crear estas cadenas de unicodes.> _______________________________________________> Python-es mailing list> Python-es en aditel.org> http://listas.aditel.org/listinfo/python-es _________________________________________________________________ Consigue el nuevo Windows Live Messenger http://get.live.com/messenger/overview From bameda en gmail.com Mon Sep 3 03:23:01 2007 From: bameda en gmail.com (bameda) Date: Mon, 3 Sep 2007 03:23:01 +0200 Subject: expresiones regulares In-Reply-To: References: <2c9fb0dd0708311158q7501c5dbo101dac924b942c82@mail.gmail.com> <2c9fb0dd0709011057j7286d59bwe6ea8d693a957a9@mail.gmail.com> <2c9fb0dd0709012048y413ca14el81e48fcf04f9cb02@mail.gmail.com> Message-ID: El 2/09/07, joana salgado gomez escribió: > Pero ahora mi duda es: > para convertir una valor en unicode se hace : u"pimentón" pero y para convertir una > variable en unicode por ejemplo: > x=pimentón > > convertir x en unicode???? > sera una tontería pero no lo encuentropor ningun lado Para mi este es uno de los mejores tutoriales http://www.reportlab.com/i18n/python_unicode_tutorial.html Es algo en lo que se tenía que trabajar, y mucho, para las nueva versión de python. Personalmente creo que es un coñazo, y como uses librerías ajenas se complica el asunto. SALUDOS -- ____________________________________________ | | David Barragán Merino | E-mail: bameda en ARROBA@gmail.com | Ingeniería Informática | Universidad Carlos III Madrid |____________________________________________ ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From pych3m4 en gmail.com Mon Sep 3 02:59:00 2007 From: pych3m4 en gmail.com (Chema Cortes) Date: Mon, 3 Sep 2007 02:59:00 +0200 Subject: expresiones regulares In-Reply-To: References: <2c9fb0dd0708311158q7501c5dbo101dac924b942c82@mail.gmail.com> <2c9fb0dd0709011057j7286d59bwe6ea8d693a957a9@mail.gmail.com> <2c9fb0dd0709012048y413ca14el81e48fcf04f9cb02@mail.gmail.com> <2c9fb0dd0709020959m67166de4k606bd7d098034f59@mail.gmail.com> Message-ID: <2c9fb0dd0709021759u4b7429cwf156e5d786eead9d@mail.gmail.com> El 2/09/07, joana salgado gomez escribió: > > unicode(x,"utf8") #para convertir a unicode con x codificado en utf8 unicode(x,"latin1") #idem, para x codificado en latin1 > > si pero esto realmente no funciona con todos son todo: > por ejemplo: > x='pimentón' > unicode(x,"utf8") #para convertir a unicode con x codificado en utf8 > > Traceback (most recent call last): File "", line 1, in ? unicode(x,"utf8") File "C:\Python24\lib\encodings\utf_8.py", line 16, in decode return codecs.utf_8_decode(input, errors, True)UnicodeDecodeError: 'utf8' codec can't decode bytes in position 6-7: unexpected end of data Bueno, ya vamos aproximándonos a la "pregunta" que realmente querías realizar :-) El error te indica que la codificación que usas para x no parece ser utf8. Busca cuál es la codificación de tu sistema operativo y, si usas un editor, mira qué códificación usa el editor para guardar los ficheros. From pych3m4 en gmail.com Mon Sep 3 04:21:46 2007 From: pych3m4 en gmail.com (Chema Cortes) Date: Mon, 3 Sep 2007 04:21:46 +0200 Subject: Coger datos de una ventana en PSP In-Reply-To: References: Message-ID: <2c9fb0dd0709021921q4369dcfcn4e7acdf2fc8de15a@mail.gmail.com> El 2/09/07, Idoia Villacián Zárate escribió: > > > Hola, > > Gracias Chema, ya puse lo que me dijiste, y si me salio la ventana Abrir en PSP: > >
> Y ahora en mi ventana me sale un cuadro en blanco y el boton Examinar,cuando pincho en el boton examinar, me sale la ventana abrir y escojo el fichero que quiero, me sale en el cuadro que te he comentado anteriormente el path de ese fichero, que es lo que yo quiero. Mi pregunta es, como puedo coger la informacion que me sale en ese cuadro para poder guardarlo? Antes de nada, avisarte que, aunque usamos el español como idioma común, hay ciertas palabras que pueden malinterpretarse en esta lista. Una de ellas es el verbo "coger". :-P Entrando a tu pregunta, tiene cierta ambigüedad. Si lo que deseas es guardar el path completo del fichero, decirte que es algo "imposible", y que se consideraría un fallo de seguridad del navegador si enviara esa información. Si lo que deseas es recibir el fichero del cliente, te pongo mejor un ejemplo:

<% from mod_python import util fs=util.FieldStorage(req) if fs.has_key("html_file"): field=fs["html_file"] %>

Fichero: <%= field.filename %>

<%= field.file.read() %>
<% %> From jileon en parcan.es Mon Sep 3 11:57:14 2007 From: jileon en parcan.es (Juan Ignacio Rodriguez de Leon) Date: Mon, 03 Sep 2007 10:57:14 +0100 Subject: Primera version alfa de Python 3000 Message-ID: <46DBDA7A.1000400@parcan.es> Guido Van Rossum ha anunciado la primera versión alfa de python 3000. Podeis ver más detalles y algunos enlaces interesantes en: Si puedo, pondré en breve una entrada con las novedades en python 3k, como hice ya es su día con las diferencias entre las versiones 2.5 y 2.4. Lo anunciaré aquí, si a nadie le molesta. Un saludo y comprensión para aquellos que se estén incorporando al trabajo :-) From pych3m4 en gmail.com Mon Sep 3 14:22:14 2007 From: pych3m4 en gmail.com (Chema Cortes) Date: Mon, 3 Sep 2007 14:22:14 +0200 Subject: Primera version alfa de Python 3000 In-Reply-To: <46DBDA7A.1000400@parcan.es> References: <46DBDA7A.1000400@parcan.es> Message-ID: <2c9fb0dd0709030522t2e4e90ddl2d3c3b20d3efafdd@mail.gmail.com> El 3/09/07, Juan Ignacio Rodriguez de Leon escribió: > Guido Van Rossum ha anunciado la primera versión alfa de > python 3000. Podeis ver más detalles y algunos enlaces interesantes > en: > > > > Si puedo, pondré en breve una entrada con las novedades en > python 3k, como hice ya es su día con las diferencias entre > las versiones 2.5 y 2.4. Lo anunciaré aquí, si a nadie le > molesta. No olvides reservar espacio también para el 2.6, que está a punto de salir. Creo que lo apropiado en estos momentos con respecto a py3k es seguir las discursiones sobre lo qué debería llevar y lo qué no debería cambiarse (PEP-3100 y PEP-3099, respectivamente). Es curioso que python se esté todavía preparando para dar el salto a la versión 3 cuando muchos lenguajes ya van por su versión 5 o superior. No creo que se deba insistir tanto en que va a ser incompatible con las anteriores versiones, ya que, por lo que he visto, son cambios bastante menores, en comparación, que las revisiones que han sufrido otros lenguajes. Python es uno de los lenguajes con una evolución menos azarosa de los que conozco. > Un saludo y comprensión para aquellos que se estén > incorporando al trabajo :-) También comprensión para los que, como yo, hemos aguantado todo el verano y que próximamente pasaremos a estado latente una temporada :-D From xinxic en gmail.com Mon Sep 3 15:46:50 2007 From: xinxic en gmail.com (Xin) Date: Mon, 3 Sep 2007 15:46:50 +0200 Subject: __future__ Message-ID: <38843d471f221175eda9c3611f291945@GMail.com> Hola, Alguien me puede hacer una pequeña explicación de este "módulo"? Lo he visto algunas veces y no lo entiendo: from __future__ import division Grácias Xin From pych3m4 en gmail.com Mon Sep 3 16:07:13 2007 From: pych3m4 en gmail.com (Chema Cortes) Date: Mon, 3 Sep 2007 16:07:13 +0200 Subject: __future__ In-Reply-To: <38843d471f221175eda9c3611f291945@GMail.com> References: <38843d471f221175eda9c3611f291945@GMail.com> Message-ID: <2c9fb0dd0709030707v417f0194p23608a5073338f3f@mail.gmail.com> El 3/09/07, Xin escribió: > Alguien me puede hacer una pequeña explicación de este "módulo"? > Lo he visto algunas veces y no lo entiendo: > from __future__ import division Es una forma bastante "poética" de incorporar algunos cambios previstos que son resultarán incompatibles con la actual versión de python. Por ejemplo, en el caso de la "true division", la división en python entre números enteros siempre da un número entero. Ésto causa bastante confusión al esperar que el resultado sea con decimales. Se decidió cambiar este comportamiento para que siempre dé resultado reales, empleando un nuevo operador con dos barras // para realizar la división actual. Este nuevo comportamiento de la división saldrá con la versión de python 3.0. Para que se puedan ir adaptando los códigos, es posible añadir esta funcionalidad gracias al módulo __future__ >> 2 / 3 1 >> 2 / 3 1 >> from __future__ import division >> 2 /3 1.5 >> 2 // 3 1 Algunas otras funcionalidades como los generadores y los ámbitos anidados ya están incorporados en las versiones actuales de python, por lo que importarlos del __future__ no tiene ninguna relevacia. From xinxic en gmail.com Mon Sep 3 17:04:24 2007 From: xinxic en gmail.com (Xin) Date: Mon, 3 Sep 2007 17:04:24 +0200 Subject: __future__ In-Reply-To: <2c9fb0dd0709030707v417f0194p23608a5073338f3f@mail.gmail.com> References: <38843d471f221175eda9c3611f291945@GMail.com> <2c9fb0dd0709030707v417f0194p23608a5073338f3f@mail.gmail.com> Message-ID: <81acbde3014449fbe8ef6d11b18a3253@GMail.com> Ei, muchas grácias, Comprovado: > >>> 1/2 > 0 > >>> from __future__ import division > >>> 1/2 > 0.5 Jo pensaba como que no importaba el mòdulo hasta que realmente lo necesitara, cuando lo llamaran en el código o algo por el estilo. Para ahorrar memòria. Xin El 03/09/2007, a les 16:07, en/na Chema Cortes va escriure: > El 3/09/07, Xin escribió: > >> Alguien me puede hacer una pequeña explicación de este "módulo"? >> Lo he visto algunas veces y no lo entiendo: >> from __future__ import division > > Es una forma bastante "poética" de incorporar algunos cambios > previstos que son resultarán incompatibles con la actual versión de > python. > > Por ejemplo, en el caso de la "true division", la división en python > entre números enteros siempre da un número entero. Ésto causa bastante > confusión al esperar que el resultado sea con decimales. Se decidió > cambiar este comportamiento para que siempre dé resultado reales, > empleando un nuevo operador con dos barras // para realizar la > división actual. Este nuevo comportamiento de la división saldrá con > la versión de python 3.0. Para que se puedan ir adaptando los códigos, > es posible añadir esta funcionalidad gracias al módulo __future__ > >>> 2 / 3 > 1 >>> 2 / 3 > 1 >>> from __future__ import division >>> 2 /3 > 1.5 >>> 2 // 3 > 1 > > Algunas otras funcionalidades como los generadores y los ámbitos > anidados ya están incorporados en las versiones actuales de python, > por lo que importarlos del __future__ no tiene ninguna relevacia. > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From martin.artaza en gmail.com Mon Sep 3 17:52:10 2007 From: martin.artaza en gmail.com (Sebastian Martin Artaza Saade) Date: Mon, 3 Sep 2007 12:52:10 -0300 Subject: busqueda en diccionario, pero sin la palabra exacta In-Reply-To: <46D71B20.4020103@ehas.org> References: <73fa00c90708281337g11393a6as9547430dbe499e40@mail.gmail.com> <2c9fb0dd0708291857m413dd32do675a6b869dfd3ac@mail.gmail.com> <73fa00c90708301148o397488cav3b81ec594b11fa1@mail.gmail.com> <46D71B20.4020103@ehas.org> Message-ID: <73fa00c90709030852j3212bae5o248bb3206196ed98@mail.gmail.com> Muchas gracias, a pesar que ya implemente tu solucion (salio directo), voy a tratar de entender la solucion de Chema. De nuevo muchas gracias por tu ayuda. El día 30/08/07, Arnau Sanchez escribió: > > Sebastian Martin Artaza Saade escribió: > > > Muchisima gracias a todos, voy a tratar de entender de una vez por toda > las > > funciones lambda creo que hay radica la orientación a lista o lo que en > > python se puede hacer con pocas lineas que requieren muchas más en otros > > lenguajes > > Tampoco diría que las funciones lambda sean algo básico en Python. De > hecho, a muchos programadores (entre ellos el creador de Python) no les > gusta, y estuvo a punto de desaparecer para Python 3000. > > En cualquier caso es bueno conocerlas. Un ejemplo: > > def funcion(par1, par2): > return par1+par2 > > Es equivalente a: > > funcion = lambda par1, par2: par1+par2 > > Con algunas particularidades de las funciones lambda: > > - Sólo pueden contener una expresión, sin "statements" (construcciones > tipo return, for, if, else, etc). > - Pueden usarse como funciones anónimas, ej: map(lambda x: 2*x, [1,2,3]) > > No obstante, ten cuidado que es fácil acabar abusando de ellas, deberían > usarse con moderación, sólo para tareas simples, o acaban convirtiéndose > en un jeroglífico contrario a la filosofía Python. Especialmente el > hecho de usarlas como funciones anónimas puede dificultar la comprensión > de código; desde que existen las compresiones de lista y los > generadores, el uso de lambdas sin nombre es menos habitual. > > > la solucion de Arnau Sanchez es la que voy a implementar, debido > > a lo que estoy haciendo salio este inconveniente > > Gracias, pero aunque creas que te puede ir bien para este caso concreto, > ten en cuenta que la solución de Chema (basada en extraer el > valor/máscara) es mejor. > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From peralta en aditel.org Mon Sep 3 18:04:27 2007 From: peralta en aditel.org (Luis Peralta) Date: Mon, 3 Sep 2007 18:04:27 +0200 Subject: __future__ In-Reply-To: <81acbde3014449fbe8ef6d11b18a3253@GMail.com> References: <38843d471f221175eda9c3611f291945@GMail.com> <2c9fb0dd0709030707v417f0194p23608a5073338f3f@mail.gmail.com> <81acbde3014449fbe8ef6d11b18a3253@GMail.com> Message-ID: <861451d60709030904vd749b32wc676afacaadf792a@mail.gmail.com> El 3/09/07, Xin escribió: > Jo pensaba como que no importaba el mòdulo hasta > que realmente lo necesitara, cuando lo llamaran en el código > o algo por el estilo. Para ahorrar memòria. > Sin duda la mejor funcionalidad futura son los 'braces' ;) >>> from __future__ import braces File "", line 1 SyntaxError: not a chance >>> Un saludo, -- Luis Peralta http://www.ziritione.org From xinxic en gmail.com Mon Sep 3 21:12:05 2007 From: xinxic en gmail.com (Xin) Date: Mon, 3 Sep 2007 21:12:05 +0200 Subject: Primera version alfa de Python 3000 In-Reply-To: <46DBDA7A.1000400@parcan.es> References: <46DBDA7A.1000400@parcan.es> Message-ID: Llevo des de las 12:00 compilando el punyetero py3k y el checking no termina nunca. Al final se ha ido la luz y lo volveré a probar mañana. > checking for conio.h... no > checking curses.h usability... no > checking curses.h presence... no > checking for curses.h... no > checking direct.h usability... no > checking direct.h presence... no > checking for direct.h... no > checking dlfcn.h usability... yes > checking dlfcn.h presence... yes > checking for dlfcn.h... yes > checking errno.h usability... yes > checking errno.h presence... yes A vosotros os ha tardado tantas horas ? Xin El 03/09/2007, a les 11:57, en/na Juan Ignacio Rodriguez de Leon va escriure: > Guido Van Rossum ha anunciado la primera versión alfa de > python 3000. Podeis ver más detalles y algunos enlaces interesantes > en: > > primera-versin-alfa.html> > > Si puedo, pondré en breve una entrada con las novedades en > python 3k, como hice ya es su día con las diferencias entre > las versiones 2.5 y 2.4. Lo anunciaré aquí, si a nadie le > molesta. > > Un saludo y comprensión para aquellos que se estén > incorporando al trabajo :-) > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From fidita48 en hotmail.com Mon Sep 3 21:56:05 2007 From: fidita48 en hotmail.com (=?iso-8859-1?Q?Idoia_Villaci=E1n_Z=E1rate?=) Date: Mon, 3 Sep 2007 21:56:05 +0200 Subject: Dudas con psp.redirect In-Reply-To: References: Message-ID: Hola, Bueno haber si me explico bien y me entendeis, y me podeis decir si lo que quiero hacer se puede o no, porque en PSP ando un poco perdidilla, lo esencial lo manejo pero ciertas cosas ya no se si se pueden hacer o como se podrian hacer. Hasta ahora cuando tenia una ventana echa en PSP, y el Usuario introducia un valor, no tenia problemas en obtener ese valor y pasarlo a otra ventana de PSP, por ejemplo: psp.redirect('Contrasena.psp?dni=' + form['dni']) , que le pasaria el dni de un Usuario. Se pueden pasar con psp.redirect, dos datos que obtengo de una pantalla?, como el anterior, el dni y otra valor. Nose como se podria hacer o si se puede hacer. Lo que tengo en duda tambien, yo voy a obtener valores de una pantalla y con esos valores voy a llamar a otros programas que me devolveran unos valores, por ejemplo una variable Nombre, como podria pasar esta variable a otra pantalla con el psp.redirect? Gracias _________________________________________________________________ Busca desde cualquier página Web con una protección excepcional. Consigue la Barra de herramientas de Windows Live hoy mismo y GRATUITAMENTE. http://www.toolbar.live.com From arnau en ehas.org Mon Sep 3 21:59:41 2007 From: arnau en ehas.org (Arnau Sanchez) Date: Mon, 03 Sep 2007 21:59:41 +0200 Subject: __future__ In-Reply-To: <861451d60709030904vd749b32wc676afacaadf792a@mail.gmail.com> References: <38843d471f221175eda9c3611f291945@GMail.com> <2c9fb0dd0709030707v417f0194p23608a5073338f3f@mail.gmail.com> <81acbde3014449fbe8ef6d11b18a3253@GMail.com> <861451d60709030904vd749b32wc676afacaadf792a@mail.gmail.com> Message-ID: <46DC67AD.3070705@ehas.org> Luis Peralta escribió: > El 3/09/07, Xin escribió: >> Jo pensaba como que no importaba el mòdulo hasta >> que realmente lo necesitara, cuando lo llamaran en el código >> o algo por el estilo. Para ahorrar memòria. >> > > Sin duda la mejor funcionalidad futura son los 'braces' ;) ¿Cómo? ¿Pero no existían ya? http://www.python.org/doc/Humor.html#parsing From pych3m4 en gmail.com Tue Sep 4 03:46:04 2007 From: pych3m4 en gmail.com (Chema Cortes) Date: Tue, 4 Sep 2007 03:46:04 +0200 Subject: Dudas con psp.redirect In-Reply-To: References: Message-ID: <2c9fb0dd0709031846s57bb7d85p2b2f34a89f068065@mail.gmail.com> El 3/09/07, Idoia Villacián Zárate escribió: > Hola, Bueno haber si me explico bien y me entendeis, y me podeis decir si lo que quiero hacer se puede o no, porque en PSP ando un poco perdidilla, lo esencial lo manejo pero ciertas cosas ya no se si se pueden hacer o como se podrian hacer. Hasta ahora cuando tenia una ventana echa en PSP, y el Usuario introducia un valor, no tenia problemas en obtener ese valor y pasarlo a otra ventana de PSP, por ejemplo: psp.redirect('Contrasena.psp?dni=' + form['dni']) , que le pasaria el dni de un Usuario. Se pueden pasar con psp.redirect, dos datos que obtengo de una pantalla?, como el anterior, el dni y otra valor. Nose como se podria hacer o si se puede hacer. Lo que tengo en duda tambien, yo voy a obtener valores de una pantalla y con esos valores voy a llamar a otros programas que me devolveran unos valores, por ejemplo una variable Nombre, como podria pasar esta variable a otra pantalla con el psp.redirect? Gracias Creo que tienes un fallo de concepto. El psp.redirect sólo se debería usar para indicar al navegador que la página que busca ya no existe en ése lugar. Además, este aviso se debe enviar al principio de todo, antes de enviar ninguna cabecera ni contenido. Para lo que quieres hacer se emplean los formularios (en HTML) en cuyo atributo de acción se coloca la URL donde saltar, y en los campos del formulario los datos que van a pasarse. Creo que deberías aprender a andar antes de correr y mirar cómo se crean los formularios en HTML y cómo se reciben los argumentos con el FieldStorage. From jileon en parcan.es Tue Sep 4 11:06:42 2007 From: jileon en parcan.es (Juan Ignacio Rodriguez de Leon) Date: Tue, 04 Sep 2007 10:06:42 +0100 Subject: Primera version alfa de Python 3000 In-Reply-To: <2c9fb0dd0709030522t2e4e90ddl2d3c3b20d3efafdd@mail.gmail.com> References: <46DBDA7A.1000400@parcan.es> <2c9fb0dd0709030522t2e4e90ddl2d3c3b20d3efafdd@mail.gmail.com> Message-ID: <46DD2022.5040600@parcan.es> Chema Cortes escribió: > No olvides reservar espacio también para el 2.6, que está a punto de salir. Cierto, cierto, se me acumula el trabajo... > > Creo que lo apropiado en estos momentos con respecto a py3k es seguir > las discursiones sobre lo qué debería llevar y lo qué no debería > cambiarse (PEP-3100 y PEP-3099, respectivamente). > > Es curioso que python se esté todavía preparando para dar el salto a > la versión 3 cuando muchos lenguajes ya van por su versión 5 o > superior. No creo que se deba insistir tanto en que va a ser > incompatible con las anteriores versiones, ya que, por lo que he > visto, son cambios bastante menores, en comparación, que las > revisiones que han sufrido otros lenguajes. Python es uno de los > lenguajes con una evolución menos azarosa de los que conozco. Si, en el blog puse una coña con lo de la maldición china "Ojala vivas tiempos interesantes" y a lo peor asusté a algunos. Cuando hable en detalle de los cambios haré incapié en que la migración no será para nada traumática. Lo de las versiones confunde, porque Python tiene muchísimas revisiones menores, que muchos lenguajes no tiene, o que directamente se saltan números, como pasó con Visual C, creo recordar, que saltó de la 2.0 a la 4.0 por el morro. >> Un saludo y comprensión para aquellos que se estén >> incorporando al trabajo :-) > > También comprensión para los que, como yo, hemos aguantado todo el > verano y que próximamente pasaremos a estado latente una temporada :-D No, para esos envidia infinita :-) Felices vacaciones, o estado latente, o periodo estival o como se diga. Si vienes a Tenerife, avisa, que unas cervezas tienes invitadas, como mínimo, por todas las dudas que has resuelto en esta lista. > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es From gheize en gmail.com Tue Sep 4 03:35:51 2007 From: gheize en gmail.com (Guillermo Heizenreder) Date: Mon, 03 Sep 2007 22:35:51 -0300 Subject: [pyes] problema pygtk sobre de ListStore + TreeView Message-ID: <1188869751.31670.1.camel@leinad-desktop> Hola lista! :) Estoy teniendo un problema, en realidad no puedo implementar lo siguiente: "Necesito saber cuándo un usuario selecciona ó clikea una fila de mi TreeView, ya que con este evento necesito ir mostrando un hbox que está oculto con los datos de lo antes seleccionado". Estudiando el tutorial de pygtk[1] en el capítulo TreeView Signals, observé que existe una que se llama "select-cursor-row". Pero no entiendo su uso. Después en las FAQ's de pygtk[2] hay una interesante: - How do I select [or edit] a row in my TreeView? Pensé que iba a ser mi respuesta, pero no :( Les dejó como defino mi ListStore + TreeView ... self.gladefile = "ghhp.glade" self.wTree = gtk.glade.XML(self.gladefile,"consult_intervention") self.find_view = self.wTree.get_widget("treeview17") self.add_find_column("Ticket", 0) self.add_find_column("Legajo",1) self.add_find_column("Clasificacion actual\ndel ticket", 2) self.find_list = gtk.ListStore(str, str, str) self.find_view.set_model(self.find_list) ... Nota_1: self.add_find_column = agrega la columna en la posición pasada por parámetro. Alguién sabe cómo usar esa señal?, ó tal vez otra?. Gracias de antemano. Saludos! [1] http://www.pygtk.org/pygtk2tutorial/sec-TreeViewSignals.html [2] http://faq.pygtk.org/index.py?req=show&file=faq13.032.htp -- Heizenreder Guillermo http://code.google.com/u/gheize/ ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From arnau en ehas.org Tue Sep 4 12:33:35 2007 From: arnau en ehas.org (Arnau Sanchez) Date: Tue, 04 Sep 2007 12:33:35 +0200 Subject: [pyes] problema pygtk sobre de ListStore + TreeView In-Reply-To: <1188869751.31670.1.camel@leinad-desktop> References: <1188869751.31670.1.camel@leinad-desktop> Message-ID: <46DD347F.9050605@ehas.org> Guillermo Heizenreder escribió: > "Necesito saber cuándo un usuario selecciona ó clikea una fila de mi > TreeView, ya que con este evento necesito ir mostrando un hbox que está > oculto con los datos de lo antes seleccionado". Todo TreeView tiene asociado un objeto TreeSelection, que obtienes con esta función: http://www.pygtk.org/docs/pygtk/class-gtktreeview.html#method-gtktreeview--get-selection Luego le conectas la señal "changed" de este objeto: http://www.pygtk.org/docs/pygtk/class-gtktreeselection.html#signal-gtktreeselection--changed Y finalmente, en el callback, le preguntas qué filas están seleccionadas: http://www.pygtk.org/docs/pygtk/class-gtktreeselection.html#method-gtktreeselection--get-selected-rows arnau ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From pych3m4 en gmail.com Tue Sep 4 14:53:03 2007 From: pych3m4 en gmail.com (Chema Cortes) Date: Tue, 4 Sep 2007 14:53:03 +0200 Subject: [OT] Re: Primera version alfa de Python 3000 In-Reply-To: <46DD2022.5040600@parcan.es> References: <46DBDA7A.1000400@parcan.es> <2c9fb0dd0709030522t2e4e90ddl2d3c3b20d3efafdd@mail.gmail.com> <46DD2022.5040600@parcan.es> Message-ID: <2c9fb0dd0709040553r46ba1225ne70bab1941abd17c@mail.gmail.com> El 4/09/07, Juan Ignacio Rodriguez de Leon escribió: > Chema Cortes escribió: > > > También comprensión para los que, como yo, hemos aguantado todo el > > verano y que próximamente pasaremos a estado latente una temporada :-D > > No, para esos envidia infinita :-) Felices vacaciones, o estado > latente, o periodo estival o como se diga. Si vienes a Tenerife, avisa, > que unas cervezas tienes invitadas, como mínimo, por todas > las dudas que has resuelto en esta lista. Esta vez cambio de isla, a Irlanda; pero agradezco igualmente el invite. Decir, tan sólo, que lamenté mucho los últimos incendios que hubo por ahí. Aprendí meterología de un profesor de la Laguna, por lo soy de esos turistas raros que van por Tenerife buscando nubes y "lluvia horizontal" en lugar de sol. Espero que el desierto no acabe por adueñarse también del norte. From cabrerachaparro en gmail.com Thu Sep 6 21:50:16 2007 From: cabrerachaparro en gmail.com (Daniel Cabrera) Date: Thu, 6 Sep 2007 14:50:16 -0500 Subject: Error usando %amp Message-ID: <8565ad90709061250k4ad4c1c9p478d6fcbb6ae86cf@mail.gmail.com> Hola, Estoy escribiendo un codigo y usando la expresion %amp; pero me sale que la sintaxis es invalida y señala al punto y como (;) de la sintaxis. A continuacion copio la linea de codigo: if mode %amp; getattr(stat,"S_I"+perm+level): No tengo idea que puede estar pasando ya que en otros codigos veo la misma sintaxis y aparantemente no hay errores. Gracias -- Daniel Cabrera Chaparro Noticias Interesantes de Linux en http://comulinux.blogspot.com/ From arnau en ehas.org Thu Sep 6 22:10:49 2007 From: arnau en ehas.org (Arnau Sanchez) Date: Thu, 06 Sep 2007 22:10:49 +0200 Subject: Error usando %amp In-Reply-To: <8565ad90709061250k4ad4c1c9p478d6fcbb6ae86cf@mail.gmail.com> References: <8565ad90709061250k4ad4c1c9p478d6fcbb6ae86cf@mail.gmail.com> Message-ID: <46E05EC9.7050708@ehas.org> Daniel Cabrera escribió: > Estoy escribiendo un codigo y usando la expresion %amp; pero me sale que la > sintaxis es invalida y señala al punto y como (;) de la sintaxis. > A continuacion copio la linea de codigo: > > if mode %amp; getattr(stat,"S_I"+perm+level): Nunca había visto eso, ¿cuál es el objetivo? Parece que quieres hacer una operación "and" a nivel de bits, ¿por qué no pones simplemente "&"? "%amp;" suena a "&" que es cómo el estándar XML escapa el caracter "&" > No tengo idea que puede estar pasando ya que en otros codigos veo la misma > sintaxis y aparantemente no hay errores. ¿Algún URL de código que haga eso? From jordi.f en ati.es Thu Sep 6 21:56:55 2007 From: jordi.f en ati.es (Jordi Funollet) Date: Thu, 6 Sep 2007 21:56:55 +0200 Subject: Error usando %amp In-Reply-To: <8565ad90709061250k4ad4c1c9p478d6fcbb6ae86cf@mail.gmail.com> References: <8565ad90709061250k4ad4c1c9p478d6fcbb6ae86cf@mail.gmail.com> Message-ID: <200709062156.55576.jordi.f@ati.es> Daniel Cabrera dixit: > if mode %amp; getattr(stat,"S_I"+perm+level): > > No tengo idea que puede estar pasando ya que en otros codigos veo la misma > sintaxis y aparantemente no hay errores. En esos "otros códigos", ¿no será esto lo que dice realmente? if mode & getattr(stat,"S_I"+perm+level): -- ############################## ### Jordi Funollet ### http://www.terraquis.net From cabrerachaparro en gmail.com Thu Sep 6 23:11:53 2007 From: cabrerachaparro en gmail.com (Daniel Cabrera) Date: Thu, 6 Sep 2007 16:11:53 -0500 Subject: Error usando %amp In-Reply-To: <200709062156.55576.jordi.f@ati.es> References: <8565ad90709061250k4ad4c1c9p478d6fcbb6ae86cf@mail.gmail.com> <200709062156.55576.jordi.f@ati.es> Message-ID: <8565ad90709061411h5a1d5126i64141b30d9f6a24c@mail.gmail.com> Tenian razon es el caracter & o and. Gracias El día 6/09/07, Jordi Funollet escribió: > > Daniel Cabrera dixit: > > if mode %amp; getattr(stat,"S_I"+perm+level): > > > > No tengo idea que puede estar pasando ya que en otros codigos veo la > misma > > sintaxis y aparantemente no hay errores. > > En esos "otros códigos", ¿no será esto lo que dice realmente? > > if mode & getattr(stat,"S_I"+perm+level): > > -- > ############################## > ### Jordi Funollet > ### http://www.terraquis.net > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > -- Daniel Cabrera Chaparro Noticias Interesantes de Linux en http://comulinux.blogspot.com/ From arnau en ehas.org Thu Sep 6 23:15:03 2007 From: arnau en ehas.org (Arnau Sanchez) Date: Thu, 06 Sep 2007 23:15:03 +0200 Subject: Error usando %amp In-Reply-To: <8565ad90709061411h5a1d5126i64141b30d9f6a24c@mail.gmail.com> References: <8565ad90709061250k4ad4c1c9p478d6fcbb6ae86cf@mail.gmail.com> <200709062156.55576.jordi.f@ati.es> <8565ad90709061411h5a1d5126i64141b30d9f6a24c@mail.gmail.com> Message-ID: <46E06DD7.70105@ehas.org> Daniel Cabrera escribió: > Tenian razon es el caracter & o and. Cuidado que & y and no son lo mismo... From cabrerachaparro en gmail.com Thu Sep 6 23:18:13 2007 From: cabrerachaparro en gmail.com (Daniel Cabrera) Date: Thu, 6 Sep 2007 16:18:13 -0500 Subject: Error usando %amp In-Reply-To: <46E06DD7.70105@ehas.org> References: <8565ad90709061250k4ad4c1c9p478d6fcbb6ae86cf@mail.gmail.com> <200709062156.55576.jordi.f@ati.es> <8565ad90709061411h5a1d5126i64141b30d9f6a24c@mail.gmail.com> <46E06DD7.70105@ehas.org> Message-ID: <8565ad90709061418q4b2e230bh21ee0b2777053919@mail.gmail.com> si pues, pero segun el contexto es & Gracias El día 6/09/07, Arnau Sanchez escribió: > > Daniel Cabrera escribió: > > > Tenian razon es el caracter & o and. > > Cuidado que & y and no son lo mismo... > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > -- Daniel Cabrera Chaparro Noticias Interesantes de Linux en http://comulinux.blogspot.com/ From jjachuf en gmail.com Fri Sep 7 02:56:26 2007 From: jjachuf en gmail.com (=?ISO-8859-1?Q?Jos=E9_Jachuf?=) Date: Thu, 06 Sep 2007 21:56:26 -0300 Subject: patron singleton Message-ID: <46E0A1BA.3060206@gmail.com> Hola este código lo encontré en Internet, y me permite implementar el patron singleton. Funciona perfecto, pero parece haber sido escrito por el mismo diablo. Cómo hace para funcionar? Lo podría usar, de hecho que ya lo estoy usando en una pequeña implementación, pero me gustaría entenderlo. Agradecería que alguien se animara a explicarlo. class Singleton(type): def __init__(cls, name, bases, dct): cls.__instance = None type.__init__(cls, name, bases, dct) def __call__(cls, *args, **kw): if cls.__instance is None: cls.__instance = type.__call__(cls, *args,**kw) return cls.__instance class A: __metaclass__ = Singleton def __init__(self, nombre = None): self.__nombre = nombre def Saludar(self): print "Hola", self.__nombre def SetNombre(self, nombre): self.__nombre = nombre a1 = A('Yami') a2 = A() a3 = A() assert a1 is a3 a1.Saludar() a2.Saludar() a2.SetNombre('Osi') a3.Saludar() a1.Saludar() la salida es: Hola Yami Hola Yami Hola Osi Hola Osi From gagsl-py2 en yahoo.com.ar Fri Sep 7 03:11:22 2007 From: gagsl-py2 en yahoo.com.ar (Gabriel Genellina) Date: Thu, 06 Sep 2007 22:11:22 -0300 Subject: patron singleton References: <46E0A1BA.3060206@gmail.com> Message-ID: En Thu, 06 Sep 2007 21:56:26 -0300, José Jachuf escribi?: > Hola este código lo encontré en Internet, y me permite implementar el > patron singleton. Funciona perfecto, pero parece haber sido escrito por > el mismo diablo. Cómo hace para funcionar? Para empezar, en Python no es necesario escribir nada especial para implementar un singleton: simplemente, usa un modulo. Un módulo *ES* un verdadero singleton de por sí. Por otro lado, podrias mirar en el Python Cookbook sobre este tema; una variante es el Borg ("todos somos uno") > Lo podría usar, de hecho que ya lo estoy usando en una pequeña > implementación, pero me gustaría entenderlo. Agradecería que alguien se > animara a explicarlo. > > > class Singleton(type): > def __init__(cls, name, bases, dct): > cls.__instance = None > type.__init__(cls, name, bases, dct) > > def __call__(cls, *args, **kw): > if cls.__instance is None: > cls.__instance = type.__call__(cls, *args,**kw) > return cls.__instance > > class A: > __metaclass__ = Singleton > def __init__(self, nombre = None): > self.__nombre = nombre > > def Saludar(self): > print "Hola", self.__nombre > > def SetNombre(self, nombre): > self.__nombre = nombre Singleton es una metaclase; es el tipo de la clase A. (Si no estuviera la linea __metaclass__ = Singleton, type(A) devolvería `type`, pero ahora devuelve `Singleton`). Cuando se define la clase A, se crea la instancia de la metaclase (que pasa a ser el tipo de A); cuando se crea una instancia de la clase A, se invoca el __call__ de la metaclase. Singleton se guarda un atributo privado __instance con la (unica) instancia de la clase A. Al principio vale None; cuando se pretende crear una instancia de A, si ya existía, devuelve ésa; sino, crea una (la única), se la guarda en __instance, y la devuelve. Es la forma mas rebuscada de escribir un singleton que vi. -- Gabriel Genellina ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From jjachuf en gmail.com Fri Sep 7 03:28:06 2007 From: jjachuf en gmail.com (=?UTF-8?B?Sm9zw6kgSmFjaHVm?=) Date: Thu, 06 Sep 2007 22:28:06 -0300 Subject: patron singleton In-Reply-To: References: <46E0A1BA.3060206@gmail.com> Message-ID: <46E0A926.9010000@gmail.com> Gabriel Genellina escribió: > En Thu, 06 Sep 2007 21:56:26 -0300, José Jachuf > escribi?: > >> Hola este código lo encontré en Internet, y me permite implementar el >> patron singleton. Funciona perfecto, pero parece haber sido escrito >> por el mismo diablo. Cómo hace para funcionar? > > Para empezar, en Python no es necesario escribir nada especial para > implementar un singleton: simplemente, usa un modulo. Un módulo *ES* un > verdadero singleton de por sí. > Por otro lado, podrias mirar en el Python Cookbook sobre este tema; una > variante es el Borg ("todos somos uno") Esto lo voy a ver. > Singleton es una metaclase; es el tipo de la clase A. (Si no estuviera > la linea __metaclass__ = Singleton, type(A) devolvería `type`, pero > ahora devuelve `Singleton`). > Cuando se define la clase A, se crea la instancia de la metaclase (que > pasa a ser el tipo de A); cuando se crea una instancia de la clase A, se > invoca el __call__ de la metaclase. Debería leer un poco (o mucho) sobre metaclases. Podría haberse implementado como herencia? > > Singleton se guarda un atributo privado __instance con la (unica) > instancia de la clase A. Al principio vale None; cuando se pretende > crear una instancia de A, si ya existía, devuelve ésa; sino, crea una > (la única), se la guarda en __instance, y la devuelve. cls es análogo al self (o al this)? > > Es la forma mas rebuscada de escribir un singleton que vi. Había visto esta: class Singleton: __single = None def __init__( self ): if Singleton.__single: raise Singleton.__single Singleton.__single = self que está en: http://www.python.org/workshops/1997-10/proceedings/savikko.html bastante más intuitiva, pero me gusto la la que mandé porque con sólo agregar la línea __metaclass__ = Singleton cambio el comportamiento de mi clase Muchas gracias Gabriel Saludos > > > ------------------------------------------------------------------------ > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From him882027 en gmail.com Fri Sep 7 05:21:55 2007 From: him882027 en gmail.com (jav tap) Date: Fri, 7 Sep 2007 05:21:55 +0200 Subject: buscando hosting Message-ID: <9236bdc00709062021k3b88f743ke3df017a7aff2719@mail.gmail.com> Hhola, para mi proyecto de examen de grado debo utilizar python y mysql, sin embargo no he podido encontrar un hosting gratuito que me brinde esos servicios. Si conocen alguno seria de gran ayuda. Gracias. From gagsl-py2 en yahoo.com.ar Fri Sep 7 06:09:37 2007 From: gagsl-py2 en yahoo.com.ar (Gabriel Genellina) Date: Fri, 07 Sep 2007 01:09:37 -0300 Subject: buscando hosting References: <9236bdc00709062021k3b88f743ke3df017a7aff2719@mail.gmail.com> Message-ID: En Fri, 07 Sep 2007 00:21:55 -0300, jav tap escribi?: > Hhola, para mi proyecto de examen de grado debo utilizar python y mysql, > sin > embargo no he podido encontrar un hosting gratuito que me brinde esos > servicios. Si conocen alguno seria de gran ayuda. No tengo ninguno para recomendar, pero es cuestion de buscar... La limitacion la da Python, no mysql que esta por todos lados en general. http://www.google.es/search?q=free+python+hosting http://www.profusehost.net/services/index.htm http://oinko.net/freepython/ http://www.free-webhosts.com/webhosting-01.php -- Gabriel Genellina ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From xinxic en gmail.com Fri Sep 7 07:51:59 2007 From: xinxic en gmail.com (Xin) Date: Fri, 7 Sep 2007 07:51:59 +0200 Subject: patron singleton In-Reply-To: <46E0A926.9010000@gmail.com> References: <46E0A1BA.3060206@gmail.com> <46E0A926.9010000@gmail.com> Message-ID: <9b44e07671c15468ad4159f788d7698d@GMail.com> Echale un vistazo senzillo a las meteclasses. Lo leí ayer y me aclaró algunos conceptos. http://crysol.inf-cr.uclm.es/node/600 Xin El 07/09/2007, a les 03:28, en/na José Jachuf va escriure: > Gabriel Genellina escribió: >> En Thu, 06 Sep 2007 21:56:26 -0300, José Jachuf >> escribi?: >>> Hola este código lo encontré en Internet, y me permite implementar >>> el patron singleton. Funciona perfecto, pero parece haber sido >>> escrito por el mismo diablo. Cómo hace para funcionar? >> Para empezar, en Python no es necesario escribir nada especial para >> implementar un singleton: simplemente, usa un modulo. Un módulo *ES* >> un verdadero singleton de por sí. >> Por otro lado, podrias mirar en el Python Cookbook sobre este tema; >> una variante es el Borg ("todos somos uno") > > Esto lo voy a ver. > > >> Singleton es una metaclase; es el tipo de la clase A. (Si no >> estuviera la linea __metaclass__ = Singleton, type(A) devolvería >> `type`, pero ahora devuelve `Singleton`). >> Cuando se define la clase A, se crea la instancia de la metaclase >> (que pasa a ser el tipo de A); cuando se crea una instancia de la >> clase A, se invoca el __call__ de la metaclase. > > Debería leer un poco (o mucho) sobre metaclases. > Podría haberse implementado como herencia? > >> Singleton se guarda un atributo privado __instance con la (unica) >> instancia de la clase A. Al principio vale None; cuando se pretende >> crear una instancia de A, si ya existía, devuelve ésa; sino, crea una >> (la única), se la guarda en __instance, y la devuelve. > > cls es análogo al self (o al this)? > >> Es la forma mas rebuscada de escribir un singleton que vi. > > Había visto esta: > > class Singleton: > __single = None > def __init__( self ): > if Singleton.__single: > raise Singleton.__single > Singleton.__single = self > > que está en: > http://www.python.org/workshops/1997-10/proceedings/savikko.html > > bastante más intuitiva, pero me gusto la la que mandé porque con sólo > agregar la línea > > __metaclass__ = Singleton > > cambio el comportamiento de mi clase > > Muchas gracias Gabriel > > Saludos > > >> ---------------------------------------------------------------------- >> -- >> _______________________________________________ >> Python-es mailing list >> Python-es en aditel.org >> http://listas.aditel.org/listinfo/python-es > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From xinxic en gmail.com Fri Sep 7 08:22:20 2007 From: xinxic en gmail.com (Xin) Date: Fri, 7 Sep 2007 08:22:20 +0200 Subject: buscando hosting In-Reply-To: References: <9236bdc00709062021k3b88f743ke3df017a7aff2719@mail.gmail.com> Message-ID: <3efdf141d8f5995428256bd877be7582@GMail.com> Yo tardé mucho para encontrar hosting adecuados. Al final dudé entre: webfaction.com = 8,5 $/mes + VAT (17%) -- http://www.webfaction.com/shared_hosting dreamhost.com = 9,95$/mes -- http://dreamhost.com/hosting.html - El primero, és un poco más caro que el segundo, excepto que eso del VAT sea cierto, no lo sé. - Yo escogí el segundo, pués tengo necessidades de disco duro y ahora mismo tengo 152GB a mi disposición. También te dan mucho ancho de banda. - Pero sigue siendo un hosting compartido que funciona con FastCGI, así que olvídate de modpython. Xin El 07/09/2007, a les 06:09, en/na Gabriel Genellina va escriure: > En Fri, 07 Sep 2007 00:21:55 -0300, jav tap > escribi?: > >> Hhola, para mi proyecto de examen de grado debo utilizar python y >> mysql, sin >> embargo no he podido encontrar un hosting gratuito que me brinde esos >> servicios. Si conocen alguno seria de gran ayuda. > > No tengo ninguno para recomendar, pero es cuestion de buscar... La > limitacion la da Python, no mysql que esta por todos lados en general. > > http://www.google.es/search?q=free+python+hosting > > http://www.profusehost.net/services/index.htm > http://oinko.net/freepython/ > http://www.free-webhosts.com/webhosting-01.php > > -- > Gabriel Genellina > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From xinxic en gmail.com Fri Sep 7 08:28:41 2007 From: xinxic en gmail.com (Xin) Date: Fri, 7 Sep 2007 08:28:41 +0200 Subject: patron singleton In-Reply-To: References: <46E0A1BA.3060206@gmail.com> Message-ID: <907ddb51408403180efb53915f78a6e9@GMail.com> Quizà otro ejemplo te ayude un poco. Este añade la propiedad XXX a partir de las funciones _get_XXX o _set_XXX http://www.python.org/download/releases/2.2.3/descrintro/ Por cierto sabeis si se puede indicar más de una metaclasse? __metaclass__ = autoprop, singleton class autoprop(type): def __init__(cls, name, bases, dict): super(autoprop, cls).__init__(name, bases, dict) props = {} for name in dict.keys(): if name.startswith("_get_") or name.startswith("_set_"): props[name[5:]] = 1 for name in props.keys(): fget = getattr(cls, "_get_%s" % name, None) fset = getattr(cls, "_set_%s" % name, None) setattr(cls, name, property(fget, fset)) class InvertedX: __metaclass__ = autoprop def _get_x(self): return -self.__x def _set_x(self, x): self.__x = -x a = InvertedX() assert not hasattr(a, "x") a.x = 12 assert a.x == 12 assert a._InvertedX__x == -12 From gagsl-py2 en yahoo.com.ar Fri Sep 7 11:25:00 2007 From: gagsl-py2 en yahoo.com.ar (Gabriel Genellina) Date: Fri, 07 Sep 2007 06:25:00 -0300 Subject: patron singleton References: <46E0A1BA.3060206@gmail.com> <907ddb51408403180efb53915f78a6e9@GMail.com> Message-ID: En Fri, 07 Sep 2007 03:28:41 -0300, Xin escribi?: > Por cierto sabeis si se puede indicar más de una metaclasse? > __metaclass__ = autoprop, singleton Supongo que sería algo así: class Meta(autoprop, singleton): pass class Otra: __metaclass__ = Meta ... pero nunca lo probé. Ambas metaclases deberian estar prolijamente escritas usando super() donde sea necesario, ademas. -- Gabriel Genellina ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From ibarona en tid.es Fri Sep 7 12:20:30 2007 From: ibarona en tid.es (Isaac Barona) Date: Fri, 07 Sep 2007 12:20:30 +0200 Subject: Scientific computing In-Reply-To: <91d218430705120604s18e73384w9d02e32bec05488f@mail.gmail.com> References: <24ed9e840705111416n42f88afcn2187d5e925a443dd@mail.gmail.com> <46454A39.2030204@ehas.org> <91d218430705120604s18e73384w9d02e32bec05488f@mail.gmail.com> Message-ID: <46E125EE.5050305@tid.es> Los contenidos completos de la revista los podéis encontrar en esta página web del Computational Mechanics Group de la Universidad de California. http://cse.ucdavis.edu/~cmg/Group/readings/ Saludos, Isaac Jose Gomez-Dans escribió: > Buenas, > > On 5/12/07, Reynaldo Baquerizo Micheline wrote: >> Hay unas presentaciones sobre "Scientific computing" -cuál es la >> traducción correcata?- con python del 2004, > > "Computación científica" suena bastante, aunque creo que no hay una > versión canónica :) > >> https://www.nanohub.org/resources/99/ >> Los autores de las presentaciones son el presidente de Enthought y el >> desarrollador de Numpy. >> Las presentaciones constan de 2 pdf's y una serie de videos. > > Como más impresionante, el número de Mayo de "Computing in Science and > Engineering" del IEEE viene dedicado a Python. El índice está aquí > > > Desgraciadamente, no todos los artículos se pueden leer por la cara, > aunque la revista es bastante común en universidades. > > Cada día somos más :) > Jose > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > -- "Un perdedor no es quien llega el último sino aquél que se sienta y mira y nunca ha intentado correr". Oscar Pistorius (el corredor biónico) Isaac Barona Martínez Automóvil Conectado Telefónica I+D c/ Emilio Vargas, 6 28043 Madrid (SPAIN) Tel: 91 337 44 05 Fax: 91 337 39 66 e-mail: ibarona en tid.es From patgr en crisol.cult.cu Fri Sep 7 17:49:24 2007 From: patgr en crisol.cult.cu (Patrimonio Granma) Date: Fri, 07 Sep 2007 11:49:24 -0400 Subject: La primera pregunta del novato Message-ID: <46E17304.3010902@crisol.cult.cu> Hola listeros He comenzado a aventurar en la triada Plone/Zope/Python y desaría información sobre el tema. Por favor si la pueden enviar a mi cuenta se lo agradesco, pués no tengo internet :-( saludos y agradecidos desde ya david From sonajadiabolica en gmail.com Fri Sep 7 19:42:44 2007 From: sonajadiabolica en gmail.com (aNgel rEsendiz g.) Date: Fri, 7 Sep 2007 12:42:44 -0500 Subject: buscando hosting In-Reply-To: <3efdf141d8f5995428256bd877be7582@GMail.com> References: <9236bdc00709062021k3b88f743ke3df017a7aff2719@mail.gmail.com> <3efdf141d8f5995428256bd877be7582@GMail.com> Message-ID: <8d9e208f0709071042s393f0baaxe23455532ee1fc00@mail.gmail.com> > >> Hhola, para mi proyecto de examen de grado debo utilizar python y > >> mysql, sin > >> embargo no he podido encontrar un hosting gratuito que me brinde esos > >> servicios. Si conocen alguno seria de gran ayuda. Aprovechando el tema, he visto en godaddy precios muy muy bajos, (que incluyen soporte para python cgi), alguien tiene alguna experiencia con ese servicio? porque estoy muy tentado a utilizarlo. -- aNgel rEsendiz.! From alf en argentina.com Fri Sep 7 19:20:00 2007 From: alf en argentina.com (=?ISO-8859-1?Q?M=E1ximo_Deshayes?=) Date: Fri, 7 Sep 2007 14:20:00 -0300 Subject: Empezar a programar Message-ID: <503d55d13ddf1da887fc1e8935001821@wmx1.argentina.com> Hola, no se nada de programacion, quiero empezar. No importa que sea dificil, le voy a poner muchas ganas. Algunos dicen que empieze directamente con el lenguaje otros con algoritmos, la verdad ni idea, asi que necesito consejos. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From masirujo en yahoo.es Fri Sep 7 23:29:46 2007 From: masirujo en yahoo.es (jose lopez) Date: Fri, 7 Sep 2007 23:29:46 +0200 (CEST) Subject: Suscribirme a la lista de distribucion python-es Message-ID: <360933.2618.qm@web33006.mail.mud.yahoo.com> Estoy muy interesado en ir conociendo python y mi ingles es limitado y no encuentro literatura en castellano sobre el tema --------------------------------- Sé un Mejor Amante del Cine ¿Quieres saber cómo? ¡Deja que otras personas te ayuden!. From gagsl-py2 en yahoo.com.ar Sat Sep 8 05:02:48 2007 From: gagsl-py2 en yahoo.com.ar (Gabriel Genellina) Date: Sat, 08 Sep 2007 00:02:48 -0300 Subject: Suscribirme a la lista de distribucion python-es References: <360933.2618.qm@web33006.mail.mud.yahoo.com> Message-ID: En Fri, 07 Sep 2007 18:29:46 -0300, jose lopez escribi?: > Estoy muy interesado en ir conociendo python y mi ingles es limitado y > no encuentro literatura en castellano sobre el tema Entonces no buscaste bien. No digo que haya de todo, ni que toda la documentación este traducida y al día, pero hay bastante para empezar: http://www.google.es/search?hl=es&q=python+documentaci%C3%B3n+castellano -- Gabriel Genellina ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From juatman_2000 en yahoo.es Sat Sep 8 11:45:45 2007 From: juatman_2000 en yahoo.es (Juan M.) Date: Sat, 8 Sep 2007 11:45:45 +0200 Subject: Empezar a programar References: <503d55d13ddf1da887fc1e8935001821@wmx1.argentina.com> Message-ID: <0c7901c7f1fd$70b74f70$6a8ae050@equipo> Hola Máximo: No lo hagas. Yo era una persona normal, sociable... ahora los amigos se van a la playa y me dejan aquí solo con el ordenador, ya me han dado por imposible. Programar es un juego interesante, que cabrea, que te engancha, y encima, si el lenguaje de programación que eliges es divertido, ya no tienes remedio. Si aún así quieres seguir, aquí tienes un montón de enlaces sobre este lenguaje que has escogido: http://usuarios.lycos.es/arturosa/enlaces.html ¡Bienvenido!. Nos veremos en las sesiones de "pythónicos anónimos". ;-) ----- Original Message ----- From: "Máximo Deshayes" To: Sent: Friday, September 07, 2007 7:20 PM Subject: [Python-es] Empezar a programar Hola, no se nada de programacion, quiero empezar. No importa que sea dificil, le voy a poner muchas ganas. Algunos dicen que empieze directamente con el lenguaje otros con algoritmos, la verdad ni idea, asi que necesito consejos. -------------------------------------------------------------------------------- _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From riverplatense en gmail.com Mon Sep 10 13:10:44 2007 From: riverplatense en gmail.com (Javier Castrillo) Date: Mon, 10 Sep 2007 08:10:44 -0300 Subject: buscando hosting In-Reply-To: <8d9e208f0709071042s393f0baaxe23455532ee1fc00@mail.gmail.com> References: <9236bdc00709062021k3b88f743ke3df017a7aff2719@mail.gmail.com> <3efdf141d8f5995428256bd877be7582@GMail.com> <8d9e208f0709071042s393f0baaxe23455532ee1fc00@mail.gmail.com> Message-ID: On 07/09/2007, aNgel rEsendiz g. wrote: > > >> Hhola, para mi proyecto de examen de grado debo utilizar python y > > >> mysql, sin > > >> embargo no he podido encontrar un hosting gratuito que me brinde esos > > >> servicios. Si conocen alguno seria de gran ayuda. > wiredhosting.com.ar. No es gratuito pero es muy barato! Y es sorprendentemente efectivo y puntual. La gente es muy amable y te contestan muy rápido. La verdad es de no creer. Yo tenía todo antes en Dattatec pero ya migré todo a Wiredhosting. Espero que te sirva, saludos -- Javier Castrillo ========================================================= GNU / Linux User #242275 ------------------------------- pub 1024D/B482896F 2006-09-04 uid Javier Castrillo (El Palo) sub 2048g/52C99A4E 2006-09-04 Clave pública: carapa.com.ar/public.asc http://carapa.com.ar http://javiercastrillo.com.ar http://riverplatense.googlepages.com ========================================================= Usá Software Libre From pablomarmol en gmail.com Mon Sep 10 21:16:36 2007 From: pablomarmol en gmail.com (peter) Date: Mon, 10 Sep 2007 21:16:36 +0200 Subject: Operador In-Reply-To: References: Message-ID: <32ec9b10709101216u7a44cec2rcd5e68cb0976e944@mail.gmail.com> El 10/09/07, milreyes escribió: > Saludos a todos. > > Quizás esta es una pregunta tonta, pero ¿por qué es diferente en la adición > en listas el operador p+=['c'] a el operador p=p+['c']? Para explicarme > mejor les envío este ejemplo: > > > > Python 2.5.1 (r251:54863, Apr 18 2007, 08:51:08) [MSC v.1310 32 bit (Intel)] > on win32 > > Type "help", "copyright", "credits" or "license" for more information. > > >>> p=['a'] > > >>> q=[1,p] > > >>> q > > [1, ['a']] > > >>> p+=['b'] > > >>> q > > [1, ['a', 'b']] > > >>> p=p+['c'] > > >>> q > > [1, ['a', 'b']] (Aquí esperaba: [1,['a','b','c']) ---------------------------------------- Python 2.5.1 (r251:54863, May 4 2007, 16:52:23) [GCC 4.1.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> p = ['a'] >>> q = [1, p] >>> q [1, ['a']] >>> id(p) == id(q[1]) True >>> p+=['b'] >>> q [1, ['a', 'b']] >>> id(p) == id(q[1]) True >>> p=p+['c'] >>> p ['a', 'b', 'c'] >>> q [1, ['a', 'b']] >>> id(p) == id(q[1]) False From maengora en gmail.com Mon Sep 10 21:37:11 2007 From: maengora en gmail.com (=?ISO-8859-1?Q?Manuel_Enrique_Gonz=E1lez_Ram=EDrez?=) Date: Mon, 10 Sep 2007 14:37:11 -0500 Subject: Ayuda para insertar datos MySQL Message-ID: Hola amigos, Tengo una ventana en wx y una conexion a MySQL el problema es que no sé como hacer para que los datos de los textos (codigo, nombre y edad) me los reconozca la sentencia execute. Les pongo el código y si alguien me puede ayudar de una vez muchas gracias. P.D. He hecho de todo, cambiando comillas; separando código de la consulta, etc. # -*- coding: cp1252 -*- #!/usr/bin/python import wx import MySQLdb as my class InsertData(wx.Frame): def __init__(self, parent, id, title): wx.Frame.__init__(self, parent, id, title, size=(280, 200)) panel = wx.Panel(self, -1) gs = wx.FlexGridSizer(3, 2, 9, 9) vbox = wx.BoxSizer(wx.VERTICAL) hbox = wx.BoxSizer(wx.HORIZONTAL) codigo = wx.StaticText(panel, -1, 'Codigo') nombre = wx.StaticText(panel, -1, 'Nombre') edad = wx.StaticText(panel, -1, 'Edad') self.sp = wx.SpinCtrl(panel, -1, '', size=(60, -1), min=1, max=100) self.tc1 = wx.TextCtrl(panel, -1, size=(150, -1)) self.tc2 = wx.TextCtrl(panel, -1, size=(150, -1)) gs.AddMany([(codigo), (self.tc1, 1, wx.LEFT, 10), (nombre), (self.tc2, 1, wx.LEFT, 10), (edad), (self.sp, 0, wx.LEFT, 10)]) vbox.Add(gs, 0, wx.ALL, 10) vbox.Add((-1, 30)) insertar = wx.Button(panel, -1, 'Insertar', size=(-1, 30)) cancelar = wx.Button(panel, -1, 'Cancelar', size=(-1, 30)) hbox.Add(insertar) hbox.Add(cancelar, 0, wx.LEFT, 5) vbox.Add(hbox, 0, wx.ALIGN_CENTER | wx.BOTTOM, 10) self.Bind(wx.EVT_BUTTON, self.OnInsert, id=insertar.GetId()) self.Bind(wx.EVT_BUTTON, self.OnCancel, id=cancelar.GetId()) panel.SetSizer(vbox) self.Centre() self.Show(True) def OnInsert(self, event): try: db = my.connect (host='localhost',user='root',passwd='12345678',db='ejemplo') cursor = db.cursor() codigo = self.tc1.GetValue() nombre = self.sp.GetValue() edad = self.tc2.GetValue() cursor.execute("insert into datos values('%d','%s','%d')" % (codigo,nombre,edad)) #resultado=cursor.fetchall() con.commit() cur.close() con.close() except my.Error, error: dlg = wx.MessageDialog(self, str(error), 'Ocurrio un error :(') dlg.ShowModal() def OnCancel(self, event): self.Close() app = wx.App() InsertData(None, -1, 'INGRESAR DATOS') app.MainLoop() From reyesmil en intercable.net.ve Mon Sep 10 20:57:44 2007 From: reyesmil en intercable.net.ve (milreyes) Date: Mon, 10 Sep 2007 14:57:44 -0400 Subject: Operador Message-ID: Saludos a todos. Quizás esta es una pregunta tonta, pero ¿por qué es diferente en la adición en listas el operador p+=[‘c’] a el operador p=p+[‘c’]? Para explicarme mejor les envío este ejemplo: Python 2.5.1 (r251:54863, Apr 18 2007, 08:51:08) [MSC v.1310 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> p=['a'] >>> q=[1,p] >>> q [1, ['a']] >>> p+=['b'] >>> q [1, ['a', 'b']] >>> p=p+['c'] >>> q [1, ['a', 'b']] (Aquí esperaba: [1,[‘a’,’b’,’c’]) >>> p ['a', 'b', 'c'] >>> Gracias de antemano, Luis. From reyesmil en intercable.net.ve Mon Sep 10 21:36:31 2007 From: reyesmil en intercable.net.ve (milreyes) Date: Mon, 10 Sep 2007 15:36:31 -0400 Subject: Operador In-Reply-To: <49414f570709101222r1dcb1f01l2e38454268c8e8ac@mail.gmail.com> References: <49414f570709101222r1dcb1f01l2e38454268c8e8ac@mail.gmail.com> Message-ID: Gracias a todos. Ya entiendo: p=p+['c'] primero crea la lista p+['c'] y luego la asigna a p en cambio p+=['c'] es equivalente a p.append('c'). Creo que el problema es cuando nos explican que p+=['c'] es una versión resumida de p=p+['c'] lo cual no es tan cierto.... Saludos. From lasizoillo en gmail.com Mon Sep 10 21:22:53 2007 From: lasizoillo en gmail.com (lasizoillo) Date: Mon, 10 Sep 2007 21:22:53 +0200 Subject: Operador In-Reply-To: References: Message-ID: <49414f570709101222r1dcb1f01l2e38454268c8e8ac@mail.gmail.com> Viendo tu ejemplo y tras corroborar con la siguiente prueba: >>> p.__hash__ >>> p = p + ['b'] >>> p.__hash__ >>> p += ['c'] >>> p.__hash__ creo que ya se que es lo que sucede: p += ['x'] modifica el objeto p añadiendole el array ['x'] p = p + ['x'] retorna un nuevo objeto en p, resultado de añadir p y el array ['x'] No se si me explico bien. El caso es que mientras operes con "+=" el objeto p es el mismo. Cuando haces la otra asignacion el objeto es nuevo. En el array q apuntabas al objeto p definido al principio, no al obtenido al hacer la ultima asignacion. Espero haberte aclarado las dudas. Un saludo: Javi El 10/09/07, milreyes escribió: > Saludos a todos. > > Quizás esta es una pregunta tonta, pero ¿por qué es diferente en la adición > en listas el operador p+=['c'] a el operador p=p+['c']? Para explicarme > mejor les envío este ejemplo: > > > > Python 2.5.1 (r251:54863, Apr 18 2007, 08:51:08) [MSC v.1310 32 bit (Intel)] > on win32 > > Type "help", "copyright", "credits" or "license" for more information. > > >>> p=['a'] > > >>> q=[1,p] > > >>> q > > [1, ['a']] > > >>> p+=['b'] > > >>> q > > [1, ['a', 'b']] > > >>> p=p+['c'] > > >>> q > > [1, ['a', 'b']] (Aquí esperaba: [1,['a','b','c']) > > >>> p > > ['a', 'b', 'c'] > > >>> > > Gracias de antemano, Luis. > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From alexis.roda.villalonga en gmail.com Mon Sep 10 21:17:04 2007 From: alexis.roda.villalonga en gmail.com (Alexis Roda) Date: Mon, 10 Sep 2007 21:17:04 +0200 Subject: Operador In-Reply-To: References: Message-ID: <46E59830.9060102@gmail.com> En/na milreyes ha escrit: > Saludos a todos. > > Quizás esta es una pregunta tonta, pero ¿por qué es diferente en la adición > en listas el operador p+=[?c?] a el operador p=p+[?c?]? Para explicarme > mejor les envío este ejemplo: += concatena a la lista mientras que + crea una nueva lista. En cada paso de tu ejemplo puedes verificar si se trata de listas iguales/distintas comparando id(p) e id(q[1]). Ignoro porque se decidió que += funcionara así, pero parece bastante lógico/intuitivo definirlo como abreviatura de extend(). Saludos ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From dmunhiz en gmail.com Mon Sep 10 22:12:39 2007 From: dmunhiz en gmail.com (dmunhiz) Date: Mon, 10 Sep 2007 22:12:39 +0200 Subject: Ayuda para insertar datos MySQL In-Reply-To: References: Message-ID: <46E5A537.7000609@gmail.com> Prueba en lugar de con.commit() con: db.commit() Remitente: Daniel Muñiz Fontoira Eu uso software libre [1] [1]http://www.gnu.org/philosophy/free-sw.gl.html Manuel Enrique González Ramírez escribiu: > Hola amigos, > > Tengo una ventana en wx y una conexion a MySQL el problema es que no sé como > hacer para que los datos de los textos (codigo, nombre y edad) me los > reconozca la sentencia execute. Les pongo el código y si alguien me puede > ayudar de una vez muchas gracias. > P.D. He hecho de todo, cambiando comillas; separando código de la consulta, > etc. > # -*- coding: cp1252 -*- > #!/usr/bin/python > > import wx > import MySQLdb as my > > class InsertData(wx.Frame): > def __init__(self, parent, id, title): > wx.Frame.__init__(self, parent, id, title, size=(280, 200)) > > panel = wx.Panel(self, -1) > > gs = wx.FlexGridSizer(3, 2, 9, 9) > vbox = wx.BoxSizer(wx.VERTICAL) > hbox = wx.BoxSizer(wx.HORIZONTAL) > > codigo = wx.StaticText(panel, -1, 'Codigo') > nombre = wx.StaticText(panel, -1, 'Nombre') > edad = wx.StaticText(panel, -1, 'Edad') > self.sp = wx.SpinCtrl(panel, -1, '', size=(60, -1), min=1, max=100) > self.tc1 = wx.TextCtrl(panel, -1, size=(150, -1)) > self.tc2 = wx.TextCtrl(panel, -1, size=(150, -1)) > > gs.AddMany([(codigo), (self.tc1, 1, wx.LEFT, 10), > (nombre), (self.tc2, 1, wx.LEFT, 10), > (edad), (self.sp, 0, wx.LEFT, 10)]) > > vbox.Add(gs, 0, wx.ALL, 10) > vbox.Add((-1, 30)) > > insertar = wx.Button(panel, -1, 'Insertar', size=(-1, 30)) > cancelar = wx.Button(panel, -1, 'Cancelar', size=(-1, 30)) > hbox.Add(insertar) > hbox.Add(cancelar, 0, wx.LEFT, 5) > vbox.Add(hbox, 0, wx.ALIGN_CENTER | wx.BOTTOM, 10) > > self.Bind(wx.EVT_BUTTON, self.OnInsert, id=insertar.GetId()) > self.Bind(wx.EVT_BUTTON, self.OnCancel, id=cancelar.GetId()) > > panel.SetSizer(vbox) > > self.Centre() > self.Show(True) > > def OnInsert(self, event): > try: > db = my.connect > (host='localhost',user='root',passwd='12345678',db='ejemplo') > cursor = db.cursor() > > codigo = self.tc1.GetValue() > nombre = self.sp.GetValue() > edad = self.tc2.GetValue() > > cursor.execute("insert into datos values('%d','%s','%d')" % > (codigo,nombre,edad)) > > #resultado=cursor.fetchall() > con.commit() > cur.close() > con.close() > > except my.Error, error: > dlg = wx.MessageDialog(self, str(error), 'Ocurrio un error :(') > dlg.ShowModal() > > def OnCancel(self, event): > self.Close() > > > > app = wx.App() > InsertData(None, -1, 'INGRESAR DATOS') > app.MainLoop() > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From arnau en ehas.org Mon Sep 10 21:58:27 2007 From: arnau en ehas.org (Arnau Sanchez) Date: Mon, 10 Sep 2007 21:58:27 +0200 Subject: Operador In-Reply-To: References: Message-ID: <46E5A1E3.6000902@ehas.org> milreyes escribió: > Ya entiendo: p=p+['c'] primero crea la lista p+['c'] y luego la asigna a p > en cambio p+=['c'] es equivalente a p.append('c'). Más bien, como te decía Alexis, equivalente a p.extend(['c']). > Creo que el problema es cuando nos explican que p+=['c'] es una versión > resumida de p=p+['c'] lo cual no es tan cierto.... Así es, a += b no es simple "azúcar sintáctico" para "a = a + b": con "+=" se llama al método __iadd__ ("in-place add") del objeto, y sólo en el caso que no exista se usa el normal y se hace una nueva asignación. Los enteros, por ejemplo, no lo tienen, pero sí las listas (como hemos visto). Salió el tema en c.l.p: http://mail.python.org/pipermail/python-list/2002-August/157795.html From xinxic en gmail.com Mon Sep 10 21:51:13 2007 From: xinxic en gmail.com (Xin) Date: Mon, 10 Sep 2007 21:51:13 +0200 Subject: Operador In-Reply-To: References: Message-ID: <31704923e7b3d1dfb82d4406b864a4e3@GMail.com> Esto solo viene de quando los operadores solo funcionavan con los números y en lenguages que donde no havia etiquetas, sinó variables. Xin El 10/09/2007, a les 21:36, en/na milreyes va escriure: > > Gracias a todos. > Ya entiendo: p=p+['c'] primero crea la lista p+['c'] y luego la asigna > a p > en cambio p+=['c'] es equivalente a p.append('c'). > Creo que el problema es cuando nos explican que p+=['c'] es una versión > resumida de p=p+['c'] lo cual no es tan cierto.... > > Saludos. > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From hidura en gmail.com Mon Sep 10 22:02:44 2007 From: hidura en gmail.com (hidura) Date: Mon, 10 Sep 2007 16:02:44 -0400 Subject: error en autenticacion Message-ID: <4bbf7fb20709101302r5ba86a14p2a269aea78ed6596@mail.gmail.com> Hola buenas tardes, Tengo un problema para autenticar una contraseña con Postgresql siempre que la traigo la inf me dice que no esta correcta aunque sea ese el nombre de usuario y contraseña. Gracias def conexion(self): usuar = user.get_text() password = contr.get_text() cr = db.source() usuario= cr.execute("SELECT usuario from usuarios") us=cr.fetch(1) passwd=cr.execute("SELECT password from usuarios") pas=cr.fetch(1) print(us) if ("'%s'") % usuar in us: if password in pas: print(1) else: print(2) os.system("python Ventana_Principal.py") else: print(0) hoy = datetime.date.today() log=open("./hidalgo/log.log","w") log.write("Nombre de usuario no valido %s" % hoy) aviso=gtk.Dialog(title="Error de usuario") caja=gtk.HBox() avis=gtk.Image() caja.show() avis.set_from_file("info.png") caja.pack_start(avis) error=gtk.Label("Nombre de usuario o contraseña no validos.") caja.pack_start(error) aviso.action_area.pack_start(caja) avis.show() error.show() aviso.show() -- Hidura From jjrojoc en hotmail.com Tue Sep 11 00:48:10 2007 From: jjrojoc en hotmail.com (=?iso-8859-1?B?SnVhbiBKb3PpIFJvam8=?=) Date: Mon, 10 Sep 2007 22:48:10 +0000 Subject: Ayuda para insertar datos MySQL In-Reply-To: References: Message-ID: cursor.execute('insert into datos (codigo, nombre, edad) values (%s, %s, %s)', (codigo, nombre, edad)) >From: "Manuel Enrique González Ramírez" >Reply-To: La lista de python en castellano >To: python-es en aditel.org >Subject: [Python-es] Ayuda para insertar datos MySQL >Date: Mon, 10 Sep 2007 14:37:11 -0500 > >Hola amigos, > >Tengo una ventana en wx y una conexion a MySQL el problema es que no sé >como >hacer para que los datos de los textos (codigo, nombre y edad) me los >reconozca la sentencia execute. Les pongo el código y si alguien me puede >ayudar de una vez muchas gracias. >P.D. He hecho de todo, cambiando comillas; separando código de la consulta, >etc. ># -*- coding: cp1252 -*- >#!/usr/bin/python > >import wx >import MySQLdb as my > >class InsertData(wx.Frame): > def __init__(self, parent, id, title): > wx.Frame.__init__(self, parent, id, title, size=(280, 200)) > > panel = wx.Panel(self, -1) > > gs = wx.FlexGridSizer(3, 2, 9, 9) > vbox = wx.BoxSizer(wx.VERTICAL) > hbox = wx.BoxSizer(wx.HORIZONTAL) > > codigo = wx.StaticText(panel, -1, 'Codigo') > nombre = wx.StaticText(panel, -1, 'Nombre') > edad = wx.StaticText(panel, -1, 'Edad') > self.sp = wx.SpinCtrl(panel, -1, '', size=(60, -1), min=1, >max=100) > self.tc1 = wx.TextCtrl(panel, -1, size=(150, -1)) > self.tc2 = wx.TextCtrl(panel, -1, size=(150, -1)) > > gs.AddMany([(codigo), (self.tc1, 1, wx.LEFT, 10), > (nombre), (self.tc2, 1, wx.LEFT, 10), > (edad), (self.sp, 0, wx.LEFT, 10)]) > > vbox.Add(gs, 0, wx.ALL, 10) > vbox.Add((-1, 30)) > > insertar = wx.Button(panel, -1, 'Insertar', size=(-1, 30)) > cancelar = wx.Button(panel, -1, 'Cancelar', size=(-1, 30)) > hbox.Add(insertar) > hbox.Add(cancelar, 0, wx.LEFT, 5) > vbox.Add(hbox, 0, wx.ALIGN_CENTER | wx.BOTTOM, 10) > > self.Bind(wx.EVT_BUTTON, self.OnInsert, id=insertar.GetId()) > self.Bind(wx.EVT_BUTTON, self.OnCancel, id=cancelar.GetId()) > > panel.SetSizer(vbox) > > self.Centre() > self.Show(True) > > def OnInsert(self, event): > try: > db = my.connect >(host='localhost',user='root',passwd='12345678',db='ejemplo') > cursor = db.cursor() > > codigo = self.tc1.GetValue() > nombre = self.sp.GetValue() > edad = self.tc2.GetValue() > > cursor.execute("insert into datos values('%d','%s','%d')" % >(codigo,nombre,edad)) > > #resultado=cursor.fetchall() > con.commit() > cur.close() > con.close() > > except my.Error, error: > dlg = wx.MessageDialog(self, str(error), 'Ocurrio un error >:(') > dlg.ShowModal() > > def OnCancel(self, event): > self.Close() > > > >app = wx.App() >InsertData(None, -1, 'INGRESAR DATOS') >app.MainLoop() >_______________________________________________ >Python-es mailing list >Python-es en aditel.org >http://listas.aditel.org/listinfo/python-es _________________________________________________________________ Horóscopo, tarot, numerología... Escucha lo que te dicen los astros. http://astrocentro.msn.es/ From pepe en diselpro.com Tue Sep 11 18:03:55 2007 From: pepe en diselpro.com (Pepe Aracil) Date: Tue, 11 Sep 2007 18:03:55 +0200 Subject: buscando hosting In-Reply-To: <9236bdc00709062021k3b88f743ke3df017a7aff2719@mail.gmail.com> References: <9236bdc00709062021k3b88f743ke3df017a7aff2719@mail.gmail.com> Message-ID: <46E6BC6B.2040302@diselpro.com> El más barato que he visto con soporte python es de: http://www.ovh.es y en cocreto este: http://www.ovh.es/productos/90plan.xml Para aplicaciones de mayor tamaño, tienen servidores dedicados por 19,99 ?/mes ¿Hay más baratos? Saludos. jav tap escribió: > Hhola, para mi proyecto de examen de grado debo utilizar python y mysql, sin > embargo no he podido encontrar un hosting gratuito que me brinde esos > servicios. Si conocen alguno seria de gran ayuda. > > Gracias. > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From xinxic en gmail.com Tue Sep 11 19:41:46 2007 From: xinxic en gmail.com (Xin) Date: Tue, 11 Sep 2007 19:41:46 +0200 Subject: buscando hosting In-Reply-To: <46E6BC6B.2040302@diselpro.com> References: <9236bdc00709062021k3b88f743ke3df017a7aff2719@mail.gmail.com> <46E6BC6B.2040302@diselpro.com> Message-ID: <6faeca696e8f24281262ca5ab76ec5b1@GMail.com> OVH solo tiene CGI, no tienen ni mod_python ni FastCGI Lo digo porqué lo pregunté dos veces, pués la premera respuesta parecia que si que se podia, pero era un poco confusa. Xin El 11/09/2007, a les 18:03, en/na Pepe Aracil va escriure: > El más barato que he visto con soporte python es de: > http://www.ovh.es > y en cocreto este: > http://www.ovh.es/productos/90plan.xml > > Para aplicaciones de mayor tamaño, tienen servidores dedicados > por 19,99 ?/mes ¿Hay más baratos? > > Saludos. > > jav tap escribió: >> Hhola, para mi proyecto de examen de grado debo utilizar python y >> mysql, sin >> embargo no he podido encontrar un hosting gratuito que me brinde esos >> servicios. Si conocen alguno seria de gran ayuda. >> Gracias. >> _______________________________________________ >> Python-es mailing list >> Python-es en aditel.org >> http://listas.aditel.org/listinfo/python-es > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From ingcomrbr en gmail.com Tue Sep 11 20:57:06 2007 From: ingcomrbr en gmail.com (Ramon Becerra Reynoso) Date: Tue, 11 Sep 2007 13:57:06 -0500 Subject: Ayuda para insertar datos MySQL Message-ID: > Message: 2 > Date: Mon, 10 Sep 2007 14:37:11 -0500 > From: " Manuel Enrique González Ramírez " > Subject: [Python-es] Ayuda para insertar datos MySQL > To: python-es en aditel.org > Message-ID: > > Content-Type: text/plain; charset=ISO-8859-1 > > Hola amigos, > > Tengo una ventana en wx y una conexion a MySQL el problema es que no sé > como > hacer para que los datos de los textos (codigo, nombre y edad) me los > reconozca la sentencia execute. Les pongo el código y si alguien me puede > ayudar de una vez muchas gracias. > P.D. He hecho de todo, cambiando comillas; separando código de la > consulta, > etc. > # -*- coding: cp1252 -*- > #!/usr/bin/python > > import wx > import MySQLdb as my > > class InsertData(wx.Frame): > def __init__(self, parent, id, title): > wx.Frame.__init__(self, parent, id, title, size=(280, 200)) > > panel = wx.Panel(self, -1) > > gs = wx.FlexGridSizer(3, 2, 9, 9) > vbox = wx.BoxSizer(wx.VERTICAL) > hbox = wx.BoxSizer(wx.HORIZONTAL) > > codigo = wx.StaticText(panel, -1, 'Codigo') > nombre = wx.StaticText(panel, -1, 'Nombre') > edad = wx.StaticText(panel, -1, 'Edad') > self.sp = wx.SpinCtrl(panel, -1, '', size=(60, -1), min=1, > max=100) > self.tc1 = wx.TextCtrl(panel, -1, size=(150, -1)) > self.tc2 = wx.TextCtrl(panel, -1, size=(150, -1)) > > gs.AddMany([(codigo), (self.tc1, 1, wx.LEFT, 10), > (nombre), (self.tc2, 1, wx.LEFT, 10), > (edad), (self.sp, 0, wx.LEFT, 10)]) > > vbox.Add(gs, 0, wx.ALL, 10) > vbox.Add((-1, 30)) > > insertar = wx.Button(panel, -1, 'Insertar', size=(-1, 30)) > cancelar = wx.Button(panel, -1, 'Cancelar', size=(-1, 30)) > hbox.Add(insertar) > hbox.Add(cancelar, 0, wx.LEFT, 5) > vbox.Add(hbox, 0, wx.ALIGN_CENTER | wx.BOTTOM, 10) > > self.Bind(wx.EVT_BUTTON, self.OnInsert, id=insertar.GetId()) > self.Bind(wx.EVT_BUTTON, self.OnCancel, id=cancelar.GetId()) > > panel.SetSizer(vbox) > > self.Centre() > self.Show(True) > > def OnInsert(self, event): > try: > db = my.connect > (host='localhost',user='root',passwd='12345678',db='ejemplo') > cursor = db.cursor() > > codigo = self.tc1.GetValue() > nombre = self.sp.GetValue() > edad = self.tc2.GetValue() > > cursor.execute("insert into datos values('%d','%s','%d')" % > (codigo,nombre,edad)) > > #resultado=cursor.fetchall() > con.commit() De donde sacas "con" ..? Deberia de ser "db" NO EXISTE ESA VARIABLE!!!! cur.close() > con.close() > > except my.Error, error: > dlg = wx.MessageDialog(self, str(error), 'Ocurrio un error > :(') > dlg.ShowModal() > > def OnCancel(self, event): > self.Close() > > > > app = wx.App() > InsertData(None, -1, 'INGRESAR DATOS') > app.MainLoop() > > > -- No basta saber, se debe también aplicar. No es suficiente querer, se debe también hacer. From peonblanco83 en gmail.com Tue Sep 11 21:31:45 2007 From: peonblanco83 en gmail.com (Peon Blanco) Date: Tue, 11 Sep 2007 13:31:45 -0600 Subject: PYGTK y for Message-ID: buenas tardes como estan espero que bien ojala y me puedan ayudar con mi problema tengo una aplicacion que manda ping a unas 300 ip separadas por regiones tengo 3 regiones en la aplicacion las cuales estan divididas por 4 textview los cuales estan divididos por "server, soporte, antenas y ds0" y tengo un textview donde me muestra a todo lo que le mando ping todo lo hace bien el problema es que en el proceso de chequeo la apliacion no muestra nada asta que lo termina tambien tengo otras aplicaciones para agregar nuevos server y lo que yo quiero es poder ver a que server se le esta hacendo ping y poder insertar por decir asi o tro server algo asi como que sean procesos independientes espero y me haya dado a entender y espero y me puedan ayudar From cquerol.llistes en gmail.com Tue Sep 11 23:42:32 2007 From: cquerol.llistes en gmail.com (Carles Querol) Date: Tue, 11 Sep 2007 23:42:32 +0200 Subject: =?iso-8859-1?q?M=E9todos_abstractos_en_Python?= Message-ID: Hola, para un proyecto necesito implementar una clase abstracta, pero no encuentro información de cómo definir métodos abstractos en Python. sabéis si ésto es posible? Gracias. From arnau en ehas.org Tue Sep 11 23:48:05 2007 From: arnau en ehas.org (Arnau Sanchez) Date: Tue, 11 Sep 2007 23:48:05 +0200 Subject: =?ISO-8859-1?Q?M=E9todos_abstractos_en_Pyt?= =?ISO-8859-1?Q?hon?= In-Reply-To: References: Message-ID: <46E70D15.4010005@ehas.org> Carles Querol escribió: > para un proyecto necesito implementar una clase abstracta, pero no encuentro > información de cómo definir métodos abstractos en Python. sabéis si ésto es > posible? ¿Buscaste bien? sólo poniendo "python abstract classes" en google salen millones de entradas... Hay algo en el ASPN, pero me quedo con la simplicidad de la propuesta de Peter Norvig: http://norvig.com/python-iaq.html Q: Can you implement abstract classes in Python in 0 lines of code? Or 4? From cquerol.llistes en gmail.com Wed Sep 12 00:01:28 2007 From: cquerol.llistes en gmail.com (Carles Querol) Date: Wed, 12 Sep 2007 00:01:28 +0200 Subject: =?ISO-8859-1?Q?Re:__M=E9todos_abstractos_en_Python?= In-Reply-To: <46E70D15.4010005@ehas.org> References: <46E70D15.4010005@ehas.org> Message-ID: Obviamente, si que he buscado, pero lo más parecido que he encontrado a un metodo/clase abstracta es esta salvajada: http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/266468 Gracias por la ayuda. El día 11/09/07, Arnau Sanchez escribió: > > Carles Querol escribió: > > > para un proyecto necesito implementar una clase abstracta, pero no > encuentro > > información de cómo definir métodos abstractos en Python. sabéis si ésto > es > > posible? > > ¿Buscaste bien? sólo poniendo "python abstract classes" en google salen > millones > de entradas... > > Hay algo en el ASPN, pero me quedo con la simplicidad de la propuesta de > Peter > Norvig: > > http://norvig.com/python-iaq.html > > Q: Can you implement abstract classes in Python in 0 lines of code? Or 4? > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From arnau en ehas.org Wed Sep 12 00:12:57 2007 From: arnau en ehas.org (Arnau Sanchez) Date: Wed, 12 Sep 2007 00:12:57 +0200 Subject: =?ISO-8859-1?Q?M=E9todos_abstractos_en_Pyt?= =?ISO-8859-1?Q?hon?= In-Reply-To: References: <46E70D15.4010005@ehas.org> Message-ID: <46E712E9.7000707@ehas.org> Carles Querol escribió: > metodo/clase abstracta es esta salvajada: > > http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/266468 Sí, esa receta da un poco de miedo. Por eso te decía que prefería la simplicidad de la de Norvig... pero claro, es tan simple que quizá no haga lo que necesitas. > Obviamente, si que he buscado Ok, pero como no dices lo que encontraste, por qué no te gusta, y qué es exactamente lo que necesitas, es más difícil ayudarte. No te lo decía con mala intención. From juatman_2000 en yahoo.es Wed Sep 12 00:35:51 2007 From: juatman_2000 en yahoo.es (Juan M.) Date: Wed, 12 Sep 2007 00:35:51 +0200 Subject: buscando hosting References: <9236bdc00709062021k3b88f743ke3df017a7aff2719@mail.gmail.com><46E6BC6B.2040302@diselpro.com> <6faeca696e8f24281262ca5ab76ec5b1@GMail.com> Message-ID: <006201c7f4c4$2126d970$f38be050@equipo> Hola gente :-) Chema Cortés me recomendó un Servidor Privado Virtual, así puedes trabajar *casi* como si dispusieras del servidor para ti, lo que es necesario cuando quieres instalar Turbogears, PIL, etc... En Axarnet (http://www.axarnet.es/) me cuesta 21 Euros el trimestre. Seguro que hay algunos más con características parecidas. Saludos. :-) ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From cabrerachaparro en gmail.com Wed Sep 12 01:00:58 2007 From: cabrerachaparro en gmail.com (Daniel Cabrera) Date: Tue, 11 Sep 2007 18:00:58 -0500 Subject: buscando hosting In-Reply-To: <006201c7f4c4$2126d970$f38be050@equipo> References: <9236bdc00709062021k3b88f743ke3df017a7aff2719@mail.gmail.com> <46E6BC6B.2040302@diselpro.com> <6faeca696e8f24281262ca5ab76ec5b1@GMail.com> <006201c7f4c4$2126d970$f38be050@equipo> Message-ID: <8565ad90709111600l743a2c41l1207826f13b4913a@mail.gmail.com> Hola, Una vez escribi un articulo en mi blog sobre algunos Hosting que trabajan con Python. Este es el link http://comulinux.blogspot.com/2007/06/linux-hosting-con-linux.html Espero te sirva. Saludos. El día 11/09/07, Juan M. escribió: > > Hola gente :-) > Chema Cortés me recomendó un Servidor Privado Virtual, así puedes trabajar > *casi* como si dispusieras del servidor para ti, lo que es necesario > cuando > quieres instalar Turbogears, PIL, etc... > En Axarnet (http://www.axarnet.es/) me cuesta 21 Euros el trimestre. > Seguro > que hay algunos más con características parecidas. > Saludos. :-) > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > > -- Daniel Cabrera Chaparro Noticias Interesantes de Linux en http://comulinux.blogspot.com/ From maengora en gmail.com Wed Sep 12 01:52:06 2007 From: maengora en gmail.com (=?ISO-8859-1?Q?Manuel_Enrique_Gonz=E1lez_Ram=EDrez?=) Date: Tue, 11 Sep 2007 18:52:06 -0500 Subject: Sigue el error MySQL Message-ID: Continua el error al tratar de hacer la conexion. Este es el mensaje que me aparece: Traceback (most recent call last): File "C:\Python25\ejms\dbconecta.py", line 51, in OnInsert cursor.execute('insert into datos values(%d,%s,%d)' % (codigo,nombre,edad)) TypeError: int argument required Y ya he volteado con los %d de todas las formas posibles. From pan_python en yahoo.com.ar Wed Sep 12 06:37:29 2007 From: pan_python en yahoo.com.ar (Ariel Nardelli) Date: Wed, 12 Sep 2007 01:37:29 -0300 Subject: Sigue el error MySQL In-Reply-To: References: Message-ID: <46E76D09.6010109@yahoo.com.ar> Manuel Enrique González Ramírez wrote: > Continua el error al tratar de hacer la conexion. > Este es el mensaje que me aparece: > Traceback (most recent call last): > File "C:\Python25\ejms\dbconecta.py", line 51, in OnInsert > cursor.execute('insert into datos values(%d,%s,%d)' % > (codigo,nombre,edad)) > TypeError: int argument required > > Y ya he volteado con los %d de todas las formas posibles. > Mira, yo tengo mas o menos parecido las cosas y no me da este error con la diferencia que yo uso todo %s sin importar si es numero o letra lo que pongo... El error que te da es que te esta pidiendo un dato como integer y vos no lo mandas asi... Taria bueno que pongas los 3 valores (codigo, nombre y edad) hace un print de las variables y ademas por otro lado pongas como las tenes definida a las variables en la tabla sql para comparar los datos. Manda esa info asi me saco la duda de como estas cargando los datos Ariel From adminies.reinoaftasi en edu.juntaextremadura.net Wed Sep 12 07:39:11 2007 From: adminies.reinoaftasi en edu.juntaextremadura.net (Javier Majado) Date: Wed, 12 Sep 2007 07:39:11 +0200 Subject: lanzar programas externos Message-ID: <1189575551.4325.5.camel@adtor-pro.reinoaftasi.ex> Echando una mano a un amiguete para una live de wireless, me pidió una pequeña aplicación pygtk para unos procesitos. El caso, que necesitamos lanzar programas externos (para quién les suene, a mi poco la verdad, airdump-ng, kismet, etc ...), pero no necesitamos esperar a la terminación de estos, ni que sepamos su salida. Gracias ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From adminies.reinoaftasi en edu.juntaextremadura.net Wed Sep 12 07:36:56 2007 From: adminies.reinoaftasi en edu.juntaextremadura.net (Javier Majado) Date: Wed, 12 Sep 2007 07:36:56 +0200 Subject: Sigue el error MySQL In-Reply-To: References: Message-ID: <1189575417.4325.1.camel@adtor-pro.reinoaftasi.ex> Debes de olvidarte del %d, para sentencias sql solo se permite %s. Eso sí, el dato sería conveniente que lo pasaras como int. No obstante, es conveniente poner los campos de la tabla "datos", así te aseguras del orden y número de estos. Saludos El mar, 11-09-2007 a las 18:52 -0500, Manuel Enrique González Ramírez escribió: > Continua el error al tratar de hacer la conexion. > Este es el mensaje que me aparece: > Traceback (most recent call last): > File "C:\Python25\ejms\dbconecta.py", line 51, in OnInsert > cursor.execute('insert into datos values(%d,%s,%d)' % > (codigo,nombre,edad)) > TypeError: int argument required > > Y ya he volteado con los %d de todas las formas posibles. > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From jjrojoc en hotmail.com Wed Sep 12 09:40:23 2007 From: jjrojoc en hotmail.com (=?iso-8859-1?B?SnVhbiBKb3PpIFJvam8=?=) Date: Wed, 12 Sep 2007 07:40:23 +0000 Subject: Sigue el error MySQL In-Reply-To: References: Message-ID: Aquí tienes el código funcionando, aunque tuve que poner el campo del spin en la base de datos como varchar porque me pedía también lo del int, si alguien sabe como arreglar eso, sería lo único que te falta. # -*- coding: cp1252 -*- #!/usr/bin/python import wx import MySQLdb as my class InsertData(wx.Frame): def __init__(self, parent, id, title): wx.Frame.__init__(self, parent, id, title, size=(280, 200)) panel = wx.Panel(self, -1) gs = wx.FlexGridSizer(3, 2, 9, 9) vbox = wx.BoxSizer(wx.VERTICAL) hbox = wx.BoxSizer(wx.HORIZONTAL) codigo = wx.StaticText(panel, -1, 'Codigo') nombre = wx.StaticText(panel, -1, 'Nombre') edad = wx.StaticText(panel, -1, 'Edad') self.sp = wx.SpinCtrl(panel, -1, '', size=(60, -1), min=1, max=100) self.tc1 = wx.TextCtrl(panel, -1, size=(150, -1)) self.tc2 = wx.TextCtrl(panel, -1, size=(150, -1)) gs.AddMany([(codigo), (self.tc1, 1, wx.LEFT, 10), (nombre), (self.tc2, 1, wx.LEFT, 10), (edad), (self.sp, 0, wx.LEFT, 10)]) vbox.Add(gs, 0, wx.ALL, 10) vbox.Add((-1, 30)) insertar = wx.Button(panel, -1, 'Insertar', size=(-1, 30)) cancelar = wx.Button(panel, -1, 'Cancelar', size=(-1, 30)) hbox.Add(insertar) hbox.Add(cancelar, 0, wx.LEFT, 5) vbox.Add(hbox, 0, wx.ALIGN_CENTER | wx.BOTTOM, 10) self.Bind(wx.EVT_BUTTON, self.OnInsert, id=insertar.GetId()) self.Bind(wx.EVT_BUTTON, self.OnCancel, id=cancelar.GetId()) panel.SetSizer(vbox) self.Centre() self.Show(True) def OnInsert(self, event): try: db = my.connect(host='localhost',user='root',passwd='',db='ejemplo') cursor = db.cursor() codigo = self.tc1.GetValue() nombre = self.tc2.GetValue() edad = self.sp.GetValue() print codigo, nombre, edad cursor.execute('insert into datos (codigo, nombre, edad) values (%s, %s, %s)', (codigo, nombre, edad)) #resultado=cursor.fetchall() db.commit() cursor.close() db.close() except my.Error, error: dlg = wx.MessageDialog(self, str(error), 'Ocurrio un error :(') dlg.ShowModal() def OnCancel(self, event): self.Close() app = wx.App() InsertData(None, -1, 'INGRESAR DATOS') app.MainLoop() >From: "Manuel Enrique González Ramírez" >Reply-To: La lista de python en castellano >To: python-es en aditel.org >Subject: [Python-es] Sigue el error MySQL >Date: Tue, 11 Sep 2007 18:52:06 -0500 > >Continua el error al tratar de hacer la conexion. >Este es el mensaje que me aparece: >Traceback (most recent call last): > File "C:\Python25\ejms\dbconecta.py", line 51, in OnInsert > cursor.execute('insert into datos values(%d,%s,%d)' % >(codigo,nombre,edad)) >TypeError: int argument required > >Y ya he volteado con los %d de todas las formas posibles. >_______________________________________________ >Python-es mailing list >Python-es en aditel.org >http://listas.aditel.org/listinfo/python-es _________________________________________________________________ Descarga gratis la Barra de Herramientas de MSN http://www.msn.es/usuario/busqueda/barra?XAPID=2031&DI=1055&SU=http%3A//www.hotmail.com&HL=LINKTAG1OPENINGTEXT_MSNBH From jjrojoc en hotmail.com Wed Sep 12 11:52:09 2007 From: jjrojoc en hotmail.com (=?iso-8859-1?B?SnVhbiBKb3PpIFJvam8=?=) Date: Wed, 12 Sep 2007 09:52:09 +0000 Subject: Sigue el error MySQL In-Reply-To: References: Message-ID: Perdón, si funciona con el campo edad en la base de datos como int, no lo había probado. >From: Juan José Rojo >Reply-To: La lista de python en castellano >To: python-es en aditel.org >Subject: RE: [Python-es] Sigue el error MySQL >Date: Wed, 12 Sep 2007 07:40:23 +0000 > > >Aquí tienes el código funcionando, aunque tuve que poner el campo del spin >en la base de datos como varchar porque me pedía también lo del int, si >alguien sabe como arreglar eso, sería lo único que te falta. > ># -*- coding: cp1252 -*- >#!/usr/bin/python > >import wx >import MySQLdb as my > >class InsertData(wx.Frame): > def __init__(self, parent, id, title): > wx.Frame.__init__(self, parent, id, title, size=(280, 200)) > > panel = wx.Panel(self, -1) > > gs = wx.FlexGridSizer(3, 2, 9, 9) > vbox = wx.BoxSizer(wx.VERTICAL) > hbox = wx.BoxSizer(wx.HORIZONTAL) > > codigo = wx.StaticText(panel, -1, 'Codigo') > nombre = wx.StaticText(panel, -1, 'Nombre') > edad = wx.StaticText(panel, -1, 'Edad') > self.sp = wx.SpinCtrl(panel, -1, '', size=(60, -1), min=1, max=100) > self.tc1 = wx.TextCtrl(panel, -1, size=(150, -1)) > self.tc2 = wx.TextCtrl(panel, -1, size=(150, -1)) > > gs.AddMany([(codigo), (self.tc1, 1, wx.LEFT, 10), > (nombre), (self.tc2, 1, wx.LEFT, 10), > (edad), (self.sp, 0, wx.LEFT, 10)]) > > vbox.Add(gs, 0, wx.ALL, 10) > vbox.Add((-1, 30)) > > insertar = wx.Button(panel, -1, 'Insertar', size=(-1, 30)) > cancelar = wx.Button(panel, -1, 'Cancelar', size=(-1, 30)) > hbox.Add(insertar) > hbox.Add(cancelar, 0, wx.LEFT, 5) > vbox.Add(hbox, 0, wx.ALIGN_CENTER | wx.BOTTOM, 10) > > self.Bind(wx.EVT_BUTTON, self.OnInsert, id=insertar.GetId()) > self.Bind(wx.EVT_BUTTON, self.OnCancel, id=cancelar.GetId()) > > panel.SetSizer(vbox) > > self.Centre() > self.Show(True) > > def OnInsert(self, event): > try: > db = >my.connect(host='localhost',user='root',passwd='',db='ejemplo') > cursor = db.cursor() > > codigo = self.tc1.GetValue() > nombre = self.tc2.GetValue() > edad = self.sp.GetValue() > print codigo, nombre, edad > > cursor.execute('insert into datos (codigo, nombre, edad) values >(%s, %s, %s)', (codigo, nombre, edad)) > > #resultado=cursor.fetchall() > db.commit() > cursor.close() > db.close() > > except my.Error, error: > dlg = wx.MessageDialog(self, str(error), 'Ocurrio un error :(') > dlg.ShowModal() > > def OnCancel(self, event): > self.Close() > > > >app = wx.App() >InsertData(None, -1, 'INGRESAR DATOS') >app.MainLoop() > >>From: "Manuel Enrique González Ramírez" >>Reply-To: La lista de python en castellano >>To: python-es en aditel.org >>Subject: [Python-es] Sigue el error MySQL >>Date: Tue, 11 Sep 2007 18:52:06 -0500 >> >>Continua el error al tratar de hacer la conexion. >>Este es el mensaje que me aparece: >>Traceback (most recent call last): >> File "C:\Python25\ejms\dbconecta.py", line 51, in OnInsert >> cursor.execute('insert into datos values(%d,%s,%d)' % >>(codigo,nombre,edad)) >>TypeError: int argument required >> >>Y ya he volteado con los %d de todas las formas posibles. >>_______________________________________________ >>Python-es mailing list >>Python-es en aditel.org >>http://listas.aditel.org/listinfo/python-es > >_________________________________________________________________ >Descarga gratis la Barra de Herramientas de MSN >http://www.msn.es/usuario/busqueda/barra?XAPID=2031&DI=1055&SU=http%3A//www.hotmail.com&HL=LINKTAG1OPENINGTEXT_MSNBH > >_______________________________________________ >Python-es mailing list >Python-es en aditel.org >http://listas.aditel.org/listinfo/python-es _________________________________________________________________ Dale rienda suelta a tu tiempo libre. Mil ideas para exprimir tu ocio con MSN Entretenimiento. http://entretenimiento.msn.es/ From arnau en ehas.org Wed Sep 12 11:57:16 2007 From: arnau en ehas.org (Arnau Sanchez) Date: Wed, 12 Sep 2007 11:57:16 +0200 Subject: lanzar programas externos In-Reply-To: <1189575551.4325.5.camel@adtor-pro.reinoaftasi.ex> References: <1189575551.4325.5.camel@adtor-pro.reinoaftasi.ex> Message-ID: <46E7B7FC.1020100@ehas.org> Javier Majado escribió: > Echando una mano a un amiguete para una live de wireless, me pidió una > pequeña aplicación pygtk para unos procesitos. El caso, que necesitamos > lanzar programas externos (para quién les suene, a mi poco la verdad, > airdump-ng, kismet, etc ...), pero no necesitamos esperar a la > terminación de estos, ni que sepamos su salida. ¿kismet? ¿airdump-ng? intuimos qué quiere hacer tu amigo :-) Lanzar procesos externos en Python es sencillo, y más en este caso que no tienes que capturar la salida. Usa el módulo subprocess: http://docs.python.org/lib/module-subprocess.html (sección: reemplazar os.spawn*) Sería conveniente que, para impedir que el proceso hijo acabe zombie cuando finalice, captures la señal SIGCHLD (usa para ello el módulo signal) y llames a os.wait() dentro del manejador. Escribe si tienes dudas. arnau ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From maengora en gmail.com Wed Sep 12 18:49:18 2007 From: maengora en gmail.com (=?ISO-8859-1?Q?Manuel_Enrique_Gonz=E1lez_Ram=EDrez?=) Date: Wed, 12 Sep 2007 11:49:18 -0500 Subject: Solucionado MySQL Message-ID: Compañeros muchas gracias. Al menos ya tengo mas claridad sobre como lo debo de hacer, lo otro sera pulir la conexion, listas y otros. Nuevamente muchas gracias. From nachxs en gmail.com Thu Sep 13 06:40:49 2007 From: nachxs en gmail.com (NachXs) Date: Wed, 12 Sep 2007 23:40:49 -0500 Subject: Ayuda con Thread Message-ID: <6e08b4840709122140p3ee7a1b7ib05686e523cf8c3c@mail.gmail.com> Hola lista, necesito de su ayuda, estoy trabajando con threads pero tengo un duda para ejecutar un mismo proceso 2 o mas veces a la vez. Asumiendo que tengo el siguiente codigo import thread def proceso(par_1, par_2): while 1: print "Proceso....." def main(): while 1: thread.star_new(proceso(par_1,par_2)) if __name__ == "__main__": main() Es posible hacer esto??, la cosa es que quiero ejecutar el mismo proceso a la misma vez pero con otros parametros y asi sucesivamente. Espero haberme explicado Gracias. -- From sinnerencia en gmail.com Thu Sep 13 09:20:34 2007 From: sinnerencia en gmail.com (Alex Sancho) Date: Thu, 13 Sep 2007 09:20:34 +0200 Subject: Convertir lista en cadena de caracteres Message-ID: <200709130920.35502.sinner@catmeteo.com> Buenas! En primer lugar, gracias a todos por el apoyo brindado a todos los usuarios. Vamos al lio. El caso es que quiero pasar una lista a una cadena de carácteres, es decir, que el resultado de esto def caracter (string):     return map(ord,string) l = sys.stdin.readline() i = caracter(l) print i En vez de dar una lista, de una cadena O en su defecto, cómo convertir un texto a números (ya sea ASCII o lo que sea) en programación funcional (nada de bucles) Muchas gracias! -- Alex Sancho From sinnerencia en gmail.com Thu Sep 13 09:27:23 2007 From: sinnerencia en gmail.com (Alex Sancho) Date: Thu, 13 Sep 2007 09:27:23 +0200 Subject: Convertir lista en cadena de caracteres Message-ID: Buenas! En primer lugar, gracias a todos por el apoyo brindado a todos los usuarios. Vamos al lio. El caso es que quiero pasar una lista a una cadena de carácteres, es decir, que el resultado de esto def caracter (string): return map(ord,string) l = sys.stdin.readline() i = caracter(l) print i En vez de dar una lista, de una cadena O en su defecto, cómo convertir un texto a números (ya sea ASCII o lo que sea) en programación funcional (nada de bucles) Muchas gracias! -- Alex Sancho From gagsl-py2 en yahoo.com.ar Thu Sep 13 09:36:07 2007 From: gagsl-py2 en yahoo.com.ar (Gabriel Genellina) Date: Thu, 13 Sep 2007 04:36:07 -0300 Subject: Ayuda con Thread References: <6e08b4840709122140p3ee7a1b7ib05686e523cf8c3c@mail.gmail.com> Message-ID: En Thu, 13 Sep 2007 01:40:49 -0300, NachXs escribi?: > Hola lista, necesito de su ayuda, estoy trabajando con threads pero > tengo un > duda para ejecutar un mismo proceso 2 o mas veces a la vez. Asumiendo que > tengo el siguiente codigo A ver si esto te sirve. Uso threading que es mas "amigable". El codigo crea 5 threads que ejecutan la misma funcion pero con diferentes argumentos: from threading import Thread, currentThread from time import sleep from random import random # esta es la funcion que ejecutan todos los threads "simultaneamente" def pasar_el_rato(cuanto): print "Comienza %s" % currentThread().getName() while cuanto>0: print "%s: Faltan %.1f seg..." % (currentThread().getName(), cuanto) espera = random()*3 sleep(espera) cuanto -= espera print "Termina %s" % currentThread().getName() # creo 5 threads mis_threads = [Thread(target=pasar_el_rato, args=(random()*20,)) for i in range(5)] # los ejecuto for t in mis_threads: t.start() # espero que terminen for t in mis_threads: t.join() print "Fin!" -- Gabriel Genellina ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From gagsl-py2 en yahoo.com.ar Thu Sep 13 09:40:37 2007 From: gagsl-py2 en yahoo.com.ar (Gabriel Genellina) Date: Thu, 13 Sep 2007 04:40:37 -0300 Subject: Convertir lista en cadena de caracteres References: Message-ID: En Thu, 13 Sep 2007 04:27:23 -0300, Alex Sancho escribi?: > El caso es que quiero pasar una lista a una cadena de carácteres, es > decir, > que el resultado de esto > > > def caracter (string): > return map(ord,string) > > > l = sys.stdin.readline() > > i = caracter(l) > > print i > > En vez de dar una lista, de una cadena > > O en su defecto, cómo convertir un texto a números (ya sea ASCII o lo que > sea) > en programación funcional (nada de bucles) No estoy seguro de haber entendido lo que estas tratando de hacer, a ver si esto se acerca: py> linea = "Hola gente!" py> ' '.join([str(ord(c)) for c in linea]) '72 111 108 97 32 103 101 110 116 101 33' -- Gabriel Genellina ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From peralta en ziritione.org Tue Sep 4 10:03:02 2007 From: peralta en ziritione.org (Luis Peralta) Date: Tue, 4 Sep 2007 10:03:02 +0200 Subject: __future__ In-Reply-To: <46DC67AD.3070705@ehas.org> References: <38843d471f221175eda9c3611f291945@GMail.com> <2c9fb0dd0709030707v417f0194p23608a5073338f3f@mail.gmail.com> <81acbde3014449fbe8ef6d11b18a3253@GMail.com> <861451d60709030904vd749b32wc676afacaadf792a@mail.gmail.com> <46DC67AD.3070705@ehas.org> Message-ID: <861451d60709040103l6461847ald00283e733edcf80@mail.gmail.com> El 3/09/07, Arnau Sanchez escribió: > Luis Peralta escribió: > > > > Sin duda la mejor funcionalidad futura son los 'braces' ;) > > ¿Cómo? ¿Pero no existían ya? > > http://www.python.org/doc/Humor.html#parsing Pues no te creas, que con esto seguro que convierto a alguno :P -- Luis Peralta http://www.ziritione.org From sinnerencia en gmail.com Thu Sep 13 10:01:15 2007 From: sinnerencia en gmail.com (Alex Sancho) Date: Thu, 13 Sep 2007 10:01:15 +0200 Subject: Convertir lista en cadena de caracteres In-Reply-To: References: Message-ID: En primer lugar, gracias por contestar. Lo que quiero es, partiendo de un archivo de texto, por ejemplo "Hoy va a llover" Lo convierta en una cadena continua de números al ejecutar el programa. Si lo hago de la manera que he indicado antes, esa es la salida :~/python$ python leertexto.py : > > En Thu, 13 Sep 2007 04:27:23 -0300, Alex Sancho > escribi?: > > > El caso es que quiero pasar una lista a una cadena de carácteres, es > > decir, > > que el resultado de esto > > > > > > def caracter (string): > > return map(ord,string) > > > > > > l = sys.stdin.readline() > > > > i = caracter(l) > > > > print i > > > > En vez de dar una lista, de una cadena > > > > O en su defecto, cómo convertir un texto a números (ya sea ASCII o lo > que > > sea) > > en programación funcional (nada de bucles) > > No estoy seguro de haber entendido lo que estas tratando de hacer, a ver > si esto se acerca: > > py> linea = "Hola gente!" > py> ' '.join([str(ord(c)) for c in linea]) > '72 111 108 97 32 103 101 110 116 101 33' > > -- > Gabriel Genellina > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > > -- Alex Sancho ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From xinxic en gmail.com Thu Sep 13 10:32:21 2007 From: xinxic en gmail.com (Xin) Date: Thu, 13 Sep 2007 10:32:21 +0200 Subject: Convertir lista en cadena de caracteres In-Reply-To: <200709130920.35502.sinner@catmeteo.com> References: <200709130920.35502.sinner@catmeteo.com> Message-ID: No sé si te he entendido. Però quizà esto te sirva. cadena = ''.join([chr(c) for c in lista]) Xin El 13/09/2007, a les 09:20, en/na Alex Sancho va escriure: > Buenas! > > En primer lugar, gracias a todos por el apoyo brindado a todos los > usuarios. > > Vamos al lio. > > El caso es que quiero pasar una lista a una cadena de carácteres, es > decir, > que el resultado de esto > > > def caracter (string): >     return map(ord,string) > > > l = sys.stdin.readline() > > i = caracter(l) > > print i > > En vez de dar una lista, de una cadena > > O en su defecto, cómo convertir un texto a números (ya sea ASCII o lo > que sea) > en programación funcional (nada de bucles) > > Muchas gracias! > -- > Alex Sancho > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From xinxic en gmail.com Thu Sep 13 10:39:00 2007 From: xinxic en gmail.com (Xin) Date: Thu, 13 Sep 2007 10:39:00 +0200 Subject: Convertir lista en cadena de caracteres In-Reply-To: References: Message-ID: Segun lo que dices la opción de Gabriel te debe funcionar. Quizà canviando el espacio del join por una cadena vacia. cars = 'abcdef' ''.join([str(ord(c)) for c in cars]) '979899100101102' Y si quieres leer directamente des del fichero ''.join([str(ord(c)) for c in open('fichero.txt').read()]) Xin El 13/09/2007, a les 10:01, en/na Alex Sancho va escriure: > En primer lugar, gracias por contestar. > > Lo que quiero es, partiendo de un archivo de texto, por ejemplo > > "Hoy va a llover" > > Lo convierta en una cadena continua de números al ejecutar el programa. > > Si lo hago de la manera que he indicado antes, esa es la salida > > :~/python$ python leertexto.py [72, 111, 121, 32, 118, 97, 32, 97, 32, 108, 108, 111, 118, 101, 114] > > Al ser en modo lista, no puedo tratarlo como una cadena de caracteres, > mi > intención es que la salida sea esto > > :~/python$ python leertexto.py 721111213211897329732108108111118101114 > > Si utilizo bucles, supongo que con archivos muy grandes tendrá > problemas, > por lo que he visto que la programación funcional me resulta más útil. > El > problema es que no sé convertirlo a una cadena > > Gracias nuevamente! > > > > 2007/9/13, Gabriel Genellina : >> >> En Thu, 13 Sep 2007 04:27:23 -0300, Alex Sancho >> >> escribi?: >> >>> El caso es que quiero pasar una lista a una cadena de carácteres, es >>> decir, >>> que el resultado de esto >>> >>> >>> def caracter (string): >>> return map(ord,string) >>> >>> >>> l = sys.stdin.readline() >>> >>> i = caracter(l) >>> >>> print i >>> >>> En vez de dar una lista, de una cadena >>> >>> O en su defecto, cómo convertir un texto a números (ya sea ASCII o lo >> que >>> sea) >>> en programación funcional (nada de bucles) >> >> No estoy seguro de haber entendido lo que estas tratando de hacer, a >> ver >> si esto se acerca: >> >> py> linea = "Hola gente!" >> py> ' '.join([str(ord(c)) for c in linea]) >> '72 111 108 97 32 103 101 110 116 101 33' >> >> -- >> Gabriel Genellina >> >> >> _______________________________________________ >> Python-es mailing list >> Python-es en aditel.org >> http://listas.aditel.org/listinfo/python-es >> >> > > > -- > Alex Sancho > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From a.porrua en gmail.com Thu Sep 13 12:15:44 2007 From: a.porrua en gmail.com (tny) Date: Thu, 13 Sep 2007 12:15:44 +0200 Subject: Convertir lista en cadena de caracteres In-Reply-To: References: Message-ID: <1189678544.6157.6.camel@skynet> No sé para que puedes necesitar eso... Así que a priorí no te serviría ni para criptografía, ni para compresión, ni para hash... Entre otras cosas porque las cadenas pueden ser irrecuperables, y se pueden producir colisiones. ejemplo: "mmm" 109109109 "m\n\tm" 109109109 El jue, 13-09-2007 a las 10:39 +0200, Xin escribió: > Segun lo que dices la opción de Gabriel te debe funcionar. > Quizà canviando el espacio del join por una cadena vacia. > > cars = 'abcdef' > ''.join([str(ord(c)) for c in cars]) > '979899100101102' > > Y si quieres leer directamente des del fichero > > ''.join([str(ord(c)) for c in open('fichero.txt').read()]) > > Xin > > El 13/09/2007, a les 10:01, en/na Alex Sancho va escriure: > > > En primer lugar, gracias por contestar. > > > > Lo que quiero es, partiendo de un archivo de texto, por ejemplo > > > > "Hoy va a llover" > > > > Lo convierta en una cadena continua de números al ejecutar el programa. > > > > Si lo hago de la manera que he indicado antes, esa es la salida > > > > :~/python$ python leertexto.py > [72, 111, 121, 32, 118, 97, 32, 97, 32, 108, 108, 111, 118, 101, 114] > > > > Al ser en modo lista, no puedo tratarlo como una cadena de caracteres, > > mi > > intención es que la salida sea esto > > > > :~/python$ python leertexto.py > 721111213211897329732108108111118101114 > > > > Si utilizo bucles, supongo que con archivos muy grandes tendrá > > problemas, > > por lo que he visto que la programación funcional me resulta más útil. > > El > > problema es que no sé convertirlo a una cadena > > > > Gracias nuevamente! > > > > > > > > 2007/9/13, Gabriel Genellina : > >> > >> En Thu, 13 Sep 2007 04:27:23 -0300, Alex Sancho > >> > >> escribi?: > >> > >>> El caso es que quiero pasar una lista a una cadena de carácteres, es > >>> decir, > >>> que el resultado de esto > >>> > >>> > >>> def caracter (string): > >>> return map(ord,string) > >>> > >>> > >>> l = sys.stdin.readline() > >>> > >>> i = caracter(l) > >>> > >>> print i > >>> > >>> En vez de dar una lista, de una cadena > >>> > >>> O en su defecto, cómo convertir un texto a números (ya sea ASCII o lo > >> que > >>> sea) > >>> en programación funcional (nada de bucles) > >> > >> No estoy seguro de haber entendido lo que estas tratando de hacer, a > >> ver > >> si esto se acerca: > >> > >> py> linea = "Hola gente!" > >> py> ' '.join([str(ord(c)) for c in linea]) > >> '72 111 108 97 32 103 101 110 116 101 33' > >> > >> -- > >> Gabriel Genellina > >> > >> > >> _______________________________________________ > >> Python-es mailing list > >> Python-es en aditel.org > >> http://listas.aditel.org/listinfo/python-es > >> > >> > > > > > > -- > > Alex Sancho > > _______________________________________________ > > Python-es mailing list > > Python-es en aditel.org > > http://listas.aditel.org/listinfo/python-es > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From sinnerencia en gmail.com Thu Sep 13 14:03:01 2007 From: sinnerencia en gmail.com (Alex Sancho) Date: Thu, 13 Sep 2007 14:03:01 +0200 Subject: Convertir lista en cadena de caracteres In-Reply-To: References: Message-ID: Perfecto, esto es lo que necesitaba!!! > > Y si quieres leer directamente des del fichero > > ''.join([str(ord(c)) for c in open('fichero.txt').read()]) > > Xin > Tny, tienes razón, como producto final no sirve de nada, pero como un ejemplo para desarrollar mi idea, va de perlas. Lo que quiero es, que a partir de la cadena que salga, por ejemplo (vamos a colocar algo bonito) 979899100101102103104105106107108109110111112113114115116117 se haga la generatriz de ese número, para contenerlo. Y sí, entiendo que de eso que puesto, pueden salir mil cosas, todas diferentes a lo que puse antes de convertir, pero me sirve para lanzar algo que haga la generatriz Un saludo! -- Alex Sancho From arnau en ehas.org Thu Sep 13 14:15:25 2007 From: arnau en ehas.org (Arnau Sanchez) Date: Thu, 13 Sep 2007 14:15:25 +0200 Subject: Convertir lista en cadena de caracteres In-Reply-To: <1189678544.6157.6.camel@skynet> References: <1189678544.6157.6.camel@skynet> Message-ID: <46E929DD.3030104@ehas.org> El 13/09/2007, a les 10:01, en/na Alex Sancho va escriure: > O en su defecto, cómo convertir un texto a números (ya sea ASCII o lo que > sea). en programación funcional (nada de bucles) Te han dado algunas propuestas. A la idea de pasarlo a números decimales, sólo añadiría que si éstos ocupan 3 caracteres (ya que el máximo es 255) no tendrás el problema de "sincronismo" que comentaba Tny: char2num = lambda c: "%03d" % ord(c) str2nums = lambda s: "".join(map(char2num, s)) str2nums("hola") Out[]:'104111108097' Aunque la verdad es que quedaría mucho mejor si lo hicieras en hexadecimal: char2hex = lambda c: "%02x" % ord(c) str2hexs = lambda s: "".join(map(char2hex, s)) str2hexs("hola") Out[]:'686f6c61' Si esto último te gusta, el método "encode" de la cadena te da directamente lo que buscas: http://docs.python.org/lib/standard-encodings.html "hola".encode("hex_codec") Out[]:'686f6c61' > Si utilizo bucles, supongo que con archivos muy grandes tendrá problemas, > por lo que he visto que la programación funcional me resulta más útil. El > problema es que no sé convertirlo a una cadena Aunque prefiero, con mucho, la programación funcional, usar bucles no tiene por qué resultar más lento, todo depende de cómo lo hagas. arnau ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From fpalm en ula.ve Thu Sep 13 15:47:49 2007 From: fpalm en ula.ve (Francisco Palm) Date: Thu, 13 Sep 2007 09:47:49 -0400 Subject: consulta In-Reply-To: <356e5c450708260817w4f44e180w73b0217dc6e00c87@mail.gmail.com> References: <356e5c450708260817w4f44e180w73b0217dc6e00c87@mail.gmail.com> Message-ID: La idea general es esta y se cumple para casi todos los diseñadores de interfaces gráficas en linux. Para hacer el diseño de la interfaz independiente del lenguaje de programación y la plataforma, lo que los programas para diseñar interfaces generan es un archivo en XML que en el caso de wxGlade es el archivo XRC. Luego en tu aplicación python, y esto si cambia un poco de una aplicación de diseño a otra, es necesario cargar la información de la interfaz en memoria y darle esa información a la biblioteca gráfica con la que estás trabajando (esto por lo general son un par de líneas o lo genera el programa de diseño). Es importante notar que el diseño es tan solo la inicialización de la interfaz, de allí en adelante puedes rehacerla como quieras, incluso puedes generar interfaces sin ningún diseñador. Te recomiendo simplemente que revises el código de un ejemplo completo de la web, http://www.serpia.org/wxglade o http://wxglade.sourceforge.net/tutorial.php Saludos F. Palm El 26/08/07, Pedro Campos escribió: > hola... > > mi nombre es pedro y me gustaria saber lo sgte.: > > e instalado python en mi pc, uso windows ... :S > > tambien instale wxglade, con el que pude ralizar una interfaz grafica muy > buena ;), pero la consulta es la sgte.: el wxglade me genera codigo en > xrc... que es eso??? > > ademas que se supone que con python puedo generar el codigo para dicha > nterfaz ... que debo hacer? pues e intentado generar el codigo para python > pero el codigo que me genera el wxglade es nuevamente en xrc... > > debo importar librerias al wxglade??, si es asi, como se hace?? o lo mejor > aun, me pueden uds indicar en que lugar puedo encontrar un manual para crear > aplicaciones basandome en python y glade?? > > su respuesta es de suma importancia, pues mi trabajo de titulo depende de > ello :S > > > yo e buscado por internet pero solamente aparecen manuales para linux en > version comandos tipo dos... > > > > de antemano muchisimas gracias por vuestra colaboracion... > > > pedro campos > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > -- -------------------------------------- fpalm en ula.ve francisco.palm en gmail.com cel: 0414 5109177 tel: 0274 2712106 "Cuando uno es joven, debe ser revolucionario, no sólo rebelarse... ser psicológicamente revolucionario significa no aceptar ningún modelo." K From peralta en aditel.org Thu Sep 13 16:39:58 2007 From: peralta en aditel.org (Luis Peralta) Date: Thu, 13 Sep 2007 16:39:58 +0200 Subject: AYUDA: imprimir datos consola refrescandose sin scrolling In-Reply-To: <7a1652b10708101618s5190bd54ycde0aecc9fa32b13@mail.gmail.com> References: <7a1652b10708101618s5190bd54ycde0aecc9fa32b13@mail.gmail.com> Message-ID: <861451d60709130739u609fc9acv29f27fd8f1bb71c5@mail.gmail.com> El 11/08/07, pepe gotera escribió: > [...] > No estoy acostumbrado a python y no se como hacer, siempre que he imprimido > algo > > en el lenguaje que sea, siempre lo hace a continuacion, no se como hacer que > se > > maxaken los datos. Buenas, Esto se ha hecho tradicionalmente con el carácter de retorno de carro (\r). Y digo tradicionalmente porque con terminales ANSI puedes hacer ya más cosas, como posicionar el cursor donde quieras o jugar con los colores (busca ncurses). Si tu terminal es unix y tienes un bash, esto debería mostrar un contador: let i=1; while true; do echo -en "$i\r"; i=`expr $i + 1`; done Y para que tu código python funcione, métele el carácter de retorno de carro al final o al principio de la cadena y haz que el print no salte de línea: print oid + "\r ---> " + str(val), Si esto funciona en windows o no, no lo sé. Un saludo, -- Luis Peralta http://www.ziritione.org From cabrerachaparro en gmail.com Thu Sep 13 18:56:27 2007 From: cabrerachaparro en gmail.com (Daniel Cabrera) Date: Thu, 13 Sep 2007 11:56:27 -0500 Subject: Gedit usado como IDE de Python Message-ID: <8565ad90709130956s6d9f2281mbb39aa3e21818830@mail.gmail.com> Hola, acabo de publicar un buen articulo que encontré para usar el Gedit como IDE de Python, quizás muchos usen Gnome así que puede servirles. Les dejo la direccion: http://comulinux.blogspot.com/ Saludos. -- Daniel Cabrera Chaparro From jcea en argo.es Thu Sep 13 19:34:19 2007 From: jcea en argo.es (Jesus Cea) Date: Thu, 13 Sep 2007 19:34:19 +0200 Subject: Nuevo software de foros en python: CPIF Message-ID: <46E9749B.20607@argo.es> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Para evitar sufrir por más tiempo los innumerables bugs de phpBB, para poder disponer de un software "decente" de foros escrito 100% en Python, y para mostrar las posibilidades infinitas de la tecnología de persistencia Durus... Demo con la versión actual de desarrollo: http://cpif.perseverantia.com/ Lista de correo: http://mailman.argo.es/listinfo/cpif Milestones: http://www.argo.es/~jcea/wikis/cpif/Milestones Wiki: http://www.argo.es/~jcea/wikis/cpif/ El proyecto aún no está terminado, pero es usable y las funcionalidades implementadas no tienen bugs conocidos. Si hay gente interesada en escribir código, dar ideas o ayudarnos con la apariencia gráfica o le apetece escribir documentación... ¡necesitamos toda la ayuda posible!. Si a alguien le apetece charlar en directo, estamos todo el día en la sala Jabber/XMPP "python en conf.jabberes.org". La versión 1.0 se centra en reemplazar foros como phpBB y similares. Versiones futuras incluirán capacidad de usar tags en los mensajes, seguimiento completo del foro por correo electrónico y por "news" (NNTP), replicación del foro en la máquina local (para poder interactuar con el foro aunque estés offline, o para guardarte una copia personal), subforos dinámicos (poblados al vuelo mediante cadenas de búsqueda), invocaciones, replicación, etc. PS: El proyecto funciona en Windows y Unix o similares (al menos en Linux, Solaris y MacOS X). - -- Jesus Cea Avion _/_/ _/_/_/ _/_/_/ jcea en argo.es http://www.argo.es/~jcea/ _/_/ _/_/ _/_/ _/_/ _/_/ jabber / xmpp:jcea en jabber.org _/_/ _/_/ _/_/_/_/_/ _/_/ _/_/ _/_/ _/_/ _/_/ "Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ "My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/ "El amor es poner tu felicidad en la felicidad de otro" - Leibniz -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iQCVAwUBRul0m5lgi5GaxT1NAQJhHgQAhTKXodkvQNeBXy5dONn0CK/WOmDIdXIC rSsSz6eGR/pWd54DjL5EMGhbQ+kts2v/FjZfLWCMMj2trDZuphVbRg84IhOyG64p VDiipQWHIYyQgYHq7W255gYHq6tzCTukGXWSlcrH9XwP1j8JXEMiqrZSBelau6Xb h33vqVKxb40= =GXp6 -----END PGP SIGNATURE----- ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From jcea en argo.es Thu Sep 13 20:05:51 2007 From: jcea en argo.es (Jesus Cea) Date: Thu, 13 Sep 2007 20:05:51 +0200 Subject: busqueda en diccionario, pero sin la palabra exacta In-Reply-To: <73fa00c90708281337g11393a6as9547430dbe499e40@mail.gmail.com> References: <73fa00c90708281337g11393a6as9547430dbe499e40@mail.gmail.com> Message-ID: <46E97BFF.8040304@argo.es> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Una solución simple es procesas las claves de forma que cuando aparezca un "2" generes dos claves nuevas apuntando al mismo sitio. Osea, si tienes algo tipo [1,0,0,2,0,2,1] -> "PEPE" eso te generaría cuatro claves nuevas: [1,0,0,0,0,0,1] -> "PEPE" [1,0,0,0,0,1,1] -> "PEPE" [1,0,0,1,0,0,1] -> "PEPE" [1,0,0,1,0,1,1] -> "PEPE" Si se te dispara el volumen de claves, yo te recomendaría usar algo tipo máquina de estados. - -- Jesus Cea Avion _/_/ _/_/_/ _/_/_/ jcea en argo.es http://www.argo.es/~jcea/ _/_/ _/_/ _/_/ _/_/ _/_/ jabber / xmpp:jcea en jabber.org _/_/ _/_/ _/_/_/_/_/ _/_/ _/_/ _/_/ _/_/ _/_/ "Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ "My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/ "El amor es poner tu felicidad en la felicidad de otro" - Leibniz -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iQCVAwUBRul7/5lgi5GaxT1NAQJuvwQAgJgVcagRA+6EZiaCGfUakfgayQfQjFaM IQ4kBbf1TgihLt6jaMXdjksGWjv1zzSdtTWDuZv5aPpFIFdWrzP4G9RWhr5oi6LG cVnKKdfDPGa5E4Ez/Hoc4UHqYqPadC4yq3URVX/Xah7IHt3GzDYDPyh7lukRF+Mj mVyTFrzc4Bw= =1O5J -----END PGP SIGNATURE----- ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From arcturus en us.es Thu Sep 13 20:10:26 2007 From: arcturus en us.es (=?ISO-8859-1?Q?Francisco_Jes=FAs_Jordano_Jim=E9nez?=) Date: Thu, 13 Sep 2007 20:10:26 +0200 Subject: Gedit usado como IDE de Python In-Reply-To: <8565ad90709130956s6d9f2281mbb39aa3e21818830@mail.gmail.com> References: <8565ad90709130956s6d9f2281mbb39aa3e21818830@mail.gmail.com> Message-ID: <46E97D12.4000301@us.es> Daniel Cabrera escribió: > Hola, > > acabo de publicar un buen articulo que encontré para usar el Gedit como IDE > de Python, quizás muchos usen Gnome así que puede servirles. > > Les dejo la direccion: http://comulinux.blogspot.com/ > Está genial, enhorabuena, aunque echo en falta el plugin de pylint para gedit. http://live.gnome.org/Gedit/PylintPlugin > Saludos. > > Saludos! From cabrerachaparro en gmail.com Thu Sep 13 21:08:39 2007 From: cabrerachaparro en gmail.com (Daniel Cabrera) Date: Thu, 13 Sep 2007 14:08:39 -0500 Subject: Gedit usado como IDE de Python In-Reply-To: <46E97D12.4000301@us.es> References: <8565ad90709130956s6d9f2281mbb39aa3e21818830@mail.gmail.com> <46E97D12.4000301@us.es> Message-ID: <8565ad90709131208v55132ae5y2be06021b373596@mail.gmail.com> Gracias por el dato, lo voy a probar El día 13/09/07, Francisco Jesús Jordano Jiménez escribió: > > Daniel Cabrera escribió: > > Hola, > > > > acabo de publicar un buen articulo que encontré para usar el Gedit como > IDE > > de Python, quizás muchos usen Gnome así que puede servirles. > > > > Les dejo la direccion: http://comulinux.blogspot.com/ > > > > Está genial, enhorabuena, aunque echo en falta el plugin de pylint para > gedit. > > http://live.gnome.org/Gedit/PylintPlugin > > Saludos. > > > > > > Saludos! > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > -- Daniel Cabrera Chaparro Noticias Interesantes de Linux en http://comulinux.blogspot.com/ From joana_mendaro en hotmail.com Fri Sep 14 12:33:26 2007 From: joana_mendaro en hotmail.com (joana salgado gomez) Date: Fri, 14 Sep 2007 10:33:26 +0000 Subject: expresiones regulares In-Reply-To: <2c9fb0dd0709011057j7286d59bwe6ea8d693a957a9@mail.gmail.com> References: <2c9fb0dd0708311158q7501c5dbo101dac924b942c82@mail.gmail.com> <2c9fb0dd0709011057j7286d59bwe6ea8d693a957a9@mail.gmail.com> Message-ID: Hola a todos:: sigo validando informacion el problema me surge cuando quiero validar una direccion web, por ejemplo 'http://www.google.com' puede tener signos variados, letras y numeros como indico esto: "w+" esta expresion regular es para comprobar si hay letras y numeros. ¿cual deberia usar para saber si hay letras o numeros o espacios o puntos o signos de interrogacion...??????? Muchas gracias a tod en s> Date: Sat, 1 Sep 2007 19:57:05 +0200> From: pych3m4 en gmail.com> To: python-es en aditel.org> Subject: Re: [Python-es] expresiones regulares> > El 1/09/07, joana salgado gomez escribió:> > > Me has dicho que para comprobar si solo hay letras y números se usa "w+" pero y para comprobar que solo haya letras(considerando como letras las vocales acentuadas y la eñe en sistemas en castellano.) y espacios en blanco, por ejemplo 'José Aldaña'.> > No hay nada especial para este caso. Si el "locale" funcionara como> debe, serviría la cadena string.letters para crear el patrón> '['+string.letters+']'> > La solución que te aconsejo es indicar explícitamente los caracteres:> > [a-zA-ZáéíóúñÑ ]> > > Quizás con la llegada del python3000 se implementen las expresiones> regulares en unicode (UTS#18). Entonces se podría buscar sólo letras> con este patrón: "\p{letter}" e incluso considerar que estamos> usando el español tradicional para que tome como una sóla letra las> letras dobles 'll', 'rr' y 'ch'.> > UTC#18: http://www.unicode.org/reports/tr18/> _______________________________________________> Python-es mailing list> Python-es en aditel.org> http://listas.aditel.org/listinfo/python-es _________________________________________________________________ Consigue el nuevo Windows Live Messenger http://get.live.com/messenger/overview From xinxic en gmail.com Fri Sep 14 13:18:32 2007 From: xinxic en gmail.com (Xin) Date: Fri, 14 Sep 2007 13:18:32 +0200 Subject: expresiones regulares In-Reply-To: References: <2c9fb0dd0708311158q7501c5dbo101dac924b942c82@mail.gmail.com> <2c9fb0dd0709011057j7286d59bwe6ea8d693a957a9@mail.gmail.com> Message-ID: Una ayudita de parte de Django: - Comprovación de correo-e: > email_re = re.compile( > r"(^[-!#$%&'*+/=?^_`{}|~0-9A-Z]+(\.[-!#$%&'*+/=?^_`{}|~0-9A-Z]+)*" > # dot-atom > > r'|^"([\001-\010\013\014\016-\037!#-\[\]-\177]|\\[\001 > -011\013\014\016-\177])*"' # quoted-string > r')@(?:[A-Z0-9-]+\.)+[A-Z]{2,6}$', re.IGNORECASE) # domain - Comprovación de url: > url_re = re.compile( > r'^https?://' # http:// or https:// > r'(?:(?:[A-Z0-9-]+\.)+[A-Z]{2,6}|' #domain... > r'localhost|' #localhost... > r'\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})' # ...or ip > r'(?::\d+)?' # optional port > r'(?:/?|/\S+)$', re.IGNORECASE) Xin El 14/09/2007, a les 12:33, en/na joana salgado gomez va escriure: > > Hola a todos:: > sigo validando informacion el problema me surge cuando quiero validar > una direccion web, por ejemplo 'http://www.google.com' puede tener > signos variados, letras y numeros como indico esto: > "w+" esta expresion regular es para comprobar si hay letras y numeros. > ¿cual deberia usar para saber si hay letras o numeros o espacios o > puntos o signos de interrogacion...??????? > > > Muchas gracias a tod en s> Date: Sat, 1 Sep 2007 19:57:05 +0200> From: > pych3m4 en gmail.com> To: python-es en aditel.org> Subject: Re: [Python-es] > expresiones regulares> > El 1/09/07, joana salgado gomez > escribió:> > > Me has dicho que para > comprobar si solo hay letras y números se usa "w+" pero y para > comprobar que solo haya letras(considerando como letras las vocales > acentuadas y la eñe en sistemas en castellano.) y espacios en blanco, > por ejemplo 'José Aldaña'.> > No hay nada especial para este caso. Si > el "locale" funcionara como> debe, serviría la cadena string.letters > para crear el patrón> '['+string.letters+']'> > La solución que te > aconsejo es indicar explícitamente los caracteres:> > [a-zA-ZáéíóúñÑ > ]> > > Quizás con la llegada del python3000 se implementen las > expresiones> regulares en unicode (UTS#18). Entonces se podría buscar > sólo letras> con este patrón: "\p{letter}" e incluso considerar que > estamos> usando el español tradicional para que tome como una sóla > letra las> letras dobles 'll', 'rr' y 'ch'.> > UTC#18: > http://www.unicode.org/reports/tr18/> > _______________________________________________> Python-es mailing > list> Python-es en aditel.org> > http://listas.aditel.org/listinfo/python-es > _________________________________________________________________ > Consigue el nuevo Windows Live Messenger > http://get.live.com/messenger/ > overview_______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From joana_mendaro en hotmail.com Fri Sep 14 14:28:35 2007 From: joana_mendaro en hotmail.com (joana salgado gomez) Date: Fri, 14 Sep 2007 12:28:35 +0000 Subject: expresiones regulares In-Reply-To: References: <2c9fb0dd0708311158q7501c5dbo101dac924b942c82@mail.gmail.com> <2c9fb0dd0709011057j7286d59bwe6ea8d693a957a9@mail.gmail.com> Message-ID: Bueno no era exactamente lo que yo queria. Yo lo que pretendo es pasarle a una funcion la expresion regular y la url para que la compruebe, sería de esta manera: import redef validar(s, regexp, errmsg): if not re.match(regexp, s): raise ValueError, "Error validando '%s': %s"%(errmsg, s) > validar(url, "[expresion regular]"url") donde en expresion regular debo poner algo como "[A-Za-z0-9]".Esto solo comprobaria si son letras ,mayusculas o minusculas,y numeros pero no barras y demas signos que es lo que necesito. Espero haberme explicado bien gracias. > Subject: Re: [Python-es] expresiones regulares> Date: Fri, 14 Sep 2007 13:18:32 +0200> To: python-es en aditel.org> From: xinxic en gmail.com> > Una ayudita de parte de Django:> > - Comprovación de correo-e:> > email_re = re.compile(> > r"(^[-!#$%&'*+/=?^_`{}|~0-9A-Z]+(\.[-!#$%&'*+/=?^_`{}|~0-9A-Z]+)*" > > # dot-atom> > > > r'|^"([\001-\010\013\014\016-\037!#-\[\]-\177]|\\[\001 > > -011\013\014\016-\177])*"' # quoted-string> > r')@(?:[A-Z0-9-]+\.)+[A-Z]{2,6}$', re.IGNORECASE) # domain> > - Comprovación de url:> > url_re = re.compile(> > r'^https?://' # http:// or https://> > r'(?:(?:[A-Z0-9-]+\.)+[A-Z]{2,6}|' #domain...> > r'localhost|' #localhost...> > r'\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})' # ...or ip> > r'(?::\d+)?' # optional port> > r'(?:/?|/\S+)$', re.IGNORECASE)> > Xin> > El 14/09/2007, a les 12:33, en/na joana salgado gomez va escriure:> > >> > Hola a todos::> > sigo validando informacion el problema me surge cuando quiero validar > > una direccion web, por ejemplo 'http://www.google.com' puede tener > > signos variados, letras y numeros como indico esto:> > "w+" esta expresion regular es para comprobar si hay letras y numeros.> > ¿cual deberia usar para saber si hay letras o numeros o espacios o > > puntos o signos de interrogacion...???????> >> >> > Muchas gracias a tod en s> Date: Sat, 1 Sep 2007 19:57:05 +0200> From: > > pych3m4 en gmail.com> To: python-es en aditel.org> Subject: Re: [Python-es] > > expresiones regulares> > El 1/09/07, joana salgado gomez > > escribió:> > > Me has dicho que para > > comprobar si solo hay letras y números se usa "w+" pero y para > > comprobar que solo haya letras(considerando como letras las vocales > > acentuadas y la eñe en sistemas en castellano.) y espacios en blanco, > > por ejemplo 'José Aldaña'.> > No hay nada especial para este caso. Si > > el "locale" funcionara como> debe, serviría la cadena string.letters > > para crear el patrón> '['+string.letters+']'> > La solución que te > > aconsejo es indicar explícitamente los caracteres:> > [a-zA-ZáéíóúñÑ > > ]> > > Quizás con la llegada del python3000 se implementen las > > expresiones> regulares en unicode (UTS#18). Entonces se podría buscar > > sólo letras> con este patrón: "\p{letter}" e incluso considerar que > > estamos> usando el español tradicional para que tome como una sóla > > letra las> letras dobles 'll', 'rr' y 'ch'.> > UTC#18: > > http://www.unicode.org/reports/tr18/> > > _______________________________________________> Python-es mailing > > list> Python-es en aditel.org> > > http://listas.aditel.org/listinfo/python-es> > _________________________________________________________________> > Consigue el nuevo Windows Live Messenger> > http://get.live.com/messenger/ > > overview_______________________________________________> > Python-es mailing list> > Python-es en aditel.org> > http://listas.aditel.org/listinfo/python-es> >> _______________________________________________> Python-es mailing list> Python-es en aditel.org> http://listas.aditel.org/listinfo/python-es _________________________________________________________________ Busca desde cualquier página Web con una protección excepcional. Consigue la Barra de herramientas de Windows Live hoy mismo y GRATUITAMENTE. http://www.toolbar.live.com From arnau en ehas.org Fri Sep 14 14:55:21 2007 From: arnau en ehas.org (Arnau Sanchez) Date: Fri, 14 Sep 2007 14:55:21 +0200 Subject: expresiones regulares In-Reply-To: References: <2c9fb0dd0708311158q7501c5dbo101dac924b942c82@mail.gmail.com> <2c9fb0dd0709011057j7286d59bwe6ea8d693a957a9@mail.gmail.com> Message-ID: <46EA84B9.9070806@ehas.org> oana salgado gomez escribió: > Bueno no era exactamente lo que yo queria. Yo lo que pretendo es pasarle a > una funcion la expresion regular y la url para que la compruebe, sería de > esta manera: Bueno, es que Xin te daba eso, sólo hay que ajustar un poco la expresión. En vez de 'a-zA-Z0-9', en este caso es: regexp = r'^https?://' \ r'(?:(?:[A-Z0-9-]+\.)+[A-Z]{2,6}|' \ r'localhost|' \ r'\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})' \ r'(?::\d+)?' \ r'(?:/?|/\S+)$' Y claro, asegurar que pones el flag RE.IGNORECASE en el match de la función de validación. Ahora bien, ¿estás completamente segura que debes comprobar que la URL esté bien? ¿para qué? yo miraría si empieza por http y nada más; si falla que falle, ya lo controlarás más adelante. Otra cosa: como ya te dijeron en alguna otra ocasión, tus mensajes son ilegibles, los retornos de carro brillan por su ausencia. Imagino que tendrá más que ver con el cliente de correo, pero no estaría mal si, para escribir a una lista pública, usaras otro servidor de correo (cualquiera que no empiece por "hot" y acabe por "mail" suele funcionar bien), así nos ahorraremos saber dónde buscar nuestra media naranja o cómo descargar la última versión de la apasionante barra de herramientas de Windows. ;-) arnau From xinxic en gmail.com Fri Sep 14 15:05:52 2007 From: xinxic en gmail.com (Xin) Date: Fri, 14 Sep 2007 15:05:52 +0200 Subject: expresiones regulares In-Reply-To: <46EA84B9.9070806@ehas.org> References: <2c9fb0dd0708311158q7501c5dbo101dac924b942c82@mail.gmail.com> <2c9fb0dd0709011057j7286d59bwe6ea8d693a957a9@mail.gmail.com> <46EA84B9.9070806@ehas.org> Message-ID: <57f199d29570742fdc1bb24d3cf13f77@GMail.com> Eso mismo le iba a responder... No le haremos también la función. Xin El 14/09/2007, a les 14:55, en/na Arnau Sanchez va escriure: > oana salgado gomez escribió: > >> Bueno no era exactamente lo que yo queria. Yo lo que pretendo es >> pasarle a >> una funcion la expresion regular y la url para que la compruebe, >> sería de >> esta manera: > > Bueno, es que Xin te daba eso, sólo hay que ajustar un poco la > expresión. En vez de 'a-zA-Z0-9', en este caso es: > > regexp = r'^https?://' \ > r'(?:(?:[A-Z0-9-]+\.)+[A-Z]{2,6}|' \ > r'localhost|' \ > r'\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})' \ > r'(?::\d+)?' \ > r'(?:/?|/\S+)$' > > Y claro, asegurar que pones el flag RE.IGNORECASE en el match de la > función de validación. Ahora bien, ¿estás completamente segura que > debes comprobar que la URL esté bien? ¿para qué? yo miraría si empieza > por http y nada más; si falla que falle, ya lo controlarás más > adelante. > > Otra cosa: como ya te dijeron en alguna otra ocasión, tus mensajes son > ilegibles, los retornos de carro brillan por su ausencia. Imagino que > tendrá más que ver con el cliente de correo, pero no estaría mal si, > para escribir a una lista pública, usaras otro servidor de correo > (cualquiera que no empiece por "hot" y acabe por "mail" suele > funcionar bien), así nos ahorraremos saber dónde buscar nuestra media > naranja o cómo descargar la última versión de la apasionante barra de > herramientas de Windows. > > ;-) > > arnau > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From rapto en arrakis.es Fri Sep 14 15:21:59 2007 From: rapto en arrakis.es (Marcos =?ISO-8859-1?Q?S=E1nchez?= Provencio) Date: Fri, 14 Sep 2007 15:21:59 +0200 Subject: html =?ISO-8859-1?Q?s=ED?= o no [era: expresiones regulares] In-Reply-To: <46EA84B9.9070806@ehas.org> References: <2c9fb0dd0708311158q7501c5dbo101dac924b942c82@mail.gmail.com> <2c9fb0dd0709011057j7286d59bwe6ea8d693a957a9@mail.gmail.com> <46EA84B9.9070806@ehas.org> Message-ID: <1189776120.5688.10.camel@savin> Aprovecho la ocasión para abrir debate; ¿Se debe admitir correo html? Muchas veces aclara cosas (aunque admito que es una Caja de Pandora) El vie, 14-09-2007 a las 14:55 +0200, Arnau Sanchez escribió: > > Otra cosa: como ya te dijeron en alguna otra ocasión, tus mensajes > son > ilegibles, los retornos de carro brillan por su ausencia. Imagino que > tendrá más > que ver con el cliente de correo, pero no estaría mal si, para > escribir a una > lista pública, usaras otro servidor de correo (cualquiera que no > empiece por > "hot" y acabe por "mail" suele funcionar bien), así nos ahorraremos > saber dónde > buscar nuestra media naranja o cómo descargar la última versión de la > apasionante barra de herramientas de Windows. > ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From trunkspanish en gmail.com Fri Sep 14 17:48:39 2007 From: trunkspanish en gmail.com (pepe gotera) Date: Fri, 14 Sep 2007 17:48:39 +0200 Subject: =?iso-8859-1?q?comunicaci=F3n_con_clientes?= Message-ID: <7a1652b10709140848g78709c70s73367745a4e50f5f@mail.gmail.com> Hola, tengo un programa en python que al ser ejecutado en consola me muestra unas variables que van refrescándose en el tiempo. Me gustaría poder consultar las variables desde un cliente remoto que se conectara al ordenador que monitoriza dichas variables de una manera sencilla. Alguien sabria decirme como podria lograr dicha comunicacion? Que programas o aplicacion podria utilizar para ello? Gracias. P.D: He estado mirando el programa NETSTAT y si he logrado navegar por el directorio del ordenador a consultar pero a la hora de ejecutar remotamente el programa en python no devuelve nada. From arnau en ehas.org Fri Sep 14 17:52:35 2007 From: arnau en ehas.org (Arnau Sanchez) Date: Fri, 14 Sep 2007 17:52:35 +0200 Subject: html =?UTF-8?B?c8OtIG8gbm8gW2VyYTogZXhwcmVzaW9uZQ==?= =?UTF-8?B?cyByZWd1bGFyZXNd?= In-Reply-To: <1189776120.5688.10.camel@savin> References: <2c9fb0dd0708311158q7501c5dbo101dac924b942c82@mail.gmail.com> <2c9fb0dd0709011057j7286d59bwe6ea8d693a957a9@mail.gmail.com> <46EA84B9.9070806@ehas.org> <1189776120.5688.10.camel@savin> Message-ID: <46EAAE43.2060202@ehas.org> Marcos Sánchez Provencio escribió: > Aprovecho la ocasión para abrir debate; ¿Se debe admitir correo html? > Muchas veces aclara cosas (aunque admito que es una Caja de Pandora) Las guías de etiqueta recomiendan que no se envíen correos en HTML, a no ser que la lista lo permita explícitamente: http://www.comunidadelectronicos.com/listas/netiquette.htm Personalmente, no me molesta especialmente que alguien lo mande (aunque si alguna vez lo he hecho, que creo que sí, ha sido por error). Entiendo que haya gente a quien sí le moleste, así que -dado que tampoco añade información- mejor evitarlo. No sé, creo que en general la lista funciona bastante bien... pero ya que estamos, hay un asunto que no aparece en ninguna guía, pero que a mi me rechina un poco, y son las hiper-mega-firmas que ocupan varias líneas. De todos modos, es común en multitud de listas (incluso en Usenet), así que asumo que no molesta a nadie más :-) ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From jordi.f en ati.es Fri Sep 14 18:04:34 2007 From: jordi.f en ati.es (Jordi Funollet) Date: Fri, 14 Sep 2007 18:04:34 +0200 Subject: html =?iso-8859-15?q?s=ED_o_no_=5Bera=3A_expresiones?= regulares] In-Reply-To: <46EAAE43.2060202@ehas.org> References: <1189776120.5688.10.camel@savin> <46EAAE43.2060202@ehas.org> Message-ID: <200709141804.34513.jordi.f@ati.es> Arnau Sanchez dixit: > Las guías de etiqueta recomiendan que no se envíen correos en HTML, a no > ser que la lista lo permita explícitamente: Y al margen de la netiqueta, muchas listas de correo estan configuradas para eliminar el HTML de los archivos para evitar problemas de seguridad. -- ############################## ### Jordi Funollet ### http://www.terraquis.net ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From arnau en ehas.org Fri Sep 14 18:37:26 2007 From: arnau en ehas.org (Arnau Sanchez) Date: Fri, 14 Sep 2007 18:37:26 +0200 Subject: =?ISO-8859-1?Q?comunicaci=F3n_con_clientes?= In-Reply-To: <7a1652b10709140848g78709c70s73367745a4e50f5f@mail.gmail.com> References: <7a1652b10709140848g78709c70s73367745a4e50f5f@mail.gmail.com> Message-ID: <46EAB8C6.9040500@ehas.org> pepe gotera escribió: > Hola, tengo un programa en python que al ser ejecutado en consola me muestra > unas variables > > que van refrescándose en el tiempo. Me gustaría poder consultar las > variables desde un cliente ¿Ese programa es tuyo? ¿lo puedes modificar? lo digo porque sacar información de una aplicación que se refresca es generalmente un engorro; sería mejor que escribiera datos planos en la salida estándar (o que tenga una opción para que se comporte así). > Alguien sabria decirme como podria lograr dicha comunicacion? Que programas > o aplicacion > podria utilizar para ello? ¿Sockets? En UNIX usaría los programas netcat/socat; en python tienes el módulo "socket" (a más alto nivel SocketServer). From alexis.roda.villalonga en gmail.com Fri Sep 14 18:48:41 2007 From: alexis.roda.villalonga en gmail.com (Alexis Roda) Date: Fri, 14 Sep 2007 18:48:41 +0200 Subject: html =?UTF-8?B?c8OtIG8gbm8gW2VyYTogZXhwcmVzaW9uZQ==?= =?UTF-8?B?cyByZWd1bGFyZXNd?= In-Reply-To: <1189776120.5688.10.camel@savin> References: <2c9fb0dd0708311158q7501c5dbo101dac924b942c82@mail.gmail.com> <2c9fb0dd0709011057j7286d59bwe6ea8d693a957a9@mail.gmail.com> <46EA84B9.9070806@ehas.org> <1189776120.5688.10.camel@savin> Message-ID: <46EABB69.4000407@gmail.com> En/na Marcos Sánchez Provencio ha escrit: > Aprovecho la ocasión para abrir debate; ¿Se debe admitir correo html? > Muchas veces aclara cosas (aunque admito que es una Caja de Pandora) Personalmente no tengo problemas con que se manden mensajes en formato HTML, pero la política de la lista al respecto debería ser coherente con la de los archivos de la lista. En la lista zope-es por ejemplo, también hospedada en aditel, los mensajes HTML son permitidos pero en los archivos los adjuntos HTML son eliminados, lo cual resulta bastante molesto cuando vas a hacer alguna búsqueda y encuentras una mensaje vacío. Saludos ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From hfoffani en gmail.com Fri Sep 14 19:20:24 2007 From: hfoffani en gmail.com (Hernan M Foffani) Date: Fri, 14 Sep 2007 19:20:24 +0200 Subject: =?iso-8859-1?q?Re=3A_html_s=ED_o_no_=5Bera=3A_expres?= =?iso-8859-1?q?iones_regulares=5D?= Message-ID: <11fab4bc0709141020sa92da1fm4b987c40fabec4c0@mail.gmail.com> > > Aprovecho la ocasión para abrir debate; ¿Se debe admitir correo html? > > Muchas veces aclara cosas (aunque admito que es una Caja de Pandora) > > Personalmente no tengo problemas con que se manden mensajes en formato > HTML, pero la política de la lista al respecto debería ser coherente con > la de los archivos de la lista. > > En la lista zope-es por ejemplo, también(c)n hospedada en aditel, los > mensajes HTML son permitidos pero en los archivos los adjuntos HTML son > eliminados, lo cual resulta bastante molesto cuando vas a hacer alguna > búsqueda y encuentras una mensaje vací­o. Además hay que tener en cuenta los resúmenes. Creo que mailman los convierte a texto y agrega como adjunto el original ¿es así o me he fumado algo? -H. From gheize en gmail.com Sat Sep 15 17:31:29 2007 From: gheize en gmail.com (Guillermo Heizenreder) Date: Sat, 15 Sep 2007 12:31:29 -0300 Subject: Gtk Entry Activarlo y aceleradores In-Reply-To: <46D41777.4060505@ehas.org> References: <653692.50304.qm@web27201.mail.ukl.yahoo.com> <46D41777.4060505@ehas.org> Message-ID: <1189870289.3054.3.camel@leinad-desktop> El mar, 28-08-2007 a las 14:39 +0200, Arnau Sanchez escribió: > La documentación necesaria para sacar esto: > > http://www.pygtk.org/docs/pygtk/class-gtkentry.html > > http://www.pygtk.org/docs/pygtk/class-gtkwidget.html Buen tips. Yo lo utilizé y me funciona barbaro, solo que ahora quiero que desde el último entry salte a un textView, cómo seria? def on_entry_activate(self,widget,other): other.grab_focus() def conect_entry_enter(self): """ Va a permitir conectar los distintos "entry" para que el usuario apriete y siga en el campo debajo """ self.entry_legajo_empleado.connect("activate", self.on_entry_activate, self.entry_apellido_empleado) self.entry_apellido_empleado.connect("activate", self.on_entry_activate, self.entry_nombre_empleado) self.entry_nombre_empleado.connect("activate", self.on_entry_activate, self.entry_codigo_clasificacion) self.entry_codigo_clasificacion.connect("activate", self.on_entry_activate, self.entry_nombre_clasificacion) """ self.entry_nombre_clasificacion("activate", self.on_entry_activate, self.entry_descripcion) """ print "Exit" NOTA: >>> print self.entry_widget.__class__ >>> Saludos! -- Heizenreder Guillermo Code: http://code.google.com/u/gheize/ Blog: http://gheize.wordpress.com/ ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From arnau en ehas.org Sun Sep 16 01:38:49 2007 From: arnau en ehas.org (Arnau Sanchez) Date: Sun, 16 Sep 2007 01:38:49 +0200 Subject: Gtk Entry Activarlo y aceleradores In-Reply-To: <1189870289.3054.3.camel@leinad-desktop> References: <653692.50304.qm@web27201.mail.ukl.yahoo.com> <46D41777.4060505@ehas.org> <1189870289.3054.3.camel@leinad-desktop> Message-ID: <46EC6D09.5070405@ehas.org> Guillermo Heizenreder escribió: > def on_entry_activate(self,widget,other): > other.grab_focus() > def conect_entry_enter(self): Unos detalles de estilo: el PEP8 recomienda poner espacios después de las comas (y con razón, queda todo más claro). La docstring del método conect_entry_enter() se ve también un poco rara. En general, siempre que te desvíes del PEP8 dificultarás la lectura a otros programadores. Aunque quien esté libre de pecado que tire la primera piedra :-) > self.entry_legajo_empleado.connect("activate", > self.on_entry_activate, > self.entry_apellido_empleado) > self.entry_apellido_empleado.connect("activate", > self.on_entry_activate, > self.entry_nombre_empleado) > self.entry_nombre_empleado.connect("activate", > self.on_entry_activate, > self.entry_codigo_clasificacion) > self.entry_codigo_clasificacion.connect("activate", > self.on_entry_activate, > self.entry_nombre_clasificacion) Estás usando on_entry_activate() como método, cuando de hecho no usa nada de la instancia (no accede a self). Tienes dos opciones: ponerla fuera de la clase (no muy adecuado, ya que costará encontrarla) o mejor, ponerla como función anidada, que es como te mostraré en el ejemplo (con la ventaja de que, si hiciera falta, sí podrías acceder a la instancia, ya que "self" queda en la clausura). ¿Ves que tu código es muy repetitivo? eso es porque hay un patrón, y debes sacar partido de ello. Podría quedar: def connect_entry_enter(self): def grab_focus(widget, other): other.grab_focus() path = (a, b, c, d) for index in xrange(len(path)-1): from0, to = path[index:index+2] from0.connect("activate", grab_focus, to) Donde a, b, c y d son los widgets puestos en el orden que quieras. Quizá el path debiera ser un parámetro de la función connect_entry_enter(). Si nos ponemos exquisitos, la función de extraer los pares también se puede abstraer: def groups(lst, n, step=1): for index in xrange(0, len(lst)-(n-1), step): yield lst[index:index+n] (si la entrada no fuera una lista/tupla sino un iterador, ver http://docs.python.org/lib/itertools-recipes.html) Y se usaría: for from0, to in groups(path, 2): from0.connect("activate", grab_focus, to) Espero que te sirva, arnau ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From vitojph en gmail.com Sun Sep 16 13:11:22 2007 From: vitojph en gmail.com (Victor Peinado) Date: Sun, 16 Sep 2007 13:11:22 +0200 Subject: UnicodeDecodeError con SQLObject Message-ID: ¡Hola a todos! Tengo almacenados una especie de diccionarios bilingües en una base de datos cuyas tablas guardan toda la información en unicode (está definidas con SQLObject como UnicodeCol) de la siguiente forma: class DictEsEn(SQLObject): """ Table for Spanish-English entries """ _connection = conn lemma = UnicodeCol(unique=True, length=30, notNull=True) translations = UnicodeCol(notNull=True) Si hago consultas con palabras sin caracteres extraños no hay problema, p. ej. busco "perro" en mi diccionario y me devuelve cadenas unicode: >>> results = DictEsEn.selectBy(lemma="perr") >>> [item.lemma for item in results] [u'perr'] Ahora bien, cuando consulto con caracteres con diacríticos me saltan los famosos UnicodeDecodeError, a pesar de que todas las cadenas son unicode. P. ej. busco "niño": >>> results = DictEsEn.selectBy(lemma="niñ") >>> [item.lemma for item in results] Traceback (most recent call last): File "", line 1, in ? File "/usr/lib/python2.4/site-packages/SQLObject-0.10dev_r2716-py2.4.egg/sqlobject/sresults.py", line 185, in __iter__ return iter(list(self.lazyIter())) File "/usr/lib/python2.4/site-packages/SQLObject-0.10dev_r2716-py2.4.egg/sqlobject/sresults.py", line 193, in lazyIter return conn.iterSelect(self) File "/usr/lib/python2.4/site-packages/SQLObject-0.10dev_r2716-py2.4.egg/sqlobject/dbconnection.py", line 415, in iterSelect select, keepConnection=False) File "/usr/lib/python2.4/site-packages/SQLObject-0.10dev_r2716-py2.4.egg/sqlobject/dbconnection.py", line 654, in __init__ self.dbconn._executeRetry(self.rawconn, self.cursor, self.query) File "/usr/lib/python2.4/site-packages/SQLObject-0.10dev_r2716-py2.4.egg/sqlobject/mysql/mysqlconnection.py", line 113, in _executeRetry query = unicode(query, self.encoding) UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 97: ordinal not in range(128) Mi sistema trabaja con utf-8, si consulto a la tabla con DictEsEn.selectBy(lemma=u"niñ") obtengo el mismo error anterior. Cuando comparo directamente la cadena que utilizo para consultar la base de datos y la que tengo almacena en la tabla son iguales, ambas unicode. >>> ej1 = DictEsEn.get(11) >>> ej1 >>> ej1.lemma u'ni\xf1' >>> type(ej1.lemma) >>> ej1.lemma == u"niñ" True >>> ej1.lemma == "niñ" True ¿A qué se debe el error? ¿Alguna solución? Gracias y saludos. -- Víctor Peinado | NLP & IR Group - UNED | http://nlp.uned.es/~victor Tel (+34) 91 398 8106 Skype/GTalk: vitojph ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From daironfrias en gmail.com Sun Sep 16 22:19:23 2007 From: daironfrias en gmail.com (=?ISO-8859-1?Q?Dairon_P=E9rez_Fr=EDas?=) Date: Sun, 16 Sep 2007 16:19:23 -0400 Subject: =?iso-8859-1?q?Crear_peque=F1o_servidor_con_Python?= Message-ID: <366fefdb0709161319p72074e50k3d0d0ebe3294a8a6@mail.gmail.com> Hola, Lista necesito saber donde puedo encontrar bibliografia para comenzar a hacer una pequeña aplicacion que escuche solicitudes en la red y responda a un cliente, es decir una aplicacion Servidor-Cliente, hacerla netamente en Python para transferir xml. Saludos D.Frias -- Nada es imposible, lo que sucede es que no tenemos el nivel de conocimiento necesario para lograrlo. Dairon Perez Frias(D.Frias) From a.porrua en gmail.com Sun Sep 16 22:37:19 2007 From: a.porrua en gmail.com (tny) Date: Sun, 16 Sep 2007 22:37:19 +0200 Subject: UnicodeDecodeError con SQLObject In-Reply-To: References: Message-ID: <1189975039.5927.3.camel@skynet> Yo he hecho algo parecido, empleando SQLite y pyglade Tuve un error muy parecido, y se debía a que cuando metía las palabras en la base de datos no lo hacía en unicode. La única solución fue rehacer la base de datos Si quieres puedes mirar mi programa en http://www.infotny.es/gpe/tnydiccionario.zip El dom, 16-09-2007 a las 13:11 +0200, Victor Peinado escribió: > ¡Hola a todos! > > Tengo almacenados una especie de diccionarios bilingües en una base de > datos cuyas tablas guardan toda la información en unicode (está > definidas con SQLObject como UnicodeCol) de la siguiente forma: > > class DictEsEn(SQLObject): > """ Table for Spanish-English entries """ > _connection = conn > lemma = UnicodeCol(unique=True, length=30, notNull=True) > translations = UnicodeCol(notNull=True) > > > Si hago consultas con palabras sin caracteres extraños no hay > problema, p. ej. busco "perro" en mi diccionario y me devuelve cadenas > unicode: > > >>> results = DictEsEn.selectBy(lemma="perr") > >>> [item.lemma for item in results] > [u'perr'] > > Ahora bien, cuando consulto con caracteres con diacríticos me saltan > los famosos UnicodeDecodeError, a pesar de que todas las cadenas son > unicode. P. ej. busco "niño": > > >>> results = DictEsEn.selectBy(lemma="niñ") > >>> [item.lemma for item in results] > Traceback (most recent call last): > File "", line 1, in ? > File "/usr/lib/python2.4/site-packages/SQLObject-0.10dev_r2716-py2.4.egg/sqlobject/sresults.py", > line 185, in __iter__ > return iter(list(self.lazyIter())) > File "/usr/lib/python2.4/site-packages/SQLObject-0.10dev_r2716-py2.4.egg/sqlobject/sresults.py", > line 193, in lazyIter > return conn.iterSelect(self) > File "/usr/lib/python2.4/site-packages/SQLObject-0.10dev_r2716-py2.4.egg/sqlobject/dbconnection.py", > line 415, in iterSelect > select, keepConnection=False) > File "/usr/lib/python2.4/site-packages/SQLObject-0.10dev_r2716-py2.4.egg/sqlobject/dbconnection.py", > line 654, in __init__ > self.dbconn._executeRetry(self.rawconn, self.cursor, self.query) > File "/usr/lib/python2.4/site-packages/SQLObject-0.10dev_r2716-py2.4.egg/sqlobject/mysql/mysqlconnection.py", > line 113, in _executeRetry > query = unicode(query, self.encoding) > UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position > 97: ordinal not in range(128) > > Mi sistema trabaja con utf-8, si consulto a la tabla con > DictEsEn.selectBy(lemma=u"niñ") obtengo el mismo error anterior. > > Cuando comparo directamente la cadena que utilizo para consultar la > base de datos y la que tengo almacena en la tabla son iguales, ambas > unicode. > > >>> ej1 = DictEsEn.get(11) > >>> ej1 > > >>> ej1.lemma > u'ni\xf1' > >>> type(ej1.lemma) > > >>> ej1.lemma == u"niñ" > True > >>> ej1.lemma == "niñ" > True > > > ¿A qué se debe el error? ¿Alguna solución? Gracias y saludos. > > > > -- > Víctor Peinado | NLP & IR Group - UNED | http://nlp.uned.es/~victor > Tel (+34) 91 398 8106 > Skype/GTalk: vitojph > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From morillas en gmail.com Mon Sep 17 00:10:00 2007 From: morillas en gmail.com (Luis Miguel Morillas) Date: Mon, 17 Sep 2007 00:10:00 +0200 Subject: UnicodeDecodeError con SQLObject In-Reply-To: References: Message-ID: <68d25cbc0709161510i42d1cfeaq4e1b418bd4fff291@mail.gmail.com> Veo que usas utf-8 >>> unicode("niñ", 'ascii') Traceback (most recent call last): File "", line 1, in unicode("niñ", 'ascii') UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 2: ordinal not in range(128) >>> unicode("niñ", 'utf-8') u'ni\xf1' En la línea query = unicode(query, self.encoding) ¿Cuál es el valor de self.encoding? Debería de ser utf-8 o un encoding que soporte los caracteres que estás usando. -- lm 2007/9/16, Victor Peinado : > ¡Hola a todos! > > Tengo almacenados una especie de diccionarios bilingües en una base de > datos cuyas tablas guardan toda la información en unicode (está > definidas con SQLObject como UnicodeCol) de la siguiente forma: > > class DictEsEn(SQLObject): > """ Table for Spanish-English entries """ > _connection = conn > lemma = UnicodeCol(unique=True, length=30, notNull=True) > translations = UnicodeCol(notNull=True) > > > Si hago consultas con palabras sin caracteres extraños no hay > problema, p. ej. busco "perro" en mi diccionario y me devuelve cadenas > unicode: > > >>> results = DictEsEn.selectBy(lemma="perr") > >>> [item.lemma for item in results] > [u'perr'] > > Ahora bien, cuando consulto con caracteres con diacríticos me saltan > los famosos UnicodeDecodeError, a pesar de que todas las cadenas son > unicode. P. ej. busco "niño": > > >>> results = DictEsEn.selectBy(lemma="niñ") > >>> [item.lemma for item in results] > Traceback (most recent call last): > File "", line 1, in ? > File "/usr/lib/python2.4/site-packages/SQLObject-0.10dev_r2716-py2.4.egg/sqlobject/sresults.py", > line 185, in __iter__ > return iter(list(self.lazyIter())) > File "/usr/lib/python2.4/site-packages/SQLObject-0.10dev_r2716-py2.4.egg/sqlobject/sresults.py", > line 193, in lazyIter > return conn.iterSelect(self) > File "/usr/lib/python2.4/site-packages/SQLObject-0.10dev_r2716-py2.4.egg/sqlobject/dbconnection.py", > line 415, in iterSelect > select, keepConnection=False) > File "/usr/lib/python2.4/site-packages/SQLObject-0.10dev_r2716-py2.4.egg/sqlobject/dbconnection.py", > line 654, in __init__ > self.dbconn._executeRetry(self.rawconn, self.cursor, self.query) > File "/usr/lib/python2.4/site-packages/SQLObject-0.10dev_r2716-py2.4.egg/sqlobject/mysql/mysqlconnection.py", > line 113, in _executeRetry > query = unicode(query, self.encoding) > UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position > 97: ordinal not in range(128) > > Mi sistema trabaja con utf-8, si consulto a la tabla con > DictEsEn.selectBy(lemma=u"niñ") obtengo el mismo error anterior. > > Cuando comparo directamente la cadena que utilizo para consultar la > base de datos y la que tengo almacena en la tabla son iguales, ambas > unicode. > > >>> ej1 = DictEsEn.get(11) > >>> ej1 > > >>> ej1.lemma > u'ni\xf1' > >>> type(ej1.lemma) > > >>> ej1.lemma == u"niñ" > True > >>> ej1.lemma == "niñ" > True > > > ¿A qué se debe el error? ¿Alguna solución? Gracias y saludos. > > > > -- > Víctor Peinado | NLP & IR Group - UNED | http://nlp.uned.es/~victor > Tel (+34) 91 398 8106 > Skype/GTalk: vitojph > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > > From gheize en gmail.com Sun Sep 16 13:17:39 2007 From: gheize en gmail.com (Guillermo Heizenreder) Date: Sun, 16 Sep 2007 08:17:39 -0300 Subject: Gtk Entry Activarlo y aceleradores In-Reply-To: <46EC6D09.5070405@ehas.org> References: <653692.50304.qm@web27201.mail.ukl.yahoo.com> <46D41777.4060505@ehas.org> <1189870289.3054.3.camel@leinad-desktop> <46EC6D09.5070405@ehas.org> Message-ID: <1189941459.30238.3.camel@leinad-desktop> El dom, 16-09-2007 a las 01:38 +0200, Arnau Sanchez escribió: > Guillermo Heizenreder escribió: > > > def on_entry_activate(self,widget,other): > > other.grab_focus() > > def conect_entry_enter(self): > > Unos detalles de estilo: el PEP8 recomienda poner espacios después de > las comas (y con razón, queda todo más claro). La docstring del método > conect_entry_enter() se ve también un poco rara. En general, siempre que > te desvíes del PEP8 dificultarás la lectura a otros programadores. > Aunque quien esté libre de pecado que tire la primera piedra :-) :S Estoy tratando a los golpes de seguir la PEP8, hace poco que comenzé con el lenguaje y siempre programe solo, pero ahora lo hacemos en equipo, asique es muy cierto lo que decis vos de seguir los estandares. > > > self.entry_legajo_empleado.connect("activate", > > self.on_entry_activate, > > self.entry_apellido_empleado) > > self.entry_apellido_empleado.connect("activate", > > self.on_entry_activate, > > self.entry_nombre_empleado) > > self.entry_nombre_empleado.connect("activate", > > self.on_entry_activate, > > self.entry_codigo_clasificacion) > > self.entry_codigo_clasificacion.connect("activate", > > self.on_entry_activate, > > self.entry_nombre_clasificacion) > > Estás usando on_entry_activate() como método, cuando de hecho no usa > nada de la instancia (no accede a self). Tienes dos opciones: ponerla > fuera de la clase (no muy adecuado, ya que costará encontrarla) o mejor, > ponerla como función anidada, que es como te mostraré en el ejemplo (con > la ventaja de que, si hiciera falta, sí podrías acceder a la instancia, > ya que "self" queda en la clausura). > > ¿Ves que tu código es muy repetitivo? eso es porque hay un patrón, y > debes sacar partido de ello. Podría quedar: > > def connect_entry_enter(self): > def grab_focus(widget, other): > other.grab_focus() > path = (a, b, c, d) > for index in xrange(len(path)-1): > from0, to = path[index:index+2] > from0.connect("activate", grab_focus, to) > > Donde a, b, c y d son los widgets puestos en el orden que quieras. Quizá > el path debiera ser un parámetro de la función connect_entry_enter(). Funciono a la perfección. > Si nos ponemos exquisitos, la función de extraer los pares también se > puede abstraer: > > def groups(lst, n, step=1): > for index in xrange(0, len(lst)-(n-1), step): > yield lst[index:index+n] > > (si la entrada no fuera una lista/tupla sino un iterador, ver > http://docs.python.org/lib/itertools-recipes.html) > > Y se usaría: > > for from0, to in groups(path, 2): > from0.connect("activate", grab_focus, to) > > Espero que te sirva, > > arnau > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es Muchas Gracias!. Saludos! :D -- Heizenreder Guillermo Code: http://code.google.com/u/gheize/ Blog: http://gheize.wordpress.com/ ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From necudeco en gmail.com Sun Sep 16 22:27:20 2007 From: necudeco en gmail.com (necudeco) Date: Sun, 16 Sep 2007 15:27:20 -0500 Subject: =?ISO-8859-1?Q?Re:__Crear_peque=F1o_servidor_con_Python?= In-Reply-To: <366fefdb0709161319p72074e50k3d0d0ebe3294a8a6@mail.gmail.com> References: <366fefdb0709161319p72074e50k3d0d0ebe3294a8a6@mail.gmail.com> Message-ID: <2ccb93070709161327t5d7b32f1m5df9226dfe2212df@mail.gmail.com> http://necudeco.homeunix.net/index.php/2007/09/14/minidns-la-alternativa-bromista-a-bind/ Eso te puede servir Dairon On 9/16/07, Dairon Pérez Frías wrote: > > Hola, Lista necesito saber donde puedo encontrar bibliografia para > comenzar > a hacer una pequeña aplicacion que escuche solicitudes en la red y > responda > a un cliente, es decir una aplicacion Servidor-Cliente, hacerla netamente > en > Python para transferir xml. > Saludos D.Frias > > -- > Nada es imposible, lo que sucede es que no tenemos el nivel de > conocimiento > necesario para lograrlo. > Dairon Perez Frias(D.Frias) > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > -- NeCuDeCo Asociacion Peruana de Software Libre http://necudeco.homeunix.net http://apesol.org Your Jugdment Day is NOW sudo kills -9 $richard_penguin_signature From gagsl-py2 en yahoo.com.ar Mon Sep 17 01:04:39 2007 From: gagsl-py2 en yahoo.com.ar (Gabriel Genellina) Date: Sun, 16 Sep 2007 20:04:39 -0300 Subject: =?utf-8?q?Crear_peque=C3=B1o_servidor_con_Python?= References: <366fefdb0709161319p72074e50k3d0d0ebe3294a8a6@mail.gmail.com> Message-ID: En Sun, 16 Sep 2007 17:19:23 -0300, Dairon Pérez Frías escribi?: > Hola, Lista necesito saber donde puedo encontrar bibliografia para > comenzar > a hacer una pequeña aplicacion que escuche solicitudes en la red y > responda > a un cliente, es decir una aplicacion Servidor-Cliente, hacerla > netamente en > Python para transferir xml. La forma más sencilla sería usando SimpleHTTPServer: cd /ruta/a/los/archivos/xml/existentes python /ruta/a/SimpleHTTPServer.py Pero si los xml no son archivos ya creados, habria que escribir una clase derivada de BaseHTTPServer.BaseHTTPRequestHandler para que arme la respuesta en cada caso. -- Gabriel Genellina ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From subscripcions en trespams.com Sun Sep 16 22:50:09 2007 From: subscripcions en trespams.com (Antoni Aloy) Date: Sun, 16 Sep 2007 22:50:09 +0200 Subject: Crear =?iso-8859-1?q?peque=F1o_servidor_con?= Python In-Reply-To: <366fefdb0709161319p72074e50k3d0d0ebe3294a8a6@mail.gmail.com> References: <366fefdb0709161319p72074e50k3d0d0ebe3294a8a6@mail.gmail.com> Message-ID: <200709162250.09261.subscripcions@trespams.com> El Diumenge, 16-09-07 a les 22:19 escrigueres: > Hola, Lista necesito saber donde puedo encontrar bibliografia para comenzar > a hacer una pequeña aplicacion que escuche solicitudes en la red y responda > a un cliente, es decir una aplicacion Servidor-Cliente, hacerla netamente > en Python para transferir xml. > Saludos D.Frias http://www.answermysearches.com/pythons-simplexmlrpcserver-how-to-serve-from-a-different-machine/304/ Saludos, -- Antoni Aloy López Binissalem - Mallorca http://trespams.com Soci de bulma #34 From hafrancker en gmail.com Mon Sep 17 03:27:13 2007 From: hafrancker en gmail.com (Jose =?ISO-8859-1?Q?Qui=F1ones?= Enciso) Date: Sun, 16 Sep 2007 20:27:13 -0500 Subject: Problemas con gtkmozembed Message-ID: <1189992433.5086.3.camel@kaos> Amigos, Estoy deseando desarrollar una aplicación que utilice gtkmozembed, pero tambien ecesito que este soporte los plugins de flash, ahora no logro que esto se de pues cuando corro la aplicación haciendo referencia a la url "about:plugins" me sale que no hay ningun plugin, sin embargo los tengo instalado en mi firefox, y no esta en mi carpeta local sino en /usr/lib/mozilla/plugins. Espero me puedan ayudar, de todas maneras lo seguire intentando. Saludos, -- Jose Quiñones Enciso Blog : http://jose.inkax.org/ ------------------------------------ Asociación Peruana de Software Libre http://www.apesol.org ------------------------------------ ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From gagsl-py2 en yahoo.com.ar Mon Sep 17 04:29:40 2007 From: gagsl-py2 en yahoo.com.ar (Gabriel Genellina) Date: Sun, 16 Sep 2007 23:29:40 -0300 Subject: UnicodeDecodeError con SQLObject References: Message-ID: En Sun, 16 Sep 2007 08:11:22 -0300, Victor Peinado escribi?: > Tengo almacenados una especie de diccionarios bilingües en una base de > datos cuyas tablas guardan toda la información en unicode (está > definidas con SQLObject como UnicodeCol) de la siguiente forma: > > class DictEsEn(SQLObject): > """ Table for Spanish-English entries """ > _connection = conn > lemma = UnicodeCol(unique=True, length=30, notNull=True) > translations = UnicodeCol(notNull=True) > > Ahora bien, cuando consulto con caracteres con diacríticos me saltan > los famosos UnicodeDecodeError, a pesar de que todas las cadenas son > unicode. P. ej. busco "niño": > >>>> results = DictEsEn.selectBy(lemma="niñ") >>>> [item.lemma for item in results] > Traceback (most recent call last): > line 113, in _executeRetry > query = unicode(query, self.encoding) > UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position > 97: ordinal not in range(128) > > Mi sistema trabaja con utf-8, si consulto a la tabla con > DictEsEn.selectBy(lemma=u"niñ") obtengo el mismo error anterior. Según se dice en esta pagina del 2005 el soporte de Unicode en SQLObject no era perfecto. Sugiere usar esto: results = DictEsEn.selectBy(lemma=u"niñ".encode("utf8")) (Tal vez versiones más nuevas de SQLObject tengan mejor soporte. A proposito, cual estas usando?) -- Gabriel Genellina ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From necudeco en gmail.com Mon Sep 17 04:30:37 2007 From: necudeco en gmail.com (necudeco) Date: Sun, 16 Sep 2007 21:30:37 -0500 Subject: Problemas con gtkmozembed In-Reply-To: <1189992433.5086.3.camel@kaos> References: <1189992433.5086.3.camel@kaos> Message-ID: <2ccb93070709161930g17980072w4847cd0f363f4e50@mail.gmail.com> Hola jose, los plugins no deberian estar en /usr/lib/nsbrowser/plugins ? On 9/16/07, Jose Quiñones Enciso wrote: > > Amigos, > Estoy deseando desarrollar una aplicación que utilice gtkmozembed, pero > tambien ecesito que este soporte los plugins de flash, ahora no logro > que esto se de pues cuando corro la aplicación haciendo referencia a la > url "about:plugins" me sale que no hay ningun plugin, sin embargo los > tengo instalado en mi firefox, y no esta en mi carpeta local sino > en /usr/lib/mozilla/plugins. > Espero me puedan ayudar, de todas maneras lo seguire intentando. > > Saludos, > -- > Jose Quiñones Enciso > Blog : http://jose.inkax.org/ > ------------------------------------ > Asociación Peruana de Software Libre > http://www.apesol.org > ------------------------------------ > > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > > -- NeCuDeCo Asociacion Peruana de Software Libre http://necudeco.homeunix.net http://apesol.org Your Jugdment Day is NOW sudo kills -9 $richard_penguin_signature From hafrancker en gmail.com Mon Sep 17 05:00:50 2007 From: hafrancker en gmail.com (Jose =?ISO-8859-1?Q?Qui=F1ones?= Enciso) Date: Sun, 16 Sep 2007 22:00:50 -0500 Subject: Problemas con gtkmozembed In-Reply-To: <2ccb93070709161930g17980072w4847cd0f363f4e50@mail.gmail.com> References: <1189992433.5086.3.camel@kaos> <2ccb93070709161930g17980072w4847cd0f363f4e50@mail.gmail.com> Message-ID: <1189998050.5086.10.camel@kaos> Que tal necudeco, Pues mira acabo de resolver el problema y les comento que el gtkmozembed pues no busca el plugin en ningun lugar del /usr/lib, sino que lo hace en la carpeta del usuario .mozilla/plugins , y como siempre le instalo el plugin en el /usr/lib para que todos mis usuarios lo tengan a disposición, pues pense que era un error de plugin. Bueno ahora todo solucionado. Saludos, El dom, 16-09-2007 a las 21:30 -0500, necudeco escribió: > Hola jose, los plugins no deberian estar en /usr/lib/nsbrowser/plugins ? > > > On 9/16/07, Jose Quiñones Enciso wrote: > > > > Amigos, > > Estoy deseando desarrollar una aplicación que utilice gtkmozembed, pero > > tambien ecesito que este soporte los plugins de flash, ahora no logro > > que esto se de pues cuando corro la aplicación haciendo referencia a la > > url "about:plugins" me sale que no hay ningun plugin, sin embargo los > > tengo instalado en mi firefox, y no esta en mi carpeta local sino > > en /usr/lib/mozilla/plugins. > > Espero me puedan ayudar, de todas maneras lo seguire intentando. > > > > Saludos, > > -- > > Jose Quiñones Enciso > > Blog : http://jose.inkax.org/ > > ------------------------------------ > > Asociación Peruana de Software Libre > > http://www.apesol.org > > ------------------------------------ > > > > > > > > _______________________________________________ > > Python-es mailing list > > Python-es en aditel.org > > http://listas.aditel.org/listinfo/python-es > > > > > > -- Jose Quiñones Enciso Blog : http://jose.inkax.org/ ------------------------------------ Asociación Peruana de Software Libre http://www.apesol.org ------------------------------------ ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From necudeco en gmail.com Mon Sep 17 05:07:57 2007 From: necudeco en gmail.com (necudeco) Date: Sun, 16 Sep 2007 22:07:57 -0500 Subject: Problemas con gtkmozembed In-Reply-To: <1189998050.5086.10.camel@kaos> References: <1189992433.5086.3.camel@kaos> <2ccb93070709161930g17980072w4847cd0f363f4e50@mail.gmail.com> <1189998050.5086.10.camel@kaos> Message-ID: <2ccb93070709162007v200a7e9ci8703dbafaab84ec9@mail.gmail.com> sin embargo me parece raro que lo haga solo ahi. puede ser que sea el sitio por defecto, pero deberia haber alguna manera de indicarle que lo busque tambien en otras locaciones, no crees ? PD: es mejor creo yo que lo busque en el sistema tmbien. On 9/16/07, Jose Quiñones Enciso wrote: > > Que tal necudeco, > Pues mira acabo de resolver el problema y les comento que el gtkmozembed > pues no busca el plugin en ningun lugar del /usr/lib, sino que lo hace > en la carpeta del usuario .mozilla/plugins , y como siempre le instalo > el plugin en el /usr/lib para que todos mis usuarios lo tengan a > disposición, pues pense que era un error de plugin. > > Bueno ahora todo solucionado. > > Saludos, > El dom, 16-09-2007 a las 21:30 -0500, necudeco escribió: > > Hola jose, los plugins no deberian estar en /usr/lib/nsbrowser/plugins ? > > > > > > On 9/16/07, Jose Quiñones Enciso wrote: > > > > > > Amigos, > > > Estoy deseando desarrollar una aplicación que utilice gtkmozembed, > pero > > > tambien ecesito que este soporte los plugins de flash, ahora no logro > > > que esto se de pues cuando corro la aplicación haciendo referencia a > la > > > url "about:plugins" me sale que no hay ningun plugin, sin embargo los > > > tengo instalado en mi firefox, y no esta en mi carpeta local sino > > > en /usr/lib/mozilla/plugins. > > > Espero me puedan ayudar, de todas maneras lo seguire intentando. > > > > > > Saludos, > > > -- > > > Jose Quiñones Enciso > > > Blog : http://jose.inkax.org/ > > > ------------------------------------ > > > Asociación Peruana de Software Libre > > > http://www.apesol.org > > > ------------------------------------ > > > > > > > > > > > > _______________________________________________ > > > Python-es mailing list > > > Python-es en aditel.org > > > http://listas.aditel.org/listinfo/python-es > > > > > > > > > > > -- > Jose Quiñones Enciso > Blog : http://jose.inkax.org/ > ------------------------------------ > Asociación Peruana de Software Libre > http://www.apesol.org > ------------------------------------ > > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > > -- NeCuDeCo Asociacion Peruana de Software Libre http://necudeco.homeunix.net http://apesol.org Your Jugdment Day is NOW sudo kills -9 $richard_penguin_signature From vitojph en gmail.com Mon Sep 17 10:11:10 2007 From: vitojph en gmail.com (Victor Peinado) Date: Mon, 17 Sep 2007 10:11:10 +0200 Subject: UnicodeDecodeError con SQLObject In-Reply-To: References: Message-ID: ¡Hola a todos! Efectivamente, el soporte de sqlobject con unicode es malo. Otro mensaje al respecto: http://www.mail-archive.com/sqlobject-discuss en lists.sourceforge.net/msg02944.html Bueno, por ahora lo he solucionado de forma cutre comentado en mysqlconnection.py las dos líneas que intentan convertir a unicode y asegurándome de que todas las cadenas que proceso son unicode : #if self.need_unicode and not isinstance(query, unicode): #query = unicode(query, self.encoding) Estoy utilizando la versión 0.10. Mi aplicación es parte de un web service que estoy haciendo en TurboGears (con el módulo TGWebServices). El entorno en general está muy bien pero sqlobject me está provocando más dolores de cabeza de los esperados. Estoy por pasarme a SQLAlchemy, ¿lo habéis probado? ¿Está verde aún? Gracias a todos por las respuestas. Un saludo. -- Víctor Peinado | NLP & IR Group - UNED | http://nlp.uned.es/~victor Tel (+34) 91 398 8106 Skype/GTalk: vitojph ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From hafrancker en gmail.com Mon Sep 17 06:38:40 2007 From: hafrancker en gmail.com (Jose =?ISO-8859-1?Q?Qui=F1ones?= Enciso) Date: Sun, 16 Sep 2007 23:38:40 -0500 Subject: Problemas con gtkmozembed In-Reply-To: <2ccb93070709162007v200a7e9ci8703dbafaab84ec9@mail.gmail.com> References: <1189992433.5086.3.camel@kaos> <2ccb93070709161930g17980072w4847cd0f363f4e50@mail.gmail.com> <1189998050.5086.10.camel@kaos> <2ccb93070709162007v200a7e9ci8703dbafaab84ec9@mail.gmail.com> Message-ID: <1190003921.5086.13.camel@kaos> Si yo tambien creo lo mismo, pero no creo que se pueda hacer mucho con el plugin, ademas que el gtkmozembed no implementa muchas cosas, al menos me sirve para cosas pequeñas. Saludos, El dom, 16-09-2007 a las 22:07 -0500, necudeco escribió: > sin embargo me parece raro que lo haga solo ahi. puede ser que sea el sitio > por defecto, pero deberia haber alguna manera de indicarle que lo busque > tambien en otras locaciones, no crees ? > > PD: es mejor creo yo que lo busque en el sistema tmbien. > > On 9/16/07, Jose Quiñones Enciso wrote: > > > > Que tal necudeco, > > Pues mira acabo de resolver el problema y les comento que el gtkmozembed > > pues no busca el plugin en ningun lugar del /usr/lib, sino que lo hace > > en la carpeta del usuario .mozilla/plugins , y como siempre le instalo > > el plugin en el /usr/lib para que todos mis usuarios lo tengan a > > disposición, pues pense que era un error de plugin. > > > > Bueno ahora todo solucionado. > > > > Saludos, > > El dom, 16-09-2007 a las 21:30 -0500, necudeco escribió: > > > Hola jose, los plugins no deberian estar en /usr/lib/nsbrowser/plugins ? > > > > > > > > > On 9/16/07, Jose Quiñones Enciso wrote: > > > > > > > > Amigos, > > > > Estoy deseando desarrollar una aplicación que utilice gtkmozembed, > > pero > > > > tambien ecesito que este soporte los plugins de flash, ahora no logro > > > > que esto se de pues cuando corro la aplicación haciendo referencia a > > la > > > > url "about:plugins" me sale que no hay ningun plugin, sin embargo los > > > > tengo instalado en mi firefox, y no esta en mi carpeta local sino > > > > en /usr/lib/mozilla/plugins. > > > > Espero me puedan ayudar, de todas maneras lo seguire intentando. > > > > > > > > Saludos, > > > > -- > > > > Jose Quiñones Enciso > > > > Blog : http://jose.inkax.org/ > > > > ------------------------------------ > > > > Asociación Peruana de Software Libre > > > > http://www.apesol.org > > > > ------------------------------------ > > > > > > > > > > > > > > > > _______________________________________________ > > > > Python-es mailing list > > > > Python-es en aditel.org > > > > http://listas.aditel.org/listinfo/python-es > > > > > > > > > > > > > > > > -- > > Jose Quiñones Enciso > > Blog : http://jose.inkax.org/ > > ------------------------------------ > > Asociación Peruana de Software Libre > > http://www.apesol.org > > ------------------------------------ > > > > > > > > _______________________________________________ > > Python-es mailing list > > Python-es en aditel.org > > http://listas.aditel.org/listinfo/python-es > > > > > > -- Jose Quiñones Enciso Blog : http://jose.inkax.org/ ------------------------------------ Asociación Peruana de Software Libre http://www.apesol.org ------------------------------------ ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From rafaelcantos en hotmail.com Mon Sep 17 13:13:03 2007 From: rafaelcantos en hotmail.com (Rafael Cantos) Date: Mon, 17 Sep 2007 11:13:03 +0000 Subject: Transformar una lista en cadena. Message-ID: Hola a todos. Necesito pasar los elementos de una lista a una única cadena de texto. Creo que las cadenas son inmutables y el siguiente código no es válido: lista = ['Ana\n', 'Pepe\n', 'Gloria\n', 'Pedro\'] for x in lista: cadena = cadena + x print cadena y que muestre lo siguiente: Ana pepe Gloria Pedro Esto es lo que quiero hacer, pero en python ya sé que no se hace así. ¿Cómo puedo hacerlo? gracias y saludos a todos. Rafa PD: gracias Arnault por tu respuesta en el post Filechooser, me fue útil. _________________________________________________________________ Dale rienda suelta a tu tiempo libre. Mil ideas para exprimir tu ocio con MSN Entretenimiento. http://entretenimiento.msn.es/ From rapto en arrakis.es Mon Sep 17 14:27:56 2007 From: rapto en arrakis.es (Marcos =?ISO-8859-1?Q?S=E1nchez?= Provencio) Date: Mon, 17 Sep 2007 14:27:56 +0200 Subject: Transformar una lista en cadena. In-Reply-To: References: Message-ID: <1190032076.5669.2.camel@savin> ''.join(lista) El lun, 17-09-2007 a las 11:13 +0000, Rafael Cantos escribió: > Hola a todos. > > Necesito pasar los elementos de una lista a una única cadena de texto. Creo > que las cadenas son inmutables y el siguiente código no es válido: > > lista = ['Ana\n', 'Pepe\n', 'Gloria\n', 'Pedro\'] > for x in lista: > cadena = cadena + x > print cadena > > y que muestre lo siguiente: > > > Ana > pepe > Gloria > Pedro > > Esto es lo que quiero hacer, pero en python ya sé que no se hace así. ¿Cómo > puedo hacerlo? > > gracias y saludos a todos. > > Rafa > > PD: gracias Arnault por tu respuesta en el post Filechooser, me fue útil. > > _________________________________________________________________ > Dale rienda suelta a tu tiempo libre. Mil ideas para exprimir tu ocio con > MSN Entretenimiento. http://entretenimiento.msn.es/ > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From arnau en ehas.org Mon Sep 17 16:46:07 2007 From: arnau en ehas.org (Arnau Sanchez) Date: Mon, 17 Sep 2007 16:46:07 +0200 Subject: Transformar una lista en cadena. In-Reply-To: References: Message-ID: <46EE932F.3090102@ehas.org> > Necesito pasar los elementos de una lista a una única cadena de texto. > Creo que las cadenas son inmutables y el siguiente código no es válido: > > lista = ['Ana\n', 'Pepe\n', 'Gloria\n', 'Pedro\'] > for x in lista: > cadena = cadena + x > print cadena Si añades antes del bucle "cadena = ''" sí que será válido (pero no especules sobre ello, ¡pruébalo!), porque aunque las cadenas son inmutables, estás creando una nueva a cada iteración. Pero este código es tan feo como ineficiente, un ejemplo clásico de lo que no es idiomático. Mírate guías sobre el tema, por ejemplo: http://python.net/~goodger/projects/pycon/2007/idiomatic/handout.html en este caso, sección: Building Strings from Substrings > y que muestre lo siguiente: > > > Ana > pepe > Gloria > Pedro Si realmente sólo quieres mostrar por pantalla lo que hay en una lista te será suficiente: sys.stdout.writelines(lista) arnau From cabrerachaparro en gmail.com Mon Sep 17 23:31:31 2007 From: cabrerachaparro en gmail.com (Daniel Cabrera) Date: Mon, 17 Sep 2007 16:31:31 -0500 Subject: Open Komodo Message-ID: <8565ad90709171431u1a515e4ci94f9710a614b2e63@mail.gmail.com> Hola, para los que usan Komodo como IDE o para los que no lo usan por que hay que pagar, esta noticia podría interesarle. http://comulinux.blogspot.com/2007/09/open-komodo.html -- Daniel Cabrera Chaparro Noticias Interesantes de Linux en http://comulinux.blogspot.com/ From javi en bertayjavi.com Mon Sep 17 21:06:02 2007 From: javi en bertayjavi.com (Javi) Date: Mon, 17 Sep 2007 21:06:02 +0200 Subject: pregunta de novato Message-ID: <000f01c7f95d$cbfcb700$0101a8c0@portatil> Hola a todos, soy muy novato y no se si existe algo en python parecido al visualbasic donde yo pueda hacer un bucle while al reves, primero el ejecutar el bucle y luego comprobar la condicion , con la finalidad de que al menso una vez se ejecute siempre estoy buscando algo asi( en visualbasic), que en lugar de do while (condicion) ----- ---- loop haga do ----- ---- loop while (condicion) imagino que debe haber algo pero no doy con ello, me gustaria no tener que romper el bucle sino que se acabara con la condicion falsa Gracias por vuestra ayuda From necudeco en gmail.com Tue Sep 18 02:57:21 2007 From: necudeco en gmail.com (necudeco) Date: Mon, 17 Sep 2007 19:57:21 -0500 Subject: pregunta de novato In-Reply-To: <000f01c7f95d$cbfcb700$0101a8c0@portatil> References: <000f01c7f95d$cbfcb700$0101a8c0@portatil> Message-ID: <2ccb93070709171757q108415f6p13e210ce027035c0@mail.gmail.com> while ( True): bloque de codigo if ( condincion ) : break resto de codigo Saludos On 9/17/07, Javi wrote: > > > > > Hola a todos, soy muy novato y no se si existe algo en python parecido al > visualbasic donde yo pueda hacer un bucle while al reves, primero el > ejecutar el bucle y luego comprobar la condicion , con la finalidad de que > al menso una vez se ejecute siempre > > estoy buscando algo asi( en visualbasic), que en lugar de > > do while (condicion) > ----- > ---- > loop > > haga > > do > ----- > ---- > loop while (condicion) > > imagino que debe haber algo pero no doy con ello, me gustaria no tener que > romper el bucle sino que se acabara con la condicion falsa > > Gracias por vuestra ayuda > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > -- NeCuDeCo Asociacion Peruana de Software Libre http://necudeco.homeunix.net http://apesol.org Your Jugdment Day is NOW sudo kills -9 $richard_penguin_signature From rafaelcantos en hotmail.com Tue Sep 18 09:42:44 2007 From: rafaelcantos en hotmail.com (Rafael Cantos) Date: Tue, 18 Sep 2007 07:42:44 +0000 Subject: Transformar una lista en cadena In-Reply-To: <20070918004912.00DA4148D6EF@devnull.aditel.org> References: <20070918004912.00DA4148D6EF@devnull.aditel.org> Message-ID: ok, Muchas gracias. Rafa >''.join(lista) > >El lun, 17-09-2007 a las 11:13 +0000, Rafael Cantos escribió: > > Hola a todos. > > > > Necesito pasar los elementos de una lista a una única cadena de texto. >Creo > > que las cadenas son inmutables y el siguiente código no es válido: > > > > lista = ['Ana\n', 'Pepe\n', 'Gloria\n', 'Pedro\'] > > for x in lista: > > cadena = cadena + x > > print cadena > > > > y que muestre lo siguiente: > > > > > > Ana > > pepe > > Gloria > > Pedro > > > > Esto es lo que quiero hacer, pero en python ya sé que no se hace así. >¿Cómo > > puedo hacerlo? > > > > gracias y saludos a todos. > > > > Rafa > > > > PD: gracias Arnault por tu respuesta en el post Filechooser, me fue >útil. > > > >Si añades antes del bucle "cadena = ''" sí que será válido (pero no >especules sobre ello, ¡pruébalo!), porque aunque las cadenas son >inmutables, estás creando una nueva a cada iteración. > >Pero este código es tan feo como ineficiente, un ejemplo clásico de lo >que no es idiomático. Mírate guías sobre el tema, por ejemplo: > >http://python.net/~goodger/projects/pycon/2007/idiomatic/handout.html > >en este caso, sección: Building Strings from Substrings > > > y que muestre lo siguiente: > > > > > > Ana > > pepe > > Gloria > > Pedro > >Si realmente sólo quieres mostrar por pantalla lo que hay en una lista >te será suficiente: > >sys.stdout.writelines(lista) > >arnau > > >------------------------------ _________________________________________________________________ Descarga gratis la Barra de Herramientas de MSN http://www.msn.es/usuario/busqueda/barra?XAPID=2031&DI=1055&SU=http%3A//www.hotmail.com&HL=LINKTAG1OPENINGTEXT_MSNBH From pepe en diselpro.com Tue Sep 18 10:09:58 2007 From: pepe en diselpro.com (Pepe Aracil) Date: Tue, 18 Sep 2007 10:09:58 +0200 Subject: Transformar una lista en cadena. In-Reply-To: References: Message-ID: <46EF87D6.7030403@diselpro.com> Hola. Otra forma eficiente de hacer concatenaciones de muchos elementos es utilizar el módulo cStringIO. Salud. Rafael Cantos escribió: > Hola a todos. > > Necesito pasar los elementos de una lista a una única cadena de texto. > Creo que las cadenas son inmutables y el siguiente código no es válido: > > lista = ['Ana\n', 'Pepe\n', 'Gloria\n', 'Pedro\'] > for x in lista: > cadena = cadena + x > print cadena > > y que muestre lo siguiente: > > > Ana > pepe > Gloria > Pedro > > Esto es lo que quiero hacer, pero en python ya sé que no se hace así. > ¿Cómo puedo hacerlo? > > gracias y saludos a todos. > > Rafa > > PD: gracias Arnault por tu respuesta en el post Filechooser, me fue útil. > > _________________________________________________________________ > Dale rienda suelta a tu tiempo libre. Mil ideas para exprimir tu ocio > con MSN Entretenimiento. http://entretenimiento.msn.es/ > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es From peonblanco83 en gmail.com Tue Sep 18 20:53:53 2007 From: peonblanco83 en gmail.com (Peon Blanco) Date: Tue, 18 Sep 2007 12:53:53 -0600 Subject: python, pygtk y un for Message-ID: amigos una pregunta de principiante aver si me pueden ayudar tengo un pequeño programa creado en python y pygtk el cual manda ping a barias ip con un for mandando llamar una lista de las direcciones el problema que tengo es que cando esta en este proceso el programa se queda en blanco y no muestra nada asta que termina de dar el ping a todas las ip y muestra los resultados de cuales estan en linea y cuales no yo lo que quiero es saber si se puede estar mirando en un textview la ip a a la cual el programa esta checando y que propiedad podria usar From arnau en ehas.org Tue Sep 18 21:22:57 2007 From: arnau en ehas.org (Arnau Sanchez) Date: Tue, 18 Sep 2007 21:22:57 +0200 Subject: python, pygtk y un for In-Reply-To: References: Message-ID: <46F02591.4040308@ehas.org> Peon Blanco escribió: > amigos una pregunta de principiante aver si me pueden ayudar tengo un > pequeño programa creado en python y pygtk el cual manda ping a barias ip > con un for mandando llamar una lista de las direcciones el problema que > tengo es que cando esta en este proceso el programa se queda en blanco y > no muestra nada asta que termina de dar el ping a todas las ip y muestra > los resultados de cuales estan en linea y cuales no yo lo que quiero es > saber si se puede estar mirando en un textview la ip a a la cual el > programa esta checando y que propiedad podria usar Creo que mandaste una pregunta parecida hace unos días y no hubo respuesta. No te ofendas, pero cuando escribas a foros públicos, te recomendaría: - Repasar la ortografía. - Utilizar mayúsculas cuando toque. - Emplear signos de puntuación (puntos, comas, etc) - Separar párrafos e ideas - Enviar código (la parte más significativa) para ver por dónde vas. Más sobre esto aquí: http://pythonesfaq.k-rolus.net/comopreguntar Con respecto a tu pregunta: http://pythonesfaq.k-rolus.net/#index70h3 saludos From peonblanco83 en gmail.com Tue Sep 18 21:40:43 2007 From: peonblanco83 en gmail.com (Peon Blanco) Date: Tue, 18 Sep 2007 13:40:43 -0600 Subject: python, pygtk y un for In-Reply-To: <46F02591.4040308@ehas.org> References: <46F02591.4040308@ehas.org> Message-ID: > > Ok pido disculpas atodos y lo tendre muy encuenta gracias From rafael81 en dif.um.es Thu Sep 20 09:06:45 2007 From: rafael81 en dif.um.es (Rafael Marin Perez) Date: Thu, 20 Sep 2007 09:06:45 +0200 Subject: Compilar python Message-ID: <1190272005.11755.18.camel@rapema-desktop> Hola a todos, Soy Rafael Marin, investigador de la Universidad de Murcia. Necesito compilar el compilar el modulo cStringIO para un dispositivo NSLU2 con arquitectura ARM. Tengo instalado un compilador cruzado para arquitecturas ARM, pero no se cuales deben ser los parametros que se le pasen al "./configure". Gracias por vuestra ayuda. Saludos, Rafa. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From rapto en arrakis.es Thu Sep 20 11:06:22 2007 From: rapto en arrakis.es (Marcos =?ISO-8859-1?Q?S=E1nchez?= Provencio) Date: Thu, 20 Sep 2007 11:06:22 +0200 Subject: Compilar python In-Reply-To: <1190272005.11755.18.camel@rapema-desktop> References: <1190272005.11755.18.camel@rapema-desktop> Message-ID: <1190279182.5978.0.camel@savin> ¿No te vale el módulo del paquete debian? http://packages.debian.org/etch/python2.4-minimal/arm/filelist El jue, 20-09-2007 a las 09:06 +0200, Rafael Marin Perez escribió: > Hola a todos, > > Soy Rafael Marin, investigador de la Universidad de Murcia. > > Necesito compilar el compilar el modulo cStringIO para un dispositivo > NSLU2 con arquitectura ARM. > > Tengo instalado un compilador cruzado para arquitecturas ARM, pero no se > cuales deben ser los parametros que se le pasen al "./configure". > > Gracias por vuestra ayuda. > Saludos, Rafa. > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From alezeia81 en hotmail.com Thu Sep 20 13:34:25 2007 From: alezeia81 en hotmail.com (=?iso-8859-1?Q?Alezeia_Gonz=E1lez_Garc=EDa?=) Date: Thu, 20 Sep 2007 11:34:25 +0000 Subject: Ventana Tk que no se cierra sola Message-ID: Hola. Tengo un problema. Estoy haciendo una ventana para un programa en Python que se ejecuta desde PSS/E. La ventana sólo sirve para introducir unas opciones de ejecución. Una vez que se introducen, para que el programa siga ejecutando, tengo que cerrar la ventana a mano pulsando "X". Necesito que la ventana desaparezca al pulsar aceptar y que siga ejecutando. El código tiene esta pinta: from Tkinter import *import tkSimpleDialogimport stringimport psspyimport os class opciones(tkSimpleDialog.Dialog): def init(self): self.nombre='pepe' self.apellidos='garcía' self.edad=int(9) def body(self,master): self.init() Label(master, text="Nombre:").grid(row=0, column=0, sticky=W) self.n = Entry(master) self.n.insert(0,self.nombre) self.n.grid(row=0, column=1,sticky=E) Label(master, text="Apellidos:").grid(row=1, column=0,sticky=W) self.a = Entry(master) self.a.insert(0,self.apellidos) self.a.grid(row=1, column=1) Label(master, text="Edad:").grid(row=7, column=0,sticky=W) self.e = Entry(master) self.e.insert(0,self.edad) self.e.grid(row=7, column=1) def guardaConf(self): ierr = psspy.progress_output(1, 'SALIDA STANDARD',(1,1)) print ' entra en guardar' self.nombre=self.n.get() self.apellidos=self.a.get() self.edad=self.e.get() print ' termina de guardar' def imprimir(self): ierr = psspy.progress_output(1, 'SALIDA STANDARD',(1,1)) print 'Datos de configuración:' print '- Nombre: %s'%(self.nombre) print '- Apellidos: %s'%(self.apellidos) print '- Edad: %s'%(self.edad) def apply(self): self.guardaConf() self.imprimir() root = Tk()w = opciones(root,'Configuracion nMenos1')w.mainloop()ierr = psspy.progress_output(1, 'SALIDA STANDARD',(1,1))print ' y aquí ya seguiría...' Gracias. Visita la web de tenis más completa: www.COOL-Tennis.com _________________________________________________________________ Consigue el nuevo Windows Live Messenger http://get.live.com/messenger/overview From illanesariel en gmail.com Thu Sep 20 15:29:07 2007 From: illanesariel en gmail.com (ariel illanes) Date: Thu, 20 Sep 2007 10:29:07 -0300 Subject: Urgente codigo de Barra Message-ID: Hola Gente : Les cuento estoy haciendo una aplicacion con Python y generando unos reportes con reportlab(pdf). He logrado mostrar el codigo de barra en el reporte: from reportlab.extensions.barcode import code93 from reportlab.pdfgen.canvas import Canvas from reportlab.platypus import Frame from reportlab.lib.units import mm def run(): string= 'TE.05K78A' c = Canvas("barcode.pdf") story = [] story.append(code93(string)) story.append(string) f = Frame(10*mm, 10*mm, 190*mm, 277*mm, showBoundary=0) f.addFromList(story, c) c.save() if __name__=='__main__': run() Pero ahora necesito generar la numeracion para cada codigo de barra alguien me puede orientar como poder seguir.. Muchas Gracias ... Saludos .. Ariel From Alezeia.Gonzalez en iit.upcomillas.es Thu Sep 20 15:32:37 2007 From: Alezeia.Gonzalez en iit.upcomillas.es (=?iso-8859-1?Q?Alezeia_Gonz=E1lez?=) Date: Thu, 20 Sep 2007 15:32:37 +0200 Subject: (sin asunto) Message-ID: <004a01c7fb8a$b595a3d0$7748ce82@upcont.es> Hola. Tengo un problema. Estoy haciendo una ventana para un programa en Python que se ejecuta desde PSS/E. La ventana sólo sirve para introducir unas opciones de ejecución. Una vez que se introducen, para que el programa siga ejecutando, tengo que cerrar la ventana a mano pulsando "X". Necesito que la ventana desaparezca al pulsar aceptar y que siga ejecutando. El código tiene esta pinta: from Tkinter import * import tkSimpleDialog import string import psspy import os class opciones(tkSimpleDialog.Dialog): def init(self): self.nombre='pepe' self.apellidos='garcía' self.edad=int(9) def body(self,master): self.init() Label(master, text="Nombre:").grid(row=0, column=0, sticky=W) self.n = Entry(master) self.n.insert(0,self.nombre) self.n.grid(row=0, column=1,sticky=E) Label(master, text="Apellidos:").grid(row=1, column=0,sticky=W) self.a = Entry(master) self.a.insert(0,self.apellidos) self.a.grid(row=1, column=1) Label(master, text="Edad:").grid(row=7, column=0,sticky=W) self.e = Entry(master) self.e.insert(0,self.edad) self.e.grid(row=7, column=1) def guardaConf(self): ierr = psspy.progress_output(1, 'SALIDA STANDARD',(1,1)) print ' entra en guardar' self.nombre=self.n.get() self.apellidos=self.a.get() self.edad=self.e.get() print ' termina de guardar' def imprimir(self): ierr = psspy.progress_output(1, 'SALIDA STANDARD',(1,1)) print 'Datos de configuración:' print '- Nombre: %s'%(self.nombre) print '- Apellidos: %s'%(self.apellidos) print '- Edad: %s'%(self.edad) def apply(self): self.guardaConf() self.imprimir() root = Tk() w = opciones(root,'Configuracion nMenos1') w.mainloop() ierr = psspy.progress_output(1, 'SALIDA STANDARD',(1,1)) print ' y aquí ya seguiría...' Gracias. __________________________________________________ Alezeia González García Instituto de Investigación Tecnológica (I.I.T.) Universidad Pontificia Comillas C/Quintana, 21 28008 Madrid (Spain) Teléfono : (34) 91 542 28 00 #4296 Fax : (34) 91 542 31 76 e-mail : alezeia.gonzalez en iit.upcomillas.es __________________________________________________ -- La presente comunicación tiene carácter confidencial y es para el exclusivo uso del destinatario indicado en la misma. Si Ud. no es el destinatario indicado, le informamos que cualquier forma de distribución, reproducción o uso de esta comunicación y/o de la información contenida en la misma están estrictamente prohibidos por la ley. Si Ud. ha recibido esta comunicación por error, por favor, notifíquelo inmediatamente al remitente contestando a este mensaje y proceda a continuación a destruirlo. Gracias por su colaboración. This communication contains confidential information. It is for the exclusive use of the intended addressee. If you are not the intended addressee, please note that any form of distribution, copying or use of this communication or the information in it is strictly prohibited by law. If you have received this communication in error, please immediately notify the sender by reply e-mail and destroy this message. Thank you for your cooperation. From Alezeia.Gonzalez en iit.upcomillas.es Thu Sep 20 15:33:24 2007 From: Alezeia.Gonzalez en iit.upcomillas.es (=?iso-8859-1?Q?Alezeia_Gonz=E1lez?=) Date: Thu, 20 Sep 2007 15:33:24 +0200 Subject: ventana Tk que no se cierra Message-ID: <004f01c7fb8a$d179fd80$7748ce82@upcont.es> Hola. Tengo un problema. Estoy haciendo una ventana para un programa en Python que se ejecuta desde PSS/E. La ventana sólo sirve para introducir unas opciones de ejecución. Una vez que se introducen, para que el programa siga ejecutando, tengo que cerrar la ventana a mano pulsando "X". Necesito que la ventana desaparezca al pulsar aceptar y que siga ejecutando. El código tiene esta pinta: from Tkinter import * import tkSimpleDialog import string import psspy import os class opciones(tkSimpleDialog.Dialog): def init(self): self.nombre='pepe' self.apellidos='garcía' self.edad=int(9) def body(self,master): self.init() Label(master, text="Nombre:").grid(row=0, column=0, sticky=W) self.n = Entry(master) self.n.insert(0,self.nombre) self.n.grid(row=0, column=1,sticky=E) Label(master, text="Apellidos:").grid(row=1, column=0,sticky=W) self.a = Entry(master) self.a.insert(0,self.apellidos) self.a.grid(row=1, column=1) Label(master, text="Edad:").grid(row=7, column=0,sticky=W) self.e = Entry(master) self.e.insert(0,self.edad) self.e.grid(row=7, column=1) def guardaConf(self): ierr = psspy.progress_output(1, 'SALIDA STANDARD',(1,1)) print ' entra en guardar' self.nombre=self.n.get() self.apellidos=self.a.get() self.edad=self.e.get() print ' termina de guardar' def imprimir(self): ierr = psspy.progress_output(1, 'SALIDA STANDARD',(1,1)) print 'Datos de configuración:' print '- Nombre: %s'%(self.nombre) print '- Apellidos: %s'%(self.apellidos) print '- Edad: %s'%(self.edad) def apply(self): self.guardaConf() self.imprimir() root = Tk() w = opciones(root,'Configuracion nMenos1') w.mainloop() ierr = psspy.progress_output(1, 'SALIDA STANDARD',(1,1)) print ' y aquí ya seguiría...' Gracias. __________________________________________________ Alezeia González García Instituto de Investigación Tecnológica (I.I.T.) Universidad Pontificia Comillas C/Quintana, 21 28008 Madrid (Spain) Teléfono : (34) 91 542 28 00 #4296 Fax : (34) 91 542 31 76 e-mail : alezeia.gonzalez en iit.upcomillas.es __________________________________________________ -- La presente comunicación tiene carácter confidencial y es para el exclusivo uso del destinatario indicado en la misma. Si Ud. no es el destinatario indicado, le informamos que cualquier forma de distribución, reproducción o uso de esta comunicación y/o de la información contenida en la misma están estrictamente prohibidos por la ley. Si Ud. ha recibido esta comunicación por error, por favor, notifíquelo inmediatamente al remitente contestando a este mensaje y proceda a continuación a destruirlo. Gracias por su colaboración. This communication contains confidential information. It is for the exclusive use of the intended addressee. If you are not the intended addressee, please note that any form of distribution, copying or use of this communication or the information in it is strictly prohibited by law. If you have received this communication in error, please immediately notify the sender by reply e-mail and destroy this message. Thank you for your cooperation. From david.abreu en iac.es Thu Sep 20 15:22:47 2007 From: david.abreu en iac.es (David Abreu Rodriguez) Date: Thu, 20 Sep 2007 14:22:47 +0100 Subject: Urgente codigo de Barra In-Reply-To: References: Message-ID: <46F27427.1070008@iac.es> El "Urgente" en el asunto del mail no te va a dar ninguna ventaja. ciao ariel illanes wrote: >Hola Gente : Les cuento estoy haciendo una aplicacion con Python y >generando unos reportes con reportlab(pdf). >He logrado mostrar el codigo de barra en el reporte: > >from reportlab.extensions.barcode import code93 > >from reportlab.pdfgen.canvas import Canvas >from reportlab.platypus import Frame >from reportlab.lib.units import mm > >def run(): > string= 'TE.05K78A' > c = Canvas("barcode.pdf") > > story = [] > story.append(code93(string)) > story.append(string) > f = Frame(10*mm, 10*mm, 190*mm, 277*mm, showBoundary=0) > f.addFromList(story, c) > > c.save() > >if __name__=='__main__': > run() >Pero ahora necesito generar la numeracion para cada codigo de barra alguien >me puede orientar como poder seguir.. Muchas Gracias ... Saludos .. Ariel >_______________________________________________ >Python-es mailing list >Python-es en aditel.org >http://listas.aditel.org/listinfo/python-es > > ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From illanesariel en gmail.com Thu Sep 20 15:59:17 2007 From: illanesariel en gmail.com (ariel illanes) Date: Thu, 20 Sep 2007 10:59:17 -0300 Subject: codigo barra Urgente Message-ID: Hola Gente : Les cuento estoy haciendo una aplicacion con Python y generando unos reportes con reportlab(pdf). He logrado mostrar el codigo de barra en el reporte: from reportlab.extensions.barcode import code93 from reportlab.pdfgen.canvas import Canvas from reportlab.platypus import Frame from reportlab.lib.units import mm def run(): string= 'TE.05K78A' c = Canvas("barcode.pdf") story = [] story.append(code93(string)) story.append(string) f = Frame(10*mm, 10*mm, 190*mm, 277*mm, showBoundary=0) f.addFromList(story, c) c.save() if __name__=='__main__': run() Pero ahora necesito generar la numeracion para cada codigo de barra alguien me puede orientar como poder seguir.. Muchas Gracias ... Saludos .. Ariel From javi en bertayjavi.com Thu Sep 20 18:28:53 2007 From: javi en bertayjavi.com (Javi) Date: Thu, 20 Sep 2007 18:28:53 +0200 Subject: pregunta sobre variables globales Message-ID: <000601c7fba3$5726cc70$0101a8c0@portatil> hola , os voy a exponer cual es mi duda, me gustaria tener una variable a la que pueda acceder desde los diferentes modulos de mi programa y la verdad es que no se como hacerlo, lo intento con global pero no me funciona. Uso windows y python 2.5, wx y boa. La cuestion es que tengo una mdiparentframe como pantalla principal donde se le asigna valores a esa variable y despues quiero poder acceder a ella desde las diferentes pantallas mdichildframe, pero no se me ocurre. Si alguine pudiera ayudarme le estari amuy agradecido.. Un saludo Javi. From mlacunza en gmail.com Thu Sep 20 18:43:06 2007 From: mlacunza en gmail.com (Mario Lacunza) Date: Thu, 20 Sep 2007 11:43:06 -0500 Subject: pregunta sobre variables globales In-Reply-To: <000601c7fba3$5726cc70$0101a8c0@portatil> References: <000601c7fba3$5726cc70$0101a8c0@portatil> Message-ID: <771741b20709200943j1f518ee5sb058bbde8ef50ca@mail.gmail.com> El día 20/09/07, Javi escribió: > > hola , os voy a exponer cual es mi duda, me gustaria tener una variable a > la que pueda acceder desde los diferentes modulos de mi programa y la verdad > es que no se como hacerlo, lo intento con global pero no me funciona. Uso > windows y python 2.5, wx y boa. La cuestion es que tengo una > mdiparentframe como pantalla principal donde se le asigna valores a esa > variable y despues quiero poder acceder a ella desde las diferentes > pantallas mdichildframe, pero no se me ocurre. Si alguine pudiera ayudarme > le estari amuy agradecido.. > > Un saludo Javi. > > Primero q nada leete bien el manual de Python, aqui no es como en VB. Luego es mas facil poner esas "variable globales" dentro de un modulo independiente como funciones.... -- Saludos / Best regards Mario Lacunza Desarrollador de Sistemas - Webmaster Desarrollador 2 Estrellas VS2005 Email: mlacunza [AT] gmail [DOT] com Website: mlacunzav[DOT]cogia[DOT]net Blog: http://mlacunza.blogspot.com/ Lima - Peru From jcea en argo.es Thu Sep 20 23:08:55 2007 From: jcea en argo.es (Jesus Cea) Date: Thu, 20 Sep 2007 23:08:55 +0200 Subject: Python 3K or Python 2.9? Message-ID: <46F2E167.5000102@argo.es> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Python 3K or Python 2.9? http://www.artima.com/forums/flat.jsp?forum=106&thread=214112 A Response to Bruce Eckel http://www.artima.com/forums/flat.jsp?forum=106&thread=214325 Reply to Guido's Reply http://www.artima.com/forums/flat.jsp?forum=106&thread=214480 - -- Jesus Cea Avion _/_/ _/_/_/ _/_/_/ jcea en argo.es http://www.argo.es/~jcea/ _/_/ _/_/ _/_/ _/_/ _/_/ jabber / xmpp:jcea en jabber.org _/_/ _/_/ _/_/_/_/_/ _/_/ _/_/ _/_/ _/_/ _/_/ "Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ "My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/ "El amor es poner tu felicidad en la felicidad de otro" - Leibniz -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iQCVAwUBRvLhZ5lgi5GaxT1NAQIK5gQAj7Kpsvph/KOAiGB9iYmxNH0M3BfbLZeW RpLJTmiuMAy4TVR//wJ2UZwI5p/tBInbGE3G6JFgVrdFahEzEqbWN2Ij3svGaG3h ek91x+pqYgTgKVlMwSR6NRtsrhqmTJMNYem60IGbktLHzHGKBnaAVKQ9bFJsx9RX J4VPXYDL95A= =d49l -----END PGP SIGNATURE----- ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From cabrerachaparro en gmail.com Fri Sep 21 00:01:49 2007 From: cabrerachaparro en gmail.com (Daniel Cabrera) Date: Thu, 20 Sep 2007 17:01:49 -0500 Subject: Gedit usado como IDE de Python In-Reply-To: <8565ad90709131208v55132ae5y2be06021b373596@mail.gmail.com> References: <8565ad90709130956s6d9f2281mbb39aa3e21818830@mail.gmail.com> <46E97D12.4000301@us.es> <8565ad90709131208v55132ae5y2be06021b373596@mail.gmail.com> Message-ID: <8565ad90709201501o25cfffcctbb4f283565f54bdf@mail.gmail.com> Hola, Instale o mejor dicho configre pylint para usarlo en gedit pero no aparece como activarlo en Gedit, alguien tiene idea de como hacerlo? Gracias. El día 13/09/07, Daniel Cabrera escribió: > > Gracias por el dato, lo voy a probar > > El día 13/09/07, Francisco Jesús Jordano Jiménez > escribió: > > > > Daniel Cabrera escribió: > > > Hola, > > > > > > acabo de publicar un buen articulo que encontré para usar el Gedit > > como IDE > > > de Python, quizás muchos usen Gnome así que puede servirles. > > > > > > Les dejo la direccion: http://comulinux.blogspot.com/ > > > > > > > Está genial, enhorabuena, aunque echo en falta el plugin de pylint para > > gedit. > > > > http://live.gnome.org/Gedit/PylintPlugin > > > Saludos. > > > > > > > > > > Saludos! > > > > _______________________________________________ > > Python-es mailing list > > Python-es en aditel.org > > http://listas.aditel.org/listinfo/python-es > > > > > > -- > Daniel Cabrera Chaparro > Noticias Interesantes de Linux en http://comulinux.blogspot.com/ -- Daniel Cabrera Chaparro Noticias Interesantes de Linux en http://comulinux.blogspot.com/ From him882027 en gmail.com Fri Sep 21 02:21:27 2007 From: him882027 en gmail.com (jav tap) Date: Fri, 21 Sep 2007 02:21:27 +0200 Subject: para que sirve la funcion printJavascript? Message-ID: <9236bdc00709201721l28aad298p576bc8132558316a@mail.gmail.com> Hola tengo el siguiente codigo: for n in self.notes: n.printJavascript() donde notes es: for row in db.fetchall(): # los registros de db.fetchall tiene varioes campos; idnote, textnote, etc... notes.append(Note.Note.FromTuple(*row)) y la funcion FromTuple es: def FromTuple(*args): note = Note() d = dict(zip(Note.DBKEYS, args)) # DBKEYS es una lista ('idnote', 'textnote', etc) note.__dict__.update(d) return note Haber me salieron algunas dudas: ¿en d = dict(zip(Note.DBKEYS, args)) se esta creando una tupla entre la lista DBKEYS y los campos de las filas resultantes de la segunda seccion de cofigo que puse? ¿ que hace note.__dict__.update(d) ? ¿finalmente que hace n.printJavascript()? Muchas gracias. From gagsl-py2 en yahoo.com.ar Fri Sep 21 04:07:58 2007 From: gagsl-py2 en yahoo.com.ar (Gabriel Genellina) Date: Thu, 20 Sep 2007 23:07:58 -0300 Subject: ventana Tk que no se cierra References: <004f01c7fb8a$d179fd80$7748ce82@upcont.es> Message-ID: En Thu, 20 Sep 2007 10:33:24 -0300, Alezeia González escribi?: > Tengo un problema. Estoy haciendo una ventana para un programa en Python > que > se ejecuta desde PSS/E. La ventana sólo sirve para introducir unas > opciones > de ejecución. Una vez que se introducen, para que el programa siga > ejecutando, tengo que cerrar la ventana a mano pulsando "X". Necesito > que la > ventana desaparezca al pulsar aceptar y que siga ejecutando. > > > > root = Tk() > w = opciones(root,'Configuracion nMenos1') > w.mainloop() > ierr = psspy.progress_output(1, 'SALIDA STANDARD',(1,1)) > print ' y aquí ya seguiría...' Creo que todo se arregla quitando la llamada a w.mainloop() tkSimpleDialog hace todo lo necesario y tiene su propio loop de mensajes. -- Gabriel Genellina ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From gagsl-py2 en yahoo.com.ar Fri Sep 21 04:18:26 2007 From: gagsl-py2 en yahoo.com.ar (Gabriel Genellina) Date: Thu, 20 Sep 2007 23:18:26 -0300 Subject: para que sirve la funcion printJavascript? References: <9236bdc00709201721l28aad298p576bc8132558316a@mail.gmail.com> Message-ID: En Thu, 20 Sep 2007 21:21:27 -0300, jav tap escribi?: > Hola tengo el siguiente codigo: > > for n in self.notes: > n.printJavascript() > > donde notes es: > > for row in db.fetchall(): # los registros de db.fetchall tiene > varioes > campos; idnote, textnote, etc... > notes.append(Note.Note.FromTuple(*row)) > > y la funcion FromTuple es: > > def FromTuple(*args): > note = Note() > d = dict(zip(Note.DBKEYS, args)) # DBKEYS es una lista ('idnote', > 'textnote', etc) > note.__dict__.update(d) > return note > > Haber me salieron algunas dudas: > > ¿en d = dict(zip(Note.DBKEYS, args)) se esta creando una tupla entre la > lista DBKEYS y los campos de las filas resultantes de la segunda seccion > de > cofigo que puse? Poniendo un par de prints se te aclaran las dudas... Supongamos que DBKEYS = ("a","b","c") y args es (100,200,300). Entonces zip(DBKEYS, args) es [("a",100), ("b", 200), ("c", 300)] dict es un constructor de diccionarios que casualmente acepta esa lista de tuplas y genera un diccionario {'a': 100, 'b': 200, 'c': 300} > ¿ que hace note.__dict__.update(d) ? note es una instancia de la clase Note; __dict__ es el diccionario de atributos de una instancia. El metodo update de un diccionario le agrega/reemplaza sus items por los del argumento; asi que en el ejemplo de arriba, es como haber escrito note.a = 100 note.b = 200 note.c = 300 pero sin que los nombres a,b,c sean fijos. > ¿finalmente que hace n.printJavascript()? Busca un atributo llamado "printJavascript" dentro del objeto apuntado por el nombre n, y lo ejecuta. (Respuesta correcta pero inútil) -- Gabriel Genellina ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From flaper87 en gmail.com Fri Sep 21 05:55:04 2007 From: flaper87 en gmail.com (Flaper87) Date: Thu, 20 Sep 2007 23:55:04 -0400 Subject: Gedit usado como IDE de Python In-Reply-To: <8565ad90709201501o25cfffcctbb4f283565f54bdf@mail.gmail.com> References: <8565ad90709130956s6d9f2281mbb39aa3e21818830@mail.gmail.com> <46E97D12.4000301@us.es> <8565ad90709131208v55132ae5y2be06021b373596@mail.gmail.com> <8565ad90709201501o25cfffcctbb4f283565f54bdf@mail.gmail.com> Message-ID: Hola Daniel: Esto no es exactamente con pylint pero a mi me funciona muy bien, http://comulinux.blogspot.com/2007/09/usando-gedit-como-ide-de-python.html Saludos y espero te sirva El día 20/09/07, Daniel Cabrera escribió: > > Hola, > Instale o mejor dicho configre pylint para usarlo en gedit pero no aparece > como activarlo en Gedit, alguien tiene idea de como hacerlo? > > Gracias. > > El día 13/09/07, Daniel Cabrera escribió: > > > > Gracias por el dato, lo voy a probar > > > > El día 13/09/07, Francisco Jesús Jordano Jiménez > > escribió: > > > > > > Daniel Cabrera escribió: > > > > Hola, > > > > > > > > acabo de publicar un buen articulo que encontré para usar el Gedit > > > como IDE > > > > de Python, quizás muchos usen Gnome así que puede servirles. > > > > > > > > Les dejo la direccion: http://comulinux.blogspot.com/ > > > > > > > > > > Está genial, enhorabuena, aunque echo en falta el plugin de pylint > para > > > gedit. > > > > > > http://live.gnome.org/Gedit/PylintPlugin > > > > Saludos. > > > > > > > > > > > > > > Saludos! > > > > > > _______________________________________________ > > > Python-es mailing list > > > Python-es en aditel.org > > > http://listas.aditel.org/listinfo/python-es > > > > > > > > > > > -- > > Daniel Cabrera Chaparro > > Noticias Interesantes de Linux en http://comulinux.blogspot.com/ > > > > > -- > Daniel Cabrera Chaparro > Noticias Interesantes de Linux en http://comulinux.blogspot.com/ > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > -- Flavio Percoco Premoli, A.K.A. [Flaper87] http://www.flaper87.com Usuario Linux registrado #436538 Geek by nature, Linux by choice, Debian of course. Key Fingerprint: CFC0 C67D FF73 463B 7E55 CF43 25D1 E75B E2DB 15C7 From Alezeia.Gonzalez en iit.upcomillas.es Fri Sep 21 10:11:59 2007 From: Alezeia.Gonzalez en iit.upcomillas.es (=?iso-8859-1?Q?Alezeia_Gonz=E1lez?=) Date: Fri, 21 Sep 2007 10:11:59 +0200 Subject: ventana Tk que no se cierra In-Reply-To: References: <004f01c7fb8a$d179fd80$7748ce82@upcont.es> Message-ID: <003301c7fc27$152ad080$7748ce82@upcont.es> Gracias Gabriel! He probado a quitar el mainloop() y la ventana se cierra sola. El problema es que cuando vuelvo a ejecutar el programa en Python sin cerrar y volver a abrir el PSS/E, aparece la ventana sin los valores por defecto que le meto por fichero. Al introducir los valores nuevos, no me los actualiza y ejecuta el caso anterior. Lo que necesito es que, al pulsar aceptar, se actualicen los valores y se cierre la ventana, y que, al volver a ejecutar, se actualicen los valores y así no tener que estar abriendo y cerrando PSS/E continuamente. He probado con varias llamadas a funciones de Tk: * w.mainloop()--> hay que cerrarlo a mano * w.update() --> se cuelga la ventana * w.withdraw() --> se oculta la ventana y no veo manera de cerrarla * w.show()--> he probado la combinación del anterior con éste, pero hace lo mismo que sin el w.show() * w.quit()--> se cuelga la ventana Tk y al ejecutar otra vez no actualiza los valores Espero encontrar la función adecuada. ¿Alguien la conoce o conoce alguna otra forma de hacer el diseño de la ventana? Gracias. -----Mensaje original----- De: python-es-bounces en aditel.org [mailto:python-es-bounces en aditel.org] En nombre de Gabriel Genellina Enviado el: viernes, 21 de septiembre de 2007 4:08 Para: python-es en aditel.org Asunto: [Python-es] Re: ventana Tk que no se cierra En Thu, 20 Sep 2007 10:33:24 -0300, Alezeia González escribi?: > Tengo un problema. Estoy haciendo una ventana para un programa en Python > que > se ejecuta desde PSS/E. La ventana sólo sirve para introducir unas > opciones > de ejecución. Una vez que se introducen, para que el programa siga > ejecutando, tengo que cerrar la ventana a mano pulsando "X". Necesito > que la > ventana desaparezca al pulsar aceptar y que siga ejecutando. > > > > root = Tk() > w = opciones(root,'Configuracion nMenos1') > w.mainloop() > ierr = psspy.progress_output(1, 'SALIDA STANDARD',(1,1)) > print ' y aquí ya seguiría...' Creo que todo se arregla quitando la llamada a w.mainloop() tkSimpleDialog hace todo lo necesario y tiene su propio loop de mensajes. -- Gabriel Genellina -- La presente comunicación tiene carácter confidencial y es para el exclusivo uso del destinatario indicado en la misma. Si Ud. no es el destinatario indicado, le informamos que cualquier forma de distribución, reproducción o uso de esta comunicación y/o de la información contenida en la misma están estrictamente prohibidos por la ley. Si Ud. ha recibido esta comunicación por error, por favor, notifíquelo inmediatamente al remitente contestando a este mensaje y proceda a continuación a destruirlo. Gracias por su colaboración. This communication contains confidential information. It is for the exclusive use of the intended addressee. If you are not the intended addressee, please note that any form of distribution, copying or use of this communication or the information in it is strictly prohibited by law. If you have received this communication in error, please immediately notify the sender by reply e-mail and destroy this message. Thank you for your cooperation. From cesar en ortiz.name Fri Sep 21 12:36:47 2007 From: cesar en ortiz.name (Cesar Ortiz) Date: Fri, 21 Sep 2007 12:36:47 +0200 Subject: chorrada con carga de modulos Message-ID: <90255a70709210336r6c6606baq2630b4957f7a5354@mail.gmail.com> Chorrada, pero que no se el porque. Si tengo un modulo apps.py que tiene: import debug import apps def programBegin(): debug.init() Y si tengo un modulo debug.py que tiene: DEBUG = 0 def init(): global DEBUG DEBUG=1 if ( __name__ == "__main__") : import apps apps.programBegin() print DEBUG ¿Porque al ejecutar como comando el modulo debug.py, me imprime 0? Mi no entender... Parece la tipica chorrada que me duele dar quebraderos de cabeza encontrar el porque... Saludos From nemessis545 en gmail.com Fri Sep 21 08:08:59 2007 From: nemessis545 en gmail.com (Alex Ricardo Rincon Silva) Date: Fri, 21 Sep 2007 01:08:59 -0500 Subject: Novato Funciones de "C" Message-ID: <1190354939.2625.2.camel@alex-desktop> buenas mi nombre Alex Rincon necesito saber como : -limpio pantalla "clrscr" -eperp por una tecla o pulsacion del teclado "getch" gracias por la atencion prestada y perdon la molestia... ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From illanesariel en gmail.com Fri Sep 21 14:42:21 2007 From: illanesariel en gmail.com (ariel illanes) Date: Fri, 21 Sep 2007 09:42:21 -0300 Subject: Codigo Barra - Reportlab Message-ID: Hola Gente : Les cuento estoy haciendo una aplicacion con Python y generando unos reportes con reportlab(pdf). He logrado mostrar el codigo de barra en el reporte: from reportlab.extensions.barcode import code93 from reportlab.pdfgen.canvas import Canvas from reportlab.platypus import Frame from reportlab.lib.units import mm def run(): string= 'TE.05K78A' c = Canvas("barcode.pdf") story = [] story.append(code93(string)) story.append(string) f = Frame(10*mm, 10*mm, 190*mm,277*mm,showBoundary=0) f.addFromList(story, c) c.save() if __name__=='__main__': run() Pero ahora necesito generar la numeracion para cada codigo de barra alguien me puede orientar como poder seguir.. Muchas Gracias ... Saludos .. Ariel PD: anteriormente mande el mail que esta arriba y no he tenido respuesta a mi mail. Nose si es que con Python no es posible generar la numeracion para un codigo barra y lo tengo que hacer con otro tipo de herramienta . Si alguien de otra herramienta me avisan .... Saludos Ariel From arnau en ehas.org Fri Sep 21 15:46:02 2007 From: arnau en ehas.org (Arnau Sanchez) Date: Fri, 21 Sep 2007 15:46:02 +0200 Subject: Novato Funciones de "C" In-Reply-To: <1190354939.2625.2.camel@alex-desktop> References: <1190354939.2625.2.camel@alex-desktop> Message-ID: <46F3CB1A.4030003@ehas.org> Alex Ricardo Rincon Silva escribió: No iría mal que hubieras especificado qué sistema operativo usas, porque ambas funciones son dependientes del SO. > -limpio pantalla "clrscr" Bien facilita para google: "python clear screen". Resultado: UNIX: os.system("clean") Windows: :-O > -eperp por una tecla o pulsacion del teclado "getch" Igual: "python getch" http://snippets.dzone.com/posts/show/915 http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/134892 Por otra parte, no te recomendaría hacer programas que lean por caracteres. raw_input(), que lee por líneas, *debería* ser suficiente. arnau From rapto en arrakis.es Fri Sep 21 15:55:06 2007 From: rapto en arrakis.es (Marcos =?ISO-8859-1?Q?S=E1nchez?= Provencio) Date: Fri, 21 Sep 2007 15:55:06 +0200 Subject: Codigo Barra - Reportlab In-Reply-To: References: Message-ID: <1190382906.5670.30.camel@savin> Lo primero, Pero como tengo fama de borde, vamos a contestar. Creo que estás asumiendo que sabemos de qué hablas, cuando es posible que no. ¿Qué es exactamente la numeración del código de barras? ¿Los números de debajo del código propiamente dicho? Si es así, no hay más que crear un widget compuesto y poner tú los numeritos, con el tipo de letra adecuado si es necesario. El vie, 21-09-2007 a las 09:42 -0300, ariel illanes escribió: > Hola Gente : Les cuento estoy haciendo una aplicacion con Python y > generando unos reportes con reportlab(pdf). > He logrado mostrar el codigo de barra en el reporte: > > from reportlab.extensions.barcode import code93 > > from reportlab.pdfgen.canvas import Canvas > from reportlab.platypus import Frame > from reportlab.lib.units import mm > > def run(): > string= 'TE.05K78A' > c = Canvas("barcode.pdf") > > story = [] > story.append(code93(string)) > story.append(string) > f = Frame(10*mm, 10*mm, 190*mm,277*mm,showBoundary=0) > f.addFromList(story, c) > > c.save() > > if __name__=='__main__': > run() > Pero ahora necesito generar la numeracion para cada codigo de barra alguien > me puede orientar como poder seguir.. Muchas Gracias ... Saludos .. Ariel > > PD: anteriormente mande el mail que esta arriba y no he tenido respuesta a > mi mail. > Nose si es que con Python no es posible generar la numeracion para un codigo > barra y lo tengo que hacer con otro tipo de herramienta . Si alguien de otra > herramienta me avisan .... Saludos Ariel > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From mlacunza en gmail.com Fri Sep 21 18:05:42 2007 From: mlacunza en gmail.com (Mario Lacunza) Date: Fri, 21 Sep 2007 11:05:42 -0500 Subject: Codigo Barra - Reportlab In-Reply-To: <1190382906.5670.30.camel@savin> References: <1190382906.5670.30.camel@savin> Message-ID: <771741b20709210905k12ce085cv6d28359d4d974611@mail.gmail.com> El día 21/09/07, Marcos Sánchez Provencio escribió: > > Lo primero, Solo para decir q este tipo de respuestas solo malogran la lista, a mi entender Ariel no solo ha planteado bien su interrogante sino q ha cumplido con la nettiquete.... -- Saludos / Best regards Mario Lacunza Desarrollador de Sistemas - Webmaster Desarrollador 2 Estrellas VS2005 Email: mlacunza [AT] gmail [DOT] com Website: mlacunzav[DOT]cogia[DOT]net Blog: http://mlacunza.blogspot.com/ Lima - Peru From trunkspanish en gmail.com Fri Sep 21 20:25:00 2007 From: trunkspanish en gmail.com (pepe gotera) Date: Fri, 21 Sep 2007 20:25:00 +0200 Subject: SERVIDOR SOCKET siempre a la espera Message-ID: <7a1652b10709211125u535dfd9cy3bd79ca092ca157c@mail.gmail.com> Hola, estoy haciendo un SOCKET en PYTHON con su CLIENTE y SERVIDOR. Me gustaría saber como puedo hacer para que el servidor siempre esté a la espera y no se desconecte, aunque el cliente lo cierre. Ahora cuando desconecto el cliente me sale en la consola del servidor esto: socket.error: (10053, 'Software caused connection abort'), y se desconecta el servidor. Y eso que quité del cliente la función server.close() que supongo que mandaba desconectar al servidor. Alguien podria ayudarme? Gracias por adelantado. From arnau en ehas.org Fri Sep 21 20:57:44 2007 From: arnau en ehas.org (Arnau Sanchez) Date: Fri, 21 Sep 2007 20:57:44 +0200 Subject: SERVIDOR SOCKET siempre a la espera In-Reply-To: <7a1652b10709211125u535dfd9cy3bd79ca092ca157c@mail.gmail.com> References: <7a1652b10709211125u535dfd9cy3bd79ca092ca157c@mail.gmail.com> Message-ID: <46F41428.5060907@ehas.org> pepe gotera escribió: > Hola, estoy haciendo un SOCKET en PYTHON con su CLIENTE y SERVIDOR. Me > gustaría saber como puedo hacer para que el servidor siempre esté a la > espera y no se > > desconecte, aunque el cliente lo cierre. Ahora cuando desconecto el cliente > me sale en la consola del servidor esto: socket.error: (10053, 'Software > caused connection abort'), y se http://docs.python.org/lib/module-SocketServer.html http://pleac.sourceforge.net/pleac_python/sockets.html From xinxic en gmail.com Fri Sep 21 21:40:57 2007 From: xinxic en gmail.com (Xin) Date: Fri, 21 Sep 2007 21:40:57 +0200 Subject: SERVIDOR SOCKET siempre a la espera In-Reply-To: <7a1652b10709211125u535dfd9cy3bd79ca092ca157c@mail.gmail.com> References: <7a1652b10709211125u535dfd9cy3bd79ca092ca157c@mail.gmail.com> Message-ID: <2862cdfe6003bae12c3d354828dfbe50@GMail.com> Así a simple vista, recuerdo cuando los hacia en C, cuando un cliente hacia una connexión el programa hacia un fork i podia seguir encuchando i atender a más clientes. Xin El 21/09/2007, a les 20:25, en/na pepe gotera va escriure: > Hola, estoy haciendo un SOCKET en PYTHON con su CLIENTE y SERVIDOR. > Me > gustaría saber como puedo hacer para que el servidor siempre esté a la > espera y no se > > desconecte, aunque el cliente lo cierre. Ahora cuando desconecto el > cliente > me sale en la consola del servidor esto: socket.error: (10053, > 'Software > caused connection abort'), y se > > desconecta el servidor. Y eso que quité del cliente la función > server.close() > que supongo que mandaba desconectar al servidor. Alguien podria > ayudarme? > Gracias por adelantado. > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From foxandxss en gmail.com Fri Sep 21 23:01:37 2007 From: foxandxss en gmail.com (Jesus Rodriguez) Date: Fri, 21 Sep 2007 23:01:37 +0200 Subject: SERVIDOR SOCKET siempre a la espera In-Reply-To: <2862cdfe6003bae12c3d354828dfbe50@GMail.com> References: <7a1652b10709211125u535dfd9cy3bd79ca092ca157c@mail.gmail.com> <2862cdfe6003bae12c3d354828dfbe50@GMail.com> Message-ID: <2a1edb210709211401o346c8510m3ee525fe29145b4@mail.gmail.com> Enseñame el codigo y te diré, de todos modos, necesitas un while infinito. From ematus en gmail.com Sat Sep 22 04:36:40 2007 From: ematus en gmail.com (Eduardo Matus) Date: Fri, 21 Sep 2007 22:36:40 -0400 Subject: Gobject Message-ID: <984ad6a0709211936g2bbca20br960ae7bc63b69405@mail.gmail.com> holas, estoy tratando de utlizar gobject para determinar cuando se termina la comunicacion de una pipe... este es el codigo.. mas o menos.. def play(self,opciones ,target): mpc = "mplayer -slave -quiet \"" + target + "\" 2>/dev/null" self.pin, self.pout = os.popen2(mpc) #open pipe self.startEofHandler() def startEofHandler(self): self.eofHandler = gobject.io_add_watch(self.pout, gobject.IO_HUP, self.test) def test(self,source,condition): print 'Something happend!!' print source el proceso se ejecuta bien, se supone que cuando termina de reproducir cierto archivo, el metodo gobject.io_add_watch deberia gatillar al metodo test, pero no funciona :S alguna idea? Saludos. From minibota en gmail.com Sat Sep 22 05:23:10 2007 From: minibota en gmail.com (=?ISO-8859-1?Q?Pavel_Mu=F1oz?=) Date: Fri, 21 Sep 2007 21:23:10 -0600 Subject: Gobject In-Reply-To: <984ad6a0709211936g2bbca20br960ae7bc63b69405@mail.gmail.com> References: <984ad6a0709211936g2bbca20br960ae7bc63b69405@mail.gmail.com> Message-ID: <118999020709212023i305ea269gd4d80ff81fc0022@mail.gmail.com> imprime algun erroR? 2007/9/21, Eduardo Matus : > > holas, estoy tratando de utlizar gobject para determinar cuando se termina > la comunicacion de una pipe... este es el codigo.. mas o menos.. > > def play(self,opciones ,target): > mpc = "mplayer -slave -quiet \"" + target + "\" 2>/dev/null" > self.pin, self.pout = os.popen2(mpc) #open pipe > self.startEofHandler() > > def startEofHandler(self): > self.eofHandler = gobject.io_add_watch(self.pout, gobject.IO_HUP, > self.test) > > > def test(self,source,condition): > print 'Something happend!!' > print source > > el proceso se ejecuta bien, se supone que cuando termina de reproducir > cierto archivo, el metodo gobject.io_add_watch deberia gatillar al metodo > test, pero no funciona :S alguna idea? > > Saludos. > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From ematus en gmail.com Sat Sep 22 05:25:12 2007 From: ematus en gmail.com (Eduardo Matus) Date: Fri, 21 Sep 2007 23:25:12 -0400 Subject: Gobject In-Reply-To: <118999020709212023i305ea269gd4d80ff81fc0022@mail.gmail.com> References: <984ad6a0709211936g2bbca20br960ae7bc63b69405@mail.gmail.com> <118999020709212023i305ea269gd4d80ff81fc0022@mail.gmail.com> Message-ID: <984ad6a0709212025g71f76feg897f7df8990e5be4@mail.gmail.com> nop... nada... deberia imprimir "Something happend!!" del metodo test... On 9/21/07, Pavel Muñoz wrote: > > imprime algun erroR? > > 2007/9/21, Eduardo Matus : > > > > holas, estoy tratando de utlizar gobject para determinar cuando se > termina > > la comunicacion de una pipe... este es el codigo.. mas o menos.. > > > > def play(self,opciones ,target): > > mpc = "mplayer -slave -quiet \"" + target + "\" 2>/dev/null" > > self.pin, self.pout = os.popen2(mpc) #open pipe > > self.startEofHandler() > > > > def startEofHandler(self): > > self.eofHandler = gobject.io_add_watch(self.pout, gobject.IO_HUP > , > > self.test) > > > > > > def test(self,source,condition): > > print 'Something happend!!' > > print source > > > > el proceso se ejecuta bien, se supone que cuando termina de reproducir > > cierto archivo, el metodo gobject.io_add_watch deberia gatillar al > metodo > > test, pero no funciona :S alguna idea? > > > > Saludos. > > _______________________________________________ > > Python-es mailing list > > Python-es en aditel.org > > http://listas.aditel.org/listinfo/python-es > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From minibota en gmail.com Sat Sep 22 05:39:19 2007 From: minibota en gmail.com (=?ISO-8859-1?Q?Pavel_Mu=F1oz?=) Date: Fri, 21 Sep 2007 21:39:19 -0600 Subject: Gobject In-Reply-To: <984ad6a0709212025g71f76feg897f7df8990e5be4@mail.gmail.com> References: <984ad6a0709211936g2bbca20br960ae7bc63b69405@mail.gmail.com> <118999020709212023i305ea269gd4d80ff81fc0022@mail.gmail.com> <984ad6a0709212025g71f76feg897f7df8990e5be4@mail.gmail.com> Message-ID: <118999020709212039jde59b65u6b6dafd2d4235867@mail.gmail.com> def startEofHandler(self): self.eofHandler = gobject.io_add_watch(self.pout, gobject.IO_HUP, self.test) print 'EOFHandler Init' def test(self,source,condition): print 'Something happend!!' print source return True Podés probar asi a ver q pasa? El día 21/09/07, Eduardo Matus escribió: > > nop... nada... deberia imprimir "Something happend!!" del metodo test... > > > On 9/21/07, Pavel Muñoz wrote: > > > > imprime algun erroR? > > > > 2007/9/21, Eduardo Matus : > > > > > > holas, estoy tratando de utlizar gobject para determinar cuando se > > termina > > > la comunicacion de una pipe... este es el codigo.. mas o menos.. > > > > > > def play(self,opciones ,target): > > > mpc = "mplayer -slave -quiet \"" + target + "\" 2>/dev/null" > > > self.pin, self.pout = os.popen2(mpc) #open pipe > > > self.startEofHandler() > > > > > > def startEofHandler(self): > > > self.eofHandler = gobject.io_add_watch(self.pout, > gobject.IO_HUP > > , > > > self.test) > > > > > > > > > def test(self,source,condition): > > > print 'Something happend!!' > > > print source > > > > > > el proceso se ejecuta bien, se supone que cuando termina de reproducir > > > cierto archivo, el metodo gobject.io_add_watch deberia gatillar al > > metodo > > > test, pero no funciona :S alguna idea? > > > > > > Saludos. > > > _______________________________________________ > > > Python-es mailing list > > > Python-es en aditel.org > > > http://listas.aditel.org/listinfo/python-es > > > > > _______________________________________________ > > Python-es mailing list > > Python-es en aditel.org > > http://listas.aditel.org/listinfo/python-es > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From ematus en gmail.com Sat Sep 22 05:44:57 2007 From: ematus en gmail.com (Eduardo Matus) Date: Fri, 21 Sep 2007 23:44:57 -0400 Subject: Gobject In-Reply-To: <118999020709212039jde59b65u6b6dafd2d4235867@mail.gmail.com> References: <984ad6a0709211936g2bbca20br960ae7bc63b69405@mail.gmail.com> <118999020709212023i305ea269gd4d80ff81fc0022@mail.gmail.com> <984ad6a0709212025g71f76feg897f7df8990e5be4@mail.gmail.com> <118999020709212039jde59b65u6b6dafd2d4235867@mail.gmail.com> Message-ID: <984ad6a0709212044s2cd09454u655bafebeed6d078@mail.gmail.com> Hola, imprime el EOFHandler init", pero nunca llama a test Saludos. On 9/21/07, Pavel Muñoz wrote: > > def startEofHandler(self): > self.eofHandler = gobject.io_add_watch(self.pout, gobject.IO_HUP, > self.test) > print 'EOFHandler Init' > > > def test(self,source,condition): > print 'Something happend!!' > print source > return True > > Podés probar asi a ver q pasa? > > El día 21/09/07, Eduardo Matus escribió: > > > > nop... nada... deberia imprimir "Something happend!!" del metodo test... > > > > > > On 9/21/07, Pavel Muñoz wrote: > > > > > > imprime algun erroR? > > > > > > 2007/9/21, Eduardo Matus : > > > > > > > > holas, estoy tratando de utlizar gobject para determinar cuando se > > > termina > > > > la comunicacion de una pipe... este es el codigo.. mas o menos.. > > > > > > > > def play(self,opciones ,target): > > > > mpc = "mplayer -slave -quiet \"" + target + "\" 2>/dev/null" > > > > self.pin, self.pout = os.popen2(mpc) #open pipe > > > > self.startEofHandler() > > > > > > > > def startEofHandler(self): > > > > self.eofHandler = gobject.io_add_watch(self.pout, > > gobject.IO_HUP > > > , > > > > self.test) > > > > > > > > > > > > def test(self,source,condition): > > > > print 'Something happend!!' > > > > print source > > > > > > > > el proceso se ejecuta bien, se supone que cuando termina de > reproducir > > > > cierto archivo, el metodo gobject.io_add_watch deberia gatillar al > > > metodo > > > > test, pero no funciona :S alguna idea? > > > > > > > > Saludos. > > > > _______________________________________________ > > > > Python-es mailing list > > > > Python-es en aditel.org > > > > http://listas.aditel.org/listinfo/python-es > > > > > > > _______________________________________________ > > > Python-es mailing list > > > Python-es en aditel.org > > > http://listas.aditel.org/listinfo/python-es > > > > > _______________________________________________ > > Python-es mailing list > > Python-es en aditel.org > > http://listas.aditel.org/listinfo/python-es > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From ematus en gmail.com Sat Sep 22 06:09:57 2007 From: ematus en gmail.com (Eduardo Matus) Date: Sat, 22 Sep 2007 00:09:57 -0400 Subject: Gobject In-Reply-To: <118999020709212039jde59b65u6b6dafd2d4235867@mail.gmail.com> References: <984ad6a0709211936g2bbca20br960ae7bc63b69405@mail.gmail.com> <118999020709212023i305ea269gd4d80ff81fc0022@mail.gmail.com> <984ad6a0709212025g71f76feg897f7df8990e5be4@mail.gmail.com> <118999020709212039jde59b65u6b6dafd2d4235867@mail.gmail.com> Message-ID: <984ad6a0709212109u375c9876w9bdd3f4b21602dba@mail.gmail.com> o si sabes de alguna otra forma de determinar cuando se termina de reproducir un archivo.. tambien sirve Saludos. On 9/21/07, Pavel Muñoz wrote: > > def startEofHandler(self): > self.eofHandler = gobject.io_add_watch(self.pout, gobject.IO_HUP, > self.test) > print 'EOFHandler Init' > > > def test(self,source,condition): > print 'Something happend!!' > print source > return True > > Podés probar asi a ver q pasa? > > El día 21/09/07, Eduardo Matus escribió: > > > > nop... nada... deberia imprimir "Something happend!!" del metodo test... > > > > > > On 9/21/07, Pavel Muñoz wrote: > > > > > > imprime algun erroR? > > > > > > 2007/9/21, Eduardo Matus : > > > > > > > > holas, estoy tratando de utlizar gobject para determinar cuando se > > > termina > > > > la comunicacion de una pipe... este es el codigo.. mas o menos.. > > > > > > > > def play(self,opciones ,target): > > > > mpc = "mplayer -slave -quiet \"" + target + "\" 2>/dev/null" > > > > self.pin, self.pout = os.popen2(mpc) #open pipe > > > > self.startEofHandler() > > > > > > > > def startEofHandler(self): > > > > self.eofHandler = gobject.io_add_watch(self.pout, > > gobject.IO_HUP > > > , > > > > self.test) > > > > > > > > > > > > def test(self,source,condition): > > > > print 'Something happend!!' > > > > print source > > > > > > > > el proceso se ejecuta bien, se supone que cuando termina de > reproducir > > > > cierto archivo, el metodo gobject.io_add_watch deberia gatillar al > > > metodo > > > > test, pero no funciona :S alguna idea? > > > > > > > > Saludos. > > > > _______________________________________________ > > > > Python-es mailing list > > > > Python-es en aditel.org > > > > http://listas.aditel.org/listinfo/python-es > > > > > > > _______________________________________________ > > > Python-es mailing list > > > Python-es en aditel.org > > > http://listas.aditel.org/listinfo/python-es > > > > > _______________________________________________ > > Python-es mailing list > > Python-es en aditel.org > > http://listas.aditel.org/listinfo/python-es > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From minibota en gmail.com Sat Sep 22 06:22:16 2007 From: minibota en gmail.com (=?ISO-8859-1?Q?Pavel_Mu=F1oz?=) Date: Fri, 21 Sep 2007 22:22:16 -0600 Subject: Gobject In-Reply-To: <984ad6a0709212109u375c9876w9bdd3f4b21602dba@mail.gmail.com> References: <984ad6a0709211936g2bbca20br960ae7bc63b69405@mail.gmail.com> <118999020709212023i305ea269gd4d80ff81fc0022@mail.gmail.com> <984ad6a0709212025g71f76feg897f7df8990e5be4@mail.gmail.com> <118999020709212039jde59b65u6b6dafd2d4235867@mail.gmail.com> <984ad6a0709212109u375c9876w9bdd3f4b21602dba@mail.gmail.com> Message-ID: <118999020709212122j64449972sef8a80863547c4a8@mail.gmail.com> voy a ver que puedo encontrar en nuestro amigo google El día 21/09/07, Eduardo Matus escribió: > > o si sabes de alguna otra forma de determinar cuando se termina de > reproducir un archivo.. tambien sirve > > Saludos. > > On 9/21/07, Pavel Muñoz wrote: > > > > def startEofHandler(self): > > self.eofHandler = gobject.io_add_watch(self.pout, gobject.IO_HUP, > > self.test) > > print 'EOFHandler Init' > > > > > > def test(self,source,condition): > > print 'Something happend!!' > > print source > > return True > > > > Podés probar asi a ver q pasa? > > > > El día 21/09/07, Eduardo Matus escribió: > > > > > > nop... nada... deberia imprimir "Something happend!!" del metodo > test... > > > > > > > > > On 9/21/07, Pavel Muñoz wrote: > > > > > > > > imprime algun erroR? > > > > > > > > 2007/9/21, Eduardo Matus : > > > > > > > > > > holas, estoy tratando de utlizar gobject para determinar cuando se > > > > termina > > > > > la comunicacion de una pipe... este es el codigo.. mas o menos.. > > > > > > > > > > def play(self,opciones ,target): > > > > > mpc = "mplayer -slave -quiet \"" + target + "\" > 2>/dev/null" > > > > > self.pin, self.pout = os.popen2(mpc) #open pipe > > > > > self.startEofHandler() > > > > > > > > > > def startEofHandler(self): > > > > > self.eofHandler = gobject.io_add_watch(self.pout, > > > gobject.IO_HUP > > > > , > > > > > self.test) > > > > > > > > > > > > > > > def test(self,source,condition): > > > > > print 'Something happend!!' > > > > > print source > > > > > > > > > > el proceso se ejecuta bien, se supone que cuando termina de > > reproducir > > > > > cierto archivo, el metodo gobject.io_add_watch deberia gatillar al > > > > metodo > > > > > test, pero no funciona :S alguna idea? > > > > > > > > > > Saludos. > > > > > _______________________________________________ > > > > > Python-es mailing list > > > > > Python-es en aditel.org > > > > > http://listas.aditel.org/listinfo/python-es > > > > > > > > > _______________________________________________ > > > > Python-es mailing list > > > > Python-es en aditel.org > > > > http://listas.aditel.org/listinfo/python-es > > > > > > > _______________________________________________ > > > Python-es mailing list > > > Python-es en aditel.org > > > http://listas.aditel.org/listinfo/python-es > > > > > _______________________________________________ > > Python-es mailing list > > Python-es en aditel.org > > http://listas.aditel.org/listinfo/python-es > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From pachi en rvburke.com Sat Sep 22 11:13:03 2007 From: pachi en rvburke.com (Rafael Villar Burke) Date: Sat, 22 Sep 2007 11:13:03 +0200 Subject: Gobject In-Reply-To: <984ad6a0709211936g2bbca20br960ae7bc63b69405@mail.gmail.com> References: <984ad6a0709211936g2bbca20br960ae7bc63b69405@mail.gmail.com> Message-ID: <46F4DC9F.6070108@rvburke.com> Eduardo Matus wrote: > holas, estoy tratando de utlizar gobject para determinar cuando se termina > la comunicacion de una pipe... este es el codigo.. mas o menos.. > > def play(self,opciones ,target): > mpc = "mplayer -slave -quiet \"" + target + "\" 2>/dev/null" > self.pin, self.pout = os.popen2(mpc) #open pipe > self.startEofHandler() > > def startEofHandler(self): > self.eofHandler = gobject.io_add_watch(self.pout, gobject.IO_HUP, > self.test) > > > def test(self,source,condition): > print 'Something happend!!' > print source > > el proceso se ejecuta bien, se supone que cuando termina de reproducir > cierto archivo, el metodo gobject.io_add_watch deberia gatillar al metodo > test, pero no funciona :S alguna idea? > ¿Inicias el bucle de eventos de glib? Tendrías que hacerlo como último paso, y es como poner el reloj en marcha, inciando la emisión de eventos. Se puede hacer así: loop = gobject.Mainloop() loop.run() para el caso de una aplicación 'sólo de gobject' o, más habitualmente, y usando gtk: gtk.main() Saludos, Rafael Villar Burke From arnau en ehas.org Sat Sep 22 16:09:30 2007 From: arnau en ehas.org (Arnau Sanchez) Date: Sat, 22 Sep 2007 16:09:30 +0200 Subject: Gobject In-Reply-To: <984ad6a0709211936g2bbca20br960ae7bc63b69405@mail.gmail.com> References: <984ad6a0709211936g2bbca20br960ae7bc63b69405@mail.gmail.com> Message-ID: <46F5221A.1030404@ehas.org> Eduardo Matus escribió: > def play(self,opciones ,target): > mpc = "mplayer -slave -quiet \"" + target + "\" 2>/dev/null" > self.pin, self.pout = os.popen2(mpc) #open pipe > self.startEofHandler() > > def startEofHandler(self): > self.eofHandler = gobject.io_add_watch(self.pout, gobject.IO_HUP, > self.test) > > > def test(self,source,condition): > print 'Something happend!!' > print source > > el proceso se ejecuta bien, se supone que cuando termina de reproducir > cierto archivo, el metodo gobject.io_add_watch deberia gatillar al metodo > test, pero no funciona :S alguna idea? Lo malo del código con clases es que no podemos probarlo así sin más. Siempre es mejor enviar algo que corra. En cuanto a popen2: existen os.system, os.spawn, os.popen, os.popen2, popen2.Popen2, popen2.Popen3, popen2.Popen4, y más que me dejo, pero desde python 2.4 se recomienda encarecidamente usar sólo subprocess. Este módulo es capaz de hacer lo mismo que todos los anteriores y aún más. Como dice Rafael, es de imaginar que en algún punto de tu programa llamas al bucle de eventos. ¿Forma parte esto de una aplicación gtk? A mi esto me funciona: ------- #!/usr/bin/python import subprocess import gobject def on_popen_hup(source, condition, popen): retcode = popen.wait() print "retcode:", retcode return False def background_command(command): popen = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.STDOUT) gobject.io_add_watch(popen.stdout, gobject.IO_HUP, on_popen_hup, popen) command = ["mplayer", "-slave", "-quiet", "goodfellas.avi"] background_command(command) gobject.MainLoop().run() # o gtk.main() ------ Una pregunta, ¿estás realmente usando la salida de mplayer o sólo es para ver cuándo acaba? si nadie lee del descriptor de salida, toda esa información queda en memoria y puede crecer sin control. Quizá no sea crítico en este caso (mplayer no escribe mucho), pero aún así... Para esto último tienes dos opciones, a) decirle a io_add_watch que también vas a leer datos (y los lees en el manejador) o b) mandar la salida a /dev/null (en la llamada a subprocess) y en vez de utilizar io_add_watch, poner un manejador para capturar la señal SIGCHLD. arnau From ematus en gmail.com Sat Sep 22 20:01:20 2007 From: ematus en gmail.com (Eduardo Matus) Date: Sat, 22 Sep 2007 14:01:20 -0400 Subject: Gobject In-Reply-To: <46F4DC9F.6070108@rvburke.com> References: <984ad6a0709211936g2bbca20br960ae7bc63b69405@mail.gmail.com> <46F4DC9F.6070108@rvburke.com> Message-ID: <984ad6a0709221101p497efa6fs9e04065480d0c4e2@mail.gmail.com> hola, gracias por respoder... tu dices algo asi? def play(self,opciones ,target): mpc = "mplayer -slave -quiet \"" + target + "\" 2>/dev/null" self.pin, self.pout = os.popen2(mpc) #open pipe self.loop = gobject.Mainloop() self.startEofHandler() self.loop.run() def startEofHandler(self): self.eofHandler = gobject.io_add_watch(self.pout, gobject.IO_HUP, self.test) def test(self,source,condition): print 'Something happend!!' print source Saludos. On 9/22/07, Rafael Villar Burke wrote: > > Eduardo Matus wrote: > > holas, estoy tratando de utlizar gobject para determinar cuando se > termina > > la comunicacion de una pipe... este es el codigo.. mas o menos.. > > > > def play(self,opciones ,target): > > mpc = "mplayer -slave -quiet \"" + target + "\" 2>/dev/null" > > self.pin, self.pout = os.popen2(mpc) #open pipe > > self.startEofHandler() > > > > def startEofHandler(self): > > self.eofHandler = gobject.io_add_watch(self.pout, gobject.IO_HUP > , > > self.test) > > > > > > def test(self,source,condition): > > print 'Something happend!!' > > print source > > > > el proceso se ejecuta bien, se supone que cuando termina de reproducir > > cierto archivo, el metodo gobject.io_add_watch deberia gatillar al > metodo > > test, pero no funciona :S alguna idea? > > > ¿Inicias el bucle de eventos de glib? Tendrías que hacerlo como último > paso, y es como poner el reloj en marcha, inciando la emisión de > eventos. Se puede hacer así: > > loop = gobject.Mainloop() > loop.run() > > para el caso de una aplicación 'sólo de gobject' o, más habitualmente, y > usando gtk: > > gtk.main() > > Saludos, > > Rafael Villar Burke > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From rolandojtorres en gmail.com Sun Sep 23 02:02:36 2007 From: rolandojtorres en gmail.com (=?UTF-8?Q?Rolando_Jos=C3=A9_Torres_S=C3=A1nchez?=) Date: Sat, 22 Sep 2007 19:02:36 -0500 Subject: ventana Tk que no se cierra In-Reply-To: <003301c7fc27$152ad080$7748ce82@upcont.es> References: <004f01c7fb8a$d179fd80$7748ce82@upcont.es> <003301c7fc27$152ad080$7748ce82@upcont.es> Message-ID: <6a39a1d0709221702t2c4c7253n99d51b5e1dcdce12@mail.gmail.com> usa un toplevel para la ventana de configuracion, y un procedimiento para guardar los valores y luego un destroy .toplevel El día 21/09/07, Alezeia González escribió: > > > Gracias Gabriel! > > > > He probado a quitar el mainloop() y la ventana se cierra sola. El problema > es que cuando vuelvo a ejecutar el programa en Python sin cerrar y volver > a > abrir el PSS/E, aparece la ventana sin los valores por defecto que le meto > por fichero. Al introducir los valores nuevos, no me los actualiza y > ejecuta > el caso anterior. > > > > Lo que necesito es que, al pulsar aceptar, se actualicen los valores y se > cierre la ventana, y que, al volver a ejecutar, se actualicen los valores > y > así no tener que estar abriendo y cerrando PSS/E continuamente. > > > > He probado con varias llamadas a funciones de Tk: > > * w.mainloop()--> hay que cerrarlo a mano > > * w.update() --> se cuelga la ventana > > * w.withdraw() --> se oculta la ventana y no veo manera de > cerrarla > > * w.show()--> he probado la combinación del anterior con éste, > pero > hace lo mismo que sin el w.show() > > * w.quit()--> se cuelga la ventana Tk y al ejecutar otra vez no > actualiza los valores > > > > Espero encontrar la función adecuada. ¿Alguien la conoce o conoce alguna > otra forma de hacer el diseño de la ventana? > > > > Gracias. > > > > > > > > > > -----Mensaje original----- > De: python-es-bounces en aditel.org [mailto:python-es-bounces en aditel.org] En > nombre de Gabriel Genellina > Enviado el: viernes, 21 de septiembre de 2007 4:08 > Para: python-es en aditel.org > Asunto: [Python-es] Re: ventana Tk que no se cierra > > > > En Thu, 20 Sep 2007 10:33:24 -0300, Alezeia González > > escribi?: > > > > > Tengo un problema. Estoy haciendo una ventana para un programa en Python > > > que > > > se ejecuta desde PSS/E. La ventana sólo sirve para introducir unas > > > opciones > > > de ejecución. Una vez que se introducen, para que el programa siga > > > ejecutando, tengo que cerrar la ventana a mano pulsando "X". Necesito > > > que la > > > ventana desaparezca al pulsar aceptar y que siga ejecutando. > > > > > > > > > > > > root = Tk() > > > w = opciones(root,'Configuracion nMenos1') > > > w.mainloop() > > > ierr = psspy.progress_output(1, 'SALIDA STANDARD',(1,1)) > > > print ' y aquí ya seguiría...' > > > > Creo que todo se arregla quitando la llamada a w.mainloop() > > tkSimpleDialog hace todo lo necesario y tiene su propio loop de mensajes. > > > > > > > > > -- > > Gabriel Genellina > > > > > > -- > La presente comunicación tiene carácter confidencial y es para el > exclusivo uso del destinatario indicado en la misma. Si Ud. no es el > destinatario indicado, le informamos que cualquier forma de distribución, > reproducción o uso de esta comunicación y/o de la información contenida en > la misma están estrictamente prohibidos por la ley. Si Ud. ha recibido esta > comunicación por error, por favor, notifíquelo inmediatamente al remitente > contestando a este mensaje y proceda a continuación a destruirlo. Gracias > por su colaboración. > > This communication contains confidential information. It is for the > exclusive use of the intended addressee. If you are not the intended > addressee, please note that any form of distribution, copying or use of this > communication or the information in it is strictly prohibited by law. If you > have received this communication in error, please immediately notify the > sender by reply e-mail and destroy this message. Thank you for your > cooperation. > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > -- Rolando José Torres Sánchez TCL/TK inside Python MSN:rolandojtorres en hotmail.com ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From gagsl-py2 en yahoo.com.ar Sun Sep 23 21:57:29 2007 From: gagsl-py2 en yahoo.com.ar (Gabriel Genellina) Date: Sun, 23 Sep 2007 16:57:29 -0300 Subject: chorrada con carga de modulos References: <90255a70709210336r6c6606baq2630b4957f7a5354@mail.gmail.com> Message-ID: En Fri, 21 Sep 2007 07:36:47 -0300, Cesar Ortiz escribi?: > Si tengo un modulo apps.py que tiene: > > > import debug > import apps > > def programBegin(): > debug.init() Oops, apps se importa a sí mismo? Un poco raro... pero igual, no tiene nada que ver con el problema. > Y si tengo un modulo debug.py que tiene: > > DEBUG = 0 > > def init(): > global DEBUG > DEBUG=1 > > if ( __name__ == "__main__") : > import apps > apps.programBegin() > print DEBUG > ¿Porque al ejecutar como comando el modulo debug.py, me imprime 0? Mi no > entender... La clave está en que al ejecutar debug.py directamente, se crean DOS copias del MISMO modulo. 1) El script que estas ejecutando (debug.py) se carga como modulo '__main__' (es decir, en sys.modules se inserta un nuevo item con clave='__main__' y valor=el modulo debug.py). 2) Cuando apps ejecuta "import debug", Python se fija si el modulo ya esta importado (mirando las claves de sys.modules) y como no lo encuentra, lo lee de disco y lo inserta con clave='debug' O sea que debug.py fue importado DOS veces. Cuando programBegin llama a debug.init, lo que se modifica es el valor de la variable DEBUG que esta en el modulo llamado "debug". Cuando haces el print estando dentro del script principal (que coincide con debug.py) lo que estas imprimiendo es la variable DEBUG que esta en el modulo llamado "__main__". De paso, esta es justamente la razon por la que funciona la condicion: if __name__ == "__main__": que más de uno escribe sin tener ni idea de porqué se hace así. -- Gabriel Genellina ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From gagsl-py2 en yahoo.com.ar Sun Sep 23 22:11:26 2007 From: gagsl-py2 en yahoo.com.ar (Gabriel Genellina) Date: Sun, 23 Sep 2007 17:11:26 -0300 Subject: Novato Funciones de "C" References: <1190354939.2625.2.camel@alex-desktop> <46F3CB1A.4030003@ehas.org> Message-ID: En Fri, 21 Sep 2007 10:46:02 -0300, Arnau Sanchez escribi?: > Alex Ricardo Rincon Silva escribió: > > No iría mal que hubieras especificado qué sistema operativo usas, porque > ambas funciones son dependientes del SO. > >> -limpio pantalla "clrscr" > > Bien facilita para google: "python clear screen". Resultado: > > UNIX: os.system("clean") > Windows: :-O El equivalente sería os.system("cls"). >> -eperp por una tecla o pulsacion del teclado "getch" > > Igual: "python getch" > > http://snippets.dzone.com/posts/show/915 > http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/134892 > > Por otra parte, no te recomendaría hacer programas que lean por > caracteres. raw_input(), que lee por líneas, *debería* ser suficiente. Yo diría lo mismo. getch() puede ser adecuado para una interfaz sencilla, por ahi hasta usando menúes, pero cualquier cosa mas complicada convendria hacerla con ncurses o console o urwid o la libreria que fuera para interfaces de texto. -- Gabriel Genellina ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From cesar en ortiz.name Sun Sep 23 22:40:06 2007 From: cesar en ortiz.name (Cesar Ortiz) Date: Sun, 23 Sep 2007 22:40:06 +0200 Subject: chorrada con carga de modulos In-Reply-To: <90255a70709231333o4c0868c5m90aa93bcee93adbc@mail.gmail.com> References: <90255a70709210336r6c6606baq2630b4957f7a5354@mail.gmail.com> <90255a70709231333o4c0868c5m90aa93bcee93adbc@mail.gmail.com> Message-ID: <90255a70709231340t19f479d3p76f1d5fc37445cc3@mail.gmail.com> Muchas gracias!!!, Ya puedo salir de la lista de los que no sabían lo del "__main__" ;) On 9/23/07, Gabriel Genellina < gagsl-py2 en yahoo.com.ar> wrote: > > > En Fri, 21 Sep 2007 07:36:47 -0300, Cesar Ortiz < cesar en ortiz.name> > > escribi?: > > > > > Si tengo un modulo apps.py que tiene: > > > > > > > > > import debug > > > import apps > > > > > > def programBegin(): > > > debug.init() > > > > Oops, apps se importa a sí mismo? Un poco raro... pero igual, no tiene > > nada que ver con el problema. > > > > > Y si tengo un modulo debug.py que tiene: > > > > > > DEBUG = 0 > > > > > > def init(): > > > global DEBUG > > > DEBUG=1 > > > > > > if ( __name__ == "__main__") : > > > import apps > > > apps.programBegin() > > > print DEBUG > > > > > ¿Porque al ejecutar como comando el modulo debug.py, me imprime 0? Mi > > no > > > entender... > > > > La clave está en que al ejecutar debug.py directamente, se crean DOS > > copias del MISMO modulo. > > > > 1) El script que estas ejecutando (debug.py) se carga como modulo > > '__main__' (es decir, en sys.modules se inserta un nuevo item con > > clave='__main__' y valor=el modulo debug.py). > > > > 2) Cuando apps ejecuta "import debug", Python se fija si el modulo ya > > esta > > importado (mirando las claves de sys.modules) y como no lo encuentra, lo > > lee de disco y lo inserta con clave='debug' > > > > O sea que debug.py fue importado DOS veces. Cuando programBegin llama a > > debug.init , lo que se modifica es el valor de la variable DEBUG que > > esta > > en el modulo llamado "debug". Cuando haces el print estando dentro del > > script principal (que coincide con debug.py) lo que estas imprimiendo es > > > > la variable DEBUG que esta en el modulo llamado "__main__". > > > > De paso, esta es justamente la razon por la que funciona la condicion: > > > > if __name__ == "__main__": > > > > que más de uno escribe sin tener ni idea de porqué se hace así. > > > > -- > > Gabriel Genellina > > > > > > _______________________________________________ > > Python-es mailing list > > Python-es en aditel.org > > http://listas.aditel.org/listinfo/python-es > > > > > ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From rapto en arrakis.es Mon Sep 24 13:47:52 2007 From: rapto en arrakis.es (Marcos =?ISO-8859-1?Q?S=E1nchez?= Provencio) Date: Mon, 24 Sep 2007 13:47:52 +0200 Subject: Codigo Barra - Reportlab In-Reply-To: <771741b20709210905k12ce085cv6d28359d4d974611@mail.gmail.com> References: <1190382906.5670.30.camel@savin> <771741b20709210905k12ce085cv6d28359d4d974611@mail.gmail.com> Message-ID: <1190634472.5665.20.camel@savin> Bueno, yo sólo quería darle pistas de por qué no había recibido respuestas tras plantear la misma pregunta varias veces. Ariel, ¿lograste solucionar el problema? ¿Ya he conseguido que te pases a Perl :-(? El vie, 21-09-2007 a las 11:05 -0500, Mario Lacunza escribió: > El día 21/09/07, Marcos Sánchez Provencio escribió: > > > > Lo primero, > > > > Solo para decir q este tipo de respuestas solo malogran la lista, a mi > entender Ariel no solo ha planteado bien su interrogante sino q ha cumplido > con la nettiquete.... > ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From Alezeia.Gonzalez en iit.upcomillas.es Mon Sep 24 14:02:52 2007 From: Alezeia.Gonzalez en iit.upcomillas.es (=?iso-8859-1?Q?Alezeia_Gonz=E1lez?=) Date: Mon, 24 Sep 2007 14:02:52 +0200 Subject: ventana Tk que no se cierra In-Reply-To: <6a39a1d0709221702t2c4c7253n99d51b5e1dcdce12@mail.gmail.com> References: <004f01c7fb8a$d179fd80$7748ce82@upcont.es><003301c7fc27$152ad080$7748ce82@upcont.es> <6a39a1d0709221702t2c4c7253n99d51b5e1dcdce12@mail.gmail.com> Message-ID: <012e01c7fea2$d5a4e8a0$7748ce82@upcont.es> No tengo muy claro dónde tengo que meter el toplevel. Ahora me aparecen muchas más ventanas que hay que cerrar! Reenvío el código por si se os ocurre algo... from Tkinter import * import tkSimpleDialog import string import psspy import os class opciones(tkSimpleDialog.Dialog): def init(self): self.nombre='pepe' self.apellidos='garcía' self.edad=int(9) def body(self,master): self.init() Label(master, text="Nombre:").grid(row=0, column=0, sticky=W) self.n = Entry(master) self.n.insert(0,self.nombre) self.n.grid(row=0, column=1,sticky=E) Label(master, text="Apellidos:").grid(row=1, column=0,sticky=W) self.a = Entry(master) self.a.insert(0,self.apellidos) self.a.grid(row=1, column=1) Label(master, text="Edad:").grid(row=7, column=0,sticky=W) self.e = Entry(master) self.e.insert(0,self.edad) self.e.grid(row=7, column=1) def guardaConf(self): ierr = psspy.progress_output(1, 'SALIDA STANDARD',(1,1)) print ' entra en guardar' self.nombre=self.n.get() self.apellidos=self.a.get() self.edad=self.e.get() print ' termina de guardar' def imprimir(self): ierr = psspy.progress_output(1, 'SALIDA STANDARD',(1,1)) print 'Datos de configuración:' print '- Nombre: %s'%(self.nombre) print '- Apellidos: %s'%(self.apellidos) print '- Edad: %s'%(self.edad) def apply(self): self.guardaConf() self.imprimir() root = Tk() w = opciones(root,'Configuracion nMenos1') w.mainloop() ierr = psspy.progress_output(1, 'SALIDA STANDARD',(1,1)) print ' y aquí ya seguiría...' Gracias. __________________________________________________ Alezeia González García Instituto de Investigación Tecnológica (I.I.T.) Universidad Pontificia Comillas C/Quintana, 21 28008 Madrid (Spain) Teléfono : (34) 91 542 28 00 #4296 Fax : (34) 91 542 31 76 e-mail : alezeia.gonzalez en iit.upcomillas.es __________________________________________________ -----Mensaje original----- De: python-es-bounces en aditel.org [mailto:python-es-bounces en aditel.org] En nombre de Rolando José Torres Sánchez Enviado el: domingo, 23 de septiembre de 2007 2:03 Para: La lista de python en castellano Asunto: Re: [Python-es] Re: ventana Tk que no se cierra usa un toplevel para la ventana de configuracion, y un procedimiento para guardar los valores y luego un destroy .toplevel El día 21/09/07, Alezeia González escribió: > > > Gracias Gabriel! > > > > He probado a quitar el mainloop() y la ventana se cierra sola. El problema > es que cuando vuelvo a ejecutar el programa en Python sin cerrar y volver > a > abrir el PSS/E, aparece la ventana sin los valores por defecto que le meto > por fichero. Al introducir los valores nuevos, no me los actualiza y > ejecuta > el caso anterior. > > > > Lo que necesito es que, al pulsar aceptar, se actualicen los valores y se > cierre la ventana, y que, al volver a ejecutar, se actualicen los valores > y > así no tener que estar abriendo y cerrando PSS/E continuamente. > > > > He probado con varias llamadas a funciones de Tk: > > * w.mainloop()--> hay que cerrarlo a mano > > * w.update() --> se cuelga la ventana > > * w.withdraw() --> se oculta la ventana y no veo manera de > cerrarla > > * w.show()--> he probado la combinación del anterior con éste, > pero > hace lo mismo que sin el w.show() > > * w.quit()--> se cuelga la ventana Tk y al ejecutar otra vez no > actualiza los valores > > > > Espero encontrar la función adecuada. ¿Alguien la conoce o conoce alguna > otra forma de hacer el diseño de la ventana? > > > > Gracias. > > > > > > > > > > -----Mensaje original----- > De: python-es-bounces en aditel.org [mailto:python-es-bounces en aditel.org] En > nombre de Gabriel Genellina > Enviado el: viernes, 21 de septiembre de 2007 4:08 > Para: python-es en aditel.org > Asunto: [Python-es] Re: ventana Tk que no se cierra > > > > En Thu, 20 Sep 2007 10:33:24 -0300, Alezeia González > > escribi?: > > > > > Tengo un problema. Estoy haciendo una ventana para un programa en Python > > > que > > > se ejecuta desde PSS/E. La ventana sólo sirve para introducir unas > > > opciones > > > de ejecución. Una vez que se introducen, para que el programa siga > > > ejecutando, tengo que cerrar la ventana a mano pulsando "X". Necesito > > > que la > > > ventana desaparezca al pulsar aceptar y que siga ejecutando. > > > > > > > > > > > > root = Tk() > > > w = opciones(root,'Configuracion nMenos1') > > > w.mainloop() > > > ierr = psspy.progress_output(1, 'SALIDA STANDARD',(1,1)) > > > print ' y aquí ya seguiría...' > > > > Creo que todo se arregla quitando la llamada a w.mainloop() > > tkSimpleDialog hace todo lo necesario y tiene su propio loop de mensajes. > > > > > > > > > -- > > Gabriel Genellina > > > > > > -- > La presente comunicación tiene carácter confidencial y es para el > exclusivo uso del destinatario indicado en la misma. Si Ud. no es el > destinatario indicado, le informamos que cualquier forma de distribución, > reproducción o uso de esta comunicación y/o de la información contenida en > la misma están estrictamente prohibidos por la ley. Si Ud. ha recibido esta > comunicación por error, por favor, notifíquelo inmediatamente al remitente > contestando a este mensaje y proceda a continuación a destruirlo. Gracias > por su colaboración. > > This communication contains confidential information. It is for the > exclusive use of the intended addressee. If you are not the intended > addressee, please note that any form of distribution, copying or use of this > communication or the information in it is strictly prohibited by law. If you > have received this communication in error, please immediately notify the > sender by reply e-mail and destroy this message. Thank you for your > cooperation. > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > -- Rolando José Torres Sánchez TCL/TK inside Python MSN:rolandojtorres en hotmail.com -- La presente comunicación tiene carácter confidencial y es para el exclusivo uso del destinatario indicado en la misma. Si Ud. no es el destinatario indicado, le informamos que cualquier forma de distribución, reproducción o uso de esta comunicación y/o de la información contenida en la misma están estrictamente prohibidos por la ley. Si Ud. ha recibido esta comunicación por error, por favor, notifíquelo inmediatamente al remitente contestando a este mensaje y proceda a continuación a destruirlo. Gracias por su colaboración. This communication contains confidential information. It is for the exclusive use of the intended addressee. If you are not the intended addressee, please note that any form of distribution, copying or use of this communication or the information in it is strictly prohibited by law. If you have received this communication in error, please immediately notify the sender by reply e-mail and destroy this message. Thank you for your cooperation. From nmelgarejodiaz en gmail.com Mon Sep 24 16:22:41 2007 From: nmelgarejodiaz en gmail.com (Natali Melgarejo Diaz) Date: Mon, 24 Sep 2007 16:22:41 +0200 Subject: Interfaz grafica Message-ID: Hola a todos! Tengo un problema para realizar una intefaz grafica. Necesito mostrar graficamente unos datos sobre un formulario o dialogo (con menus, opciones, botones, text labels, etc ) usando el modulo pyqt4, ademas uso pylab. He llegado ha realizar el formulario con el qt designer , entender el concepto de slots y signals tb, conectar los eventos de los botones con las funciones, etc, pero no se como hacer para que las graficas que genero con pylab se queden dentro del mismo formulario desde donde llamo la funcion (haciendo click al boton correspondiente). Si alguien tiene alguna idea, le agradeceria su sugerencia!! :) Saludos ;)) ********Natali******** http://natmiel.hi5.com/ From sendero.luminoso en gmail.com Mon Sep 24 18:08:15 2007 From: sendero.luminoso en gmail.com (ivan obeso) Date: Mon, 24 Sep 2007 18:08:15 +0200 Subject: Proyecto de mapa geografico de climas Message-ID: <38f547470709240908j5307784aud7a1312fe26df1aa@mail.gmail.com> Hola buenas, antes de nada decir que es mi primer mensaje a la lista, aunque llevo un par de meses leyendoos. Os cuento. Quiero desarrollar un proyecto en python que sea, basicamente, un mapa del mundo en el que segun el usuario vaya pasando por zonas se muestre una foto del "clima", me explico: si el usuario pasa el puntero por Africa saldra una fotografia de una sabana y asi. Habia pensado en pygame como libreria para desarrollar la idea (nunca lo he usado antes) ya que actualmente lo unico que conozco para crear interfaces es tkinter. ¿Que pensais vosotros?, estoy abierto a cualquier comentario o idea que podais darme, o cualquier referencia sera bien recibida :) muchas gracias de antemano. From jgomezdans en gmail.com Mon Sep 24 18:15:30 2007 From: jgomezdans en gmail.com (Jose Gomez-Dans) Date: Mon, 24 Sep 2007 18:15:30 +0200 Subject: Proyecto de mapa geografico de climas In-Reply-To: <38f547470709240908j5307784aud7a1312fe26df1aa@mail.gmail.com> References: <38f547470709240908j5307784aud7a1312fe26df1aa@mail.gmail.com> Message-ID: <91d218430709240915ja29e2eu44a5ff6caba82e6@mail.gmail.com> Hola, On 9/24/07, ivan obeso wrote: > Hola buenas, antes de nada decir que es mi primer mensaje a la lista, aunque > llevo un par de meses leyendoos. Os cuento. Quiero desarrollar un proyecto > en python que sea, basicamente, un mapa del mundo en el que segun el usuario > vaya pasando por zonas se muestre una foto del "clima", me explico: si el Hombre, para eso está el Google Maps, Mapserver y cosas por el estilo, que lo hacen todo por uno (nosotros preparamos los KML con Python). Si quieres bichear algo de cómo queda (son datos de observación de la Tierra para Andalucía), el primer prototipo (muy cutre aun, qué le vamos a hacer), mira en . Para mayores y más heroicas gestas, hace unos meses ya anuncié una página sobre el tema aquí en la lista . Para una aplicación de escritorio, ¿no te servirían QT o Wx? Jose From francisco.palm en gmail.com Mon Sep 24 18:26:29 2007 From: francisco.palm en gmail.com (Francisco Palm) Date: Mon, 24 Sep 2007 12:26:29 -0400 Subject: Proyecto de mapa geografico de climas In-Reply-To: <91d218430709240915ja29e2eu44a5ff6caba82e6@mail.gmail.com> References: <38f547470709240908j5307784aud7a1312fe26df1aa@mail.gmail.com> <91d218430709240915ja29e2eu44a5ff6caba82e6@mail.gmail.com> Message-ID: Coincido con el amigo José, si se cuenta con conexión a Internet Google Earth para esta tarea es realmente insuperable. Y como bien te han dicho se pueden preparar los archivos KML para el uso que le quieras dar. Si piensas en una aplicación fuera de línea tienes varias opciones: el módulo basemap de Matplotlib (está en el ejemplo que te han dado o acá hay otro http://www.scipy.org/Cookbook/Matplotlib/Maps). O usando la biblioteca Python Cartographic Library http://trac.gispython.org/projects/PCL. Esto lo puedes conectar a Pygame, pero todo depende del nivel de interactividad que quieras tener. Para el diseño de las interfaces gráficas no dejes de considerar Glade+PyGTK que es una solución de una extrema facilidad. Saludos F. Palm El 24/09/07, Jose Gomez-Dans escribió: > Hola, > > On 9/24/07, ivan obeso wrote: > > Hola buenas, antes de nada decir que es mi primer mensaje a la lista, aunque > > llevo un par de meses leyendoos. Os cuento. Quiero desarrollar un proyecto > > en python que sea, basicamente, un mapa del mundo en el que segun el usuario > > vaya pasando por zonas se muestre una foto del "clima", me explico: si el > > Hombre, para eso está el Google Maps, Mapserver y cosas por el estilo, > que lo hacen todo por uno (nosotros preparamos los KML con Python). Si > quieres bichear algo de cómo queda (son datos de observación de la > Tierra para Andalucía), el primer prototipo (muy cutre aun, qué le > vamos a hacer), mira en > . > > Para mayores y más heroicas gestas, hace unos meses ya anuncié una > página sobre el tema aquí en la lista > . > > Para una aplicación de escritorio, ¿no te servirían QT o Wx? > > Jose > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > -- -------------------------------------- fpalm en ula.ve francisco.palm en gmail.com cel: 0414 5109177 tel: 0274 2712106 "Cuando uno es joven, debe ser revolucionario, no sólo rebelarse... ser psicológicamente revolucionario significa no aceptar ningún modelo." K From claudio.quezada.r en gmail.com Mon Sep 24 19:39:12 2007 From: claudio.quezada.r en gmail.com (Claudio A. Quezada R.) Date: Mon, 24 Sep 2007 13:39:12 -0400 Subject: pregunta sobre variables globales In-Reply-To: <771741b20709200943j1f518ee5sb058bbde8ef50ca@mail.gmail.com> References: <000601c7fba3$5726cc70$0101a8c0@portatil> <771741b20709200943j1f518ee5sb058bbde8ef50ca@mail.gmail.com> Message-ID: <737bb1390709241039h777c7ef4j1dd8de98cc439a11@mail.gmail.com> Así es, en un modulo aparte genera cuantas variables quieras, las importas en tu modulo de trabajo y luego las llamas. Está explicado en el faq de python-es http://pythonesfaq.k-rolus.net/ Saludos, Claudio El 20/09/07, Mario Lacunza escribió: > El día 20/09/07, Javi escribió: > > > > hola , os voy a exponer cual es mi duda, me gustaria tener una variable a > > la que pueda acceder desde los diferentes modulos de mi programa y la verdad > > es que no se como hacerlo, lo intento con global pero no me funciona. Uso > > windows y python 2.5, wx y boa. La cuestion es que tengo una > > mdiparentframe como pantalla principal donde se le asigna valores a esa > > variable y despues quiero poder acceder a ella desde las diferentes > > pantallas mdichildframe, pero no se me ocurre. Si alguine pudiera ayudarme > > le estari amuy agradecido.. > > > > Un saludo Javi. > > > > Primero q nada leete bien el manual de Python, aqui no es como en VB. > > Luego es mas facil poner esas "variable globales" dentro de un modulo > independiente como funciones.... > > -- > Saludos / Best regards > > Mario Lacunza > Desarrollador de Sistemas - Webmaster > Desarrollador 2 Estrellas VS2005 > > Email: mlacunza [AT] gmail [DOT] com > Website: mlacunzav[DOT]cogia[DOT]net > Blog: http://mlacunza.blogspot.com/ > Lima - Peru > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > -- Claudio Quezada Romegialli Ingeniero Ambiental (02)7321665 - 81466049 From gagsl-py2 en yahoo.com.ar Mon Sep 24 20:48:27 2007 From: gagsl-py2 en yahoo.com.ar (Gabriel Genellina) Date: Mon, 24 Sep 2007 15:48:27 -0300 Subject: pregunta sobre variables globales References: <000601c7fba3$5726cc70$0101a8c0@portatil> Message-ID: En Thu, 20 Sep 2007 13:28:53 -0300, Javi escribi?: > hola , os voy a exponer cual es mi duda, me gustaria tener una variable > a la que pueda acceder desde los diferentes modulos de mi programa y la > verdad es que no se como hacerlo, lo intento con global pero no me > funciona. Uso windows y python 2.5, wx y boa. Vayamos por partes. Por un lado la cuestion de las globales que veo que no lo tienes claro (leer el tutorial de Python creo que te vendria bien). En Python las variables "globales" son generalmente "globales al modulo". Asi que lo que hay que hacer es importar el modulo que las define. (No le tengas miedo al import, que una vez que el modulo fue importado por primera vez, simplemente devuelve una referencia al mismo modulo ya cargado). Por ejemplo: --- modulo1.py --- mi_variable = 100 def lagarunfa(): print "en modulo1, mi_variable=", mi_variable --- fin modulo1.py --- --- modulo2.py --- import modulo1 def furufaifa(): print "en modulo2, mi_variable=", modulo1.mi_variable --- fin modulo2.py --- --- main.py --- import modulo1, modulo2 print "en main, mi_variable=", modulo1.mi_variable modulo1.lagarunfa() modulo2.furufaifa() print "cambiando a 200" modulo1.mi_variable = 200 print "en main, mi_variable=", modulo1.mi_variable modulo1.lagarunfa() modulo2.furufaifa() --- fin main.py --- Y fijate que no use "global" en ninguna parte - es para otra cosa. > La cuestion es que tengo una mdiparentframe como pantalla principal > donde se le asigna valores a esa variable y despues quiero poder acceder > a ella desde las diferentes pantallas mdichildframe, pero no se me > ocurre. Si alguine pudiera ayudarme le estari amuy agradecido.. Pero en este caso deberias olvidarte de todo lo que dije arriba :) No hay que usar variables globales. Simplemente que sea un atributo de la MDIParentFrame (no del modulo, sino del objeto frame). Todas las MDIChildFrame pueden acceder a ella usando self.GetParent() -- Gabriel Genellina ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From illanesariel en gmail.com Mon Sep 24 23:28:13 2007 From: illanesariel en gmail.com (ariel illanes) Date: Mon, 24 Sep 2007 18:28:13 -0300 Subject: Codigo Barra - Reportlab Message-ID: Hola gente : He echo un pequeño programita en python que me genera el codigo de barra a partir de un diccionario que tengo en la misma aplicacion ejemplos: from reportlab.extensions.barcode import code93 from reportlab.pdfgen.canvas import Canvas from reportlab.platypus import Frame from reportlab.lib.units import mm def run(): _patterns = { '0' : ('AcAaAb', 0), '1' : ('AaAbAc', 1), '2' : ('AaAcAb', 2), '3' : ('AaAdAa', 3), '4' : ('AbAaAc', 4), '5' : ('AbAbAb', 5), '6' : ('AbAcAa', 6), '7' : ('AaAaAd', 7), '8' : ('AcAbAa', 8), '9' : ('AdAaAa', 9), 'A' : ('BaAaAc', 10), 'B' : ('BaAbAb', 11), 'C' : ('BaAcAa', 12), 'D' : ('BbAaAb', 13), 'E' : ('BbAbAa', 14), 'F' : ('BcAaAa', 15), 'G' : ('AaBaAc', 16), 'H' : ('AaBbAb', 17), 'I' : ('AaBcAa', 18), 'J' : ('AbBaAb', 19), 'K' : ('AcBaAa', 20), 'L' : ('AaAaBc', 21), 'M' : ('AaAbBb', 22), 'N' : ('AaAcBa', 23), 'O' : ('AbAaBb', 24), 'P' : ('AcAaBa', 25), 'Q' : ('BaBaAb', 26), 'R' : ('BaBbAa', 27), 'S' : ('BaAaBb', 28), 'T' : ('BaAbBa', 29), 'U' : ('BbAaBa', 30), 'V' : ('BbBaAa', 31), 'W' : ('AaBaBb', 32), 'X' : ('AaBbBa', 33), 'Y' : ('AbBaBa', 34), 'Z' : ('AbCaAa', 35), '-' : ('AbAaCa', 36), '.' : ('CaAaAb', 37), ' ' : ('CaAbAa', 38), '$' : ('CbAaAa', 39), '/' : ('AaBaCa', 40), '+' : ('AaCaBa', 41), '%' : ('BaAaCa', 42), '#' : ('AbAbBa', 43), '!' : ('CaBaAa', 44), '=' : ('CaAaBa', 45), '&' : ('AbBbAa', 46), 'start' : ('AaAaDa', -1), 'stop' : ('AaAaDaA', -2) } #string=_patterns["1"] c = Canvas("barcode.pdf") #st=code93.MultiWidthBarcode(string) code=str(_patterns["2"]) story = [] story.append(code93.Standard93(str(code) f = Frame(10*mm, 10*mm, 190*mm, 277*mm, showBoundary=0) f.addFromList(story, c) c.save() if __name__=='__main__': run() Si prueban y cambian el valor de code=str(_patterns[x]) por algun otro valor del diccionario veran un archivo pdf con distinto codigo de barra. Ahora en el diccionario no veo el 22(la numeracion va de 0 a 9)intente genera de la siguiente forma: code=str(_patterns["2"])+str(_patterns["2"]) pero me da error Alguien me puede decir como seguir para poder generar codigo de barra a partir de un determinado numero que le paso con python. From gagsl-py2 en yahoo.com.ar Tue Sep 25 05:42:09 2007 From: gagsl-py2 en yahoo.com.ar (Gabriel Genellina) Date: Tue, 25 Sep 2007 00:42:09 -0300 Subject: Codigo Barra - Reportlab References: Message-ID: En Mon, 24 Sep 2007 18:28:13 -0300, ariel illanes escribi?: > Hola gente : He echo un pequeño programita en python que me genera el > codigo > de barra a partir de un diccionario que tengo en la misma aplicacion No entiendo para qué el diccionario en TU aplicacion - parece ser el diccionario interno del Code93... > _patterns = { > '0' : ('AcAaAb', 0), '1' : ('AaAbAc', 1), '2' : ('AaAcAb', 2), > '3' : ('AaAdAa', 3), '4' : ('AbAaAc', 4), '5' : ('AbAbAb', 5), > '6' : ('AbAcAa', 6), '7' : ('AaAaAd', 7), '8' : ('AcAbAa', 8), [...] > #string=_patterns["1"] > c = Canvas("barcode.pdf") > #st=code93.MultiWidthBarcode(string) > > code=str(_patterns["2"]) > story = [] > story.append(code93.Standard93(str(code) > > Si prueban y cambian el valor de code=str(_patterns[x]) > por algun otro valor del diccionario veran un archivo pdf con distinto > codigo de barra. El codigo tal como esta escrito tiene errores de sintaxis. Ademas, aun corrigiendolos, yo diria que te va a dar errores al generar el barcode porque Standard93 no acepta ni () ni comas ni... Aún usando Extendend93, va a aparecer un codigo de barras de una string de 13 caracteres: primero un '(', luego un "'", luego una letra A, luego una letra a... Es realmente eso lo que querias? O el codigo correspondiente al digito 2? Porque esto último se obtiene nomás con code93.Standard93("2") > Ahora en el diccionario no veo el 22(la numeracion va de 0 a 9)intente > genera de la siguiente forma: > code=str(_patterns["2"])+str(_patterns["2"]) > pero me da error Ni modo... code93.Standard93("22") o code93.Standard93("El texto y/o numeros que quieras que aparezcan") > Alguien me puede decir como seguir para poder generar codigo de barra a > partir de un determinado numero que le paso con python. Esta dicho ahi arriba. Ahora, luego de tanta confusion que veo que hay, estas seguro de que Code93 es el correcto? Porque si fuera para identificar artículos para la venta, UPC/EAN13 es el que se usa en (casi) todos lados, que yo sepa... -- Gabriel Genellina ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From dmunhiz en gmail.com Tue Sep 25 09:31:26 2007 From: dmunhiz en gmail.com (dmunhiz) Date: Tue, 25 Sep 2007 09:31:26 +0200 Subject: El evento se ejecuta dos veces Message-ID: <46F8B94E.9060706@gmail.com> Hola: Tengo la siguiente cuestión: tengo un botón y a el asociado un evento, al hacer clic sobre el se ejecuta un codigo, el caso es que si al final le pongo event.Skip() el evento se ejecuta dos veces y si lo quito una vez sola. ¿Alguien sabe a que puede ser debido esto? Código: self.btResultados = wx.Button(id=wxID_FRAME1BTRESULTADOS, label=u'Resultados', name=u'btResultados', parent=self, pos=wx.Point(464, 224), size=wx.Size(136, 23), style=0) self.btResultados.Bind(wx.EVT_BUTTON, self.OnBtResultadosButton, id=wxID_FRAME1BTRESULTADOS) def OnBtResultadosButton(self, event): self.txtLog.SetValue(self.txtLog.GetValue() + u"Envía resultados\n") event.Skip() python 2.5 boa constructor wx 2.8 Gracias ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From rolandojtorres en gmail.com Tue Sep 25 11:51:15 2007 From: rolandojtorres en gmail.com (=?UTF-8?Q?Rolando_Jos=C3=A9_Torres_S=C3=A1nchez?=) Date: Tue, 25 Sep 2007 04:51:15 -0500 Subject: ventana Tk que no se cierra In-Reply-To: <012e01c7fea2$d5a4e8a0$7748ce82@upcont.es> References: <004f01c7fb8a$d179fd80$7748ce82@upcont.es> <003301c7fc27$152ad080$7748ce82@upcont.es> <6a39a1d0709221702t2c4c7253n99d51b5e1dcdce12@mail.gmail.com> <012e01c7fea2$d5a4e8a0$7748ce82@upcont.es> Message-ID: <6a39a1d0709250251y50acc236i3494703fcc61e412@mail.gmail.com> Pienso que estas haciendo un cuadro de dialogo que sea un formulario para introducir variables. Desde la ventana principal con un boton "nuevo registro" invocaria la creacion del toplevel. Luego esta nueva ventana podria ser el toplevel con los campos para ser llenados y con tres botones uno limpiar para dejar en blanco los campos, el otro para cancelar y el otro para guardar los valores de los campos. El boton cerrar destruiria el toplevel El boton guardar escribiria la info, o guardaria los datos y destruiria el toplevel. El 24/09/07, Alezeia González escribió: > > > No tengo muy claro dónde tengo que meter el toplevel. Ahora me aparecen > muchas más ventanas que hay que cerrar! > Reenvío el código por si se os ocurre algo... > > from Tkinter import * > import tkSimpleDialog > import string > import psspy > import os > > class opciones(tkSimpleDialog.Dialog): > > def init(self): > self.nombre='pepe' > self.apellidos='garcía' > self.edad=int(9) > > def body(self,master): > self.init() > Label(master, text="Nombre:").grid(row=0, column=0, sticky=W) > self.n = Entry(master) > self.n.insert(0,self.nombre) > self.n.grid(row=0, column=1,sticky=E) > > Label(master, text="Apellidos:").grid(row=1, column=0,sticky=W) > self.a = Entry(master) > self.a.insert(0,self.apellidos) > self.a.grid(row=1, column=1) > > Label(master, text="Edad:").grid(row=7, column=0,sticky=W) > self.e = Entry(master) > self.e.insert(0,self.edad) > self.e.grid(row=7, column=1) > > def guardaConf(self): > ierr = psspy.progress_output(1, 'SALIDA STANDARD',(1,1)) > print ' entra en guardar' > self.nombre=self.n.get() > self.apellidos=self.a.get() > self.edad=self.e.get() > print ' termina de guardar' > > > def imprimir(self): > ierr = psspy.progress_output(1, 'SALIDA STANDARD',(1,1)) > print 'Datos de configuración:' > print '- Nombre: %s'%(self.nombre) > print '- Apellidos: %s'%(self.apellidos) > print '- Edad: %s'%(self.edad) > > def apply(self): > self.guardaConf() > self.imprimir() > > > root = Tk() > w = opciones(root,'Configuracion nMenos1') > w.mainloop() > ierr = psspy.progress_output(1, 'SALIDA STANDARD',(1,1)) > print ' y aquí ya seguiría...' > > Gracias. > __________________________________________________ > > Alezeia González García > Instituto de Investigación Tecnológica (I.I.T.) > Universidad Pontificia Comillas > C/Quintana, 21 > 28008 Madrid (Spain) > Teléfono : (34) 91 542 28 00 #4296 > Fax : (34) 91 542 31 76 > e-mail : alezeia.gonzalez en iit.upcomillas.es > __________________________________________________ > > -----Mensaje original----- > De: python-es-bounces en aditel.org [mailto:python-es-bounces en aditel.org] En > nombre de Rolando José Torres Sánchez > Enviado el: domingo, 23 de septiembre de 2007 2:03 > Para: La lista de python en castellano > Asunto: Re: [Python-es] Re: ventana Tk que no se cierra > > usa un toplevel para la ventana de configuracion, y un procedimiento para > guardar los valores y luego un destroy .toplevel > > El día 21/09/07, Alezeia González > escribió: > > > > > > Gracias Gabriel! > > > > > > > > He probado a quitar el mainloop() y la ventana se cierra sola. El problema > > es que cuando vuelvo a ejecutar el programa en Python sin cerrar y volver > > a > > abrir el PSS/E, aparece la ventana sin los valores por defecto que le meto > > por fichero. Al introducir los valores nuevos, no me los actualiza y > > ejecuta > > el caso anterior. > > > > > > > > Lo que necesito es que, al pulsar aceptar, se actualicen los valores y se > > cierre la ventana, y que, al volver a ejecutar, se actualicen los valores > > y > > así no tener que estar abriendo y cerrando PSS/E continuamente. > > > > > > > > He probado con varias llamadas a funciones de Tk: > > > > * w.mainloop()--> hay que cerrarlo a mano > > > > * w.update() --> se cuelga la ventana > > > > * w.withdraw() --> se oculta la ventana y no veo manera de > > cerrarla > > > > * w.show()--> he probado la combinación del anterior con éste, > > pero > > hace lo mismo que sin el w.show() > > > > * w.quit()--> se cuelga la ventana Tk y al ejecutar otra vez no > > actualiza los valores > > > > > > > > Espero encontrar la función adecuada. ¿Alguien la conoce o conoce alguna > > otra forma de hacer el diseño de la ventana? > > > > > > > > Gracias. > > > > > > > > > > > > > > > > > > > > -----Mensaje original----- > > De: python-es-bounces en aditel.org [mailto:python-es-bounces en aditel.org] En > > nombre de Gabriel Genellina > > Enviado el: viernes, 21 de septiembre de 2007 4:08 > > Para: python-es en aditel.org > > Asunto: [Python-es] Re: ventana Tk que no se cierra > > > > > > > > En Thu, 20 Sep 2007 10:33:24 -0300, Alezeia González > > > > escribi?: > > > > > > > > > Tengo un problema. Estoy haciendo una ventana para un programa en Python > > > > > que > > > > > se ejecuta desde PSS/E. La ventana sólo sirve para introducir unas > > > > > opciones > > > > > de ejecución. Una vez que se introducen, para que el programa siga > > > > > ejecutando, tengo que cerrar la ventana a mano pulsando "X". Necesito > > > > > que la > > > > > ventana desaparezca al pulsar aceptar y que siga ejecutando. > > > > > > > > > > > > > > > > > > > > root = Tk() > > > > > w = opciones(root,'Configuracion nMenos1') > > > > > w.mainloop() > > > > > ierr = psspy.progress_output(1, 'SALIDA STANDARD',(1,1)) > > > > > print ' y aquí ya seguiría...' > > > > > > > > Creo que todo se arregla quitando la llamada a w.mainloop() > > > > tkSimpleDialog hace todo lo necesario y tiene su propio loop de mensajes. > > > > > > > > > > > > > > > > > > -- > > > > Gabriel Genellina > > > > > > > > > > > > -- > > La presente comunicación tiene carácter confidencial y es para el > > exclusivo uso del destinatario indicado en la misma. Si Ud. no es el > > destinatario indicado, le informamos que cualquier forma de distribución, > > reproducción o uso de esta comunicación y/o de la información contenida en > > la misma están estrictamente prohibidos por la ley. Si Ud. ha recibido > esta > > comunicación por error, por favor, notifíquelo inmediatamente al remitente > > contestando a este mensaje y proceda a continuación a destruirlo. Gracias > > por su colaboración. > > > > This communication contains confidential information. It is for the > > exclusive use of the intended addressee. If you are not the intended > > addressee, please note that any form of distribution, copying or use of > this > > communication or the information in it is strictly prohibited by law. If > you > > have received this communication in error, please immediately notify the > > sender by reply e-mail and destroy this message. Thank you for your > > cooperation. > > _______________________________________________ > > Python-es mailing list > > Python-es en aditel.org > > http://listas.aditel.org/listinfo/python-es > > > > > > -- > Rolando José Torres Sánchez > TCL/TK inside Python > MSN:rolandojtorres en hotmail.com > > > -- > La presente comunicación tiene carácter confidencial y es para el exclusivo > uso del destinatario indicado en la misma. Si Ud. no es el destinatario > indicado, le informamos que cualquier forma de distribución, reproducción o > uso de esta comunicación y/o de la información contenida en la misma están > estrictamente prohibidos por la ley. Si Ud. ha recibido esta comunicación > por error, por favor, notifíquelo inmediatamente al remitente contestando a > este mensaje y proceda a continuación a destruirlo. Gracias por su > colaboración. > > This communication contains confidential information. It is for the > exclusive use of the intended addressee. If you are not the intended > addressee, please note that any form of distribution, copying or use of this > communication or the information in it is strictly prohibited by law. If you > have received this communication in error, please immediately notify the > sender by reply e-mail and destroy this message. Thank you for your > cooperation. > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > -- Rolando José Torres Sánchez TCL/TK inside Python MSN:rolandojtorres en hotmail.com ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From rolandojtorres en gmail.com Tue Sep 25 12:00:41 2007 From: rolandojtorres en gmail.com (=?UTF-8?Q?Rolando_Jos=C3=A9_Torres_S=C3=A1nchez?=) Date: Tue, 25 Sep 2007 05:00:41 -0500 Subject: Proyecto de mapa geografico de climas In-Reply-To: References: <38f547470709240908j5307784aud7a1312fe26df1aa@mail.gmail.com> <91d218430709240915ja29e2eu44a5ff6caba82e6@mail.gmail.com> Message-ID: <6a39a1d0709250300j6e99edb4x3604260c6187c8ec@mail.gmail.com> Seria genial hacer un plugins para iexplorer y firefox, que cargue los mapas de google earth, y sobreponga imagenes satelitales actuales del estado del tiempo de weather.com, y que ponga iconos de las predicciones del clima de NOAA. Se que hay un plugins para que las aplicaciones hechas en TCL corran como un flash en iexplorer, firefox, opera y otros, tanto para Windows como para Linux. Pero sobre python tocaria hacerlo con wxpython. La otra solución posible es que python generara mapas VRML o X3D o SVG para que los abra cualquier navegador. El 24/09/07, Francisco Palm escribió: > Coincido con el amigo José, si se cuenta con conexión a Internet > Google Earth para esta tarea es realmente insuperable. Y como bien te > han dicho se pueden preparar los archivos KML para el uso que le > quieras dar. > > Si piensas en una aplicación fuera de línea tienes varias opciones: el > módulo basemap de Matplotlib (está en el ejemplo que te han dado o acá > hay otro http://www.scipy.org/Cookbook/Matplotlib/Maps). O usando la > biblioteca Python Cartographic Library > http://trac.gispython.org/projects/PCL. > > Esto lo puedes conectar a Pygame, pero todo depende del nivel de > interactividad que quieras tener. > > Para el diseño de las interfaces gráficas no dejes de considerar > Glade+PyGTK que es una solución de una extrema facilidad. > > Saludos > > F. Palm > > El 24/09/07, Jose Gomez-Dans escribió: > > Hola, > > > > On 9/24/07, ivan obeso wrote: > > > Hola buenas, antes de nada decir que es mi primer mensaje a la lista, > aunque > > > llevo un par de meses leyendoos. Os cuento. Quiero desarrollar un > proyecto > > > en python que sea, basicamente, un mapa del mundo en el que segun el > usuario > > > vaya pasando por zonas se muestre una foto del "clima", me explico: si > el > > > > Hombre, para eso está el Google Maps, Mapserver y cosas por el estilo, > > que lo hacen todo por uno (nosotros preparamos los KML con Python). Si > > quieres bichear algo de cómo queda (son datos de observación de la > > Tierra para Andalucía), el primer prototipo (muy cutre aun, qué le > > vamos a hacer), mira en > > . > > > > Para mayores y más heroicas gestas, hace unos meses ya anuncié una > > página sobre el tema aquí en la lista > > . > > > > Para una aplicación de escritorio, ¿no te servirían QT o Wx? > > > > Jose > > _______________________________________________ > > Python-es mailing list > > Python-es en aditel.org > > http://listas.aditel.org/listinfo/python-es > > > > > -- > -------------------------------------- > fpalm en ula.ve > francisco.palm en gmail.com > > cel: 0414 5109177 > tel: 0274 2712106 > > "Cuando uno es joven, debe ser revolucionario, no sólo rebelarse... > ser psicológicamente revolucionario significa no aceptar ningún > modelo." > K > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > -- Rolando José Torres Sánchez TCL/TK inside Python MSN:rolandojtorres en hotmail.com ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From listas en soft-com.es Tue Sep 25 13:18:01 2007 From: listas en soft-com.es (=?ISO-8859-15?Q?Oswaldo_Hern=E1ndez?=) Date: Tue, 25 Sep 2007 13:18:01 +0200 Subject: El evento se ejecuta dos veces In-Reply-To: <46F8B94E.9060706@gmail.com> References: <46F8B94E.9060706@gmail.com> Message-ID: <46F8EE69.2080908@soft-com.es> dmunhiz escribió: > Hola: > Tengo la siguiente cuestión: > tengo un botón y a el asociado un evento, al hacer clic sobre el se > ejecuta un codigo, el caso es que si al final le pongo > > event.Skip() > > el evento se ejecuta dos veces y si lo quito una vez sola. > > ¿Alguien sabe a que puede ser debido esto? > > > > Código: > > self.btResultados = wx.Button(id=wxID_FRAME1BTRESULTADOS, > label=u'Resultados', name=u'btResultados', parent=self, > pos=wx.Point(464, 224), size=wx.Size(136, 23), style=0) > self.btResultados.Bind(wx.EVT_BUTTON, self.OnBtResultadosButton, > id=wxID_FRAME1BTRESULTADOS) > > def OnBtResultadosButton(self, event): > self.txtLog.SetValue(self.txtLog.GetValue() + u"Envía resultados\n") > > event.Skip() > > python 2.5 > boa constructor > wx 2.8 Esto me sucedió hace algun tiempo, estas poniendo el boton directamente sobre el frame y el frame no esta preparado para controlar bien eso. *Nunca* coloques controles directamente sobre un frame. Crea un panel y utilizalo como fondo del frame y crea los botones, cajas de texto, etc sobre este panel. Saludos, -- ***************************************** Oswaldo Hernández oswaldo (@) soft-com (.) es ***************************************** ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From dmunhiz en gmail.com Tue Sep 25 13:31:17 2007 From: dmunhiz en gmail.com (dmunhiz) Date: Tue, 25 Sep 2007 13:31:17 +0200 Subject: El evento se ejecuta dos veces In-Reply-To: <46F8EE69.2080908@soft-com.es> References: <46F8B94E.9060706@gmail.com> <46F8EE69.2080908@soft-com.es> Message-ID: <46F8F185.7020203@gmail.com> Gracias por la respuesta. Entonces entiendo que el event.Skip() está correcto. Saludos Oswaldo Hernández escribiu: > dmunhiz escribió: >> Hola: >> Tengo la siguiente cuestión: >> tengo un botón y a el asociado un evento, al hacer clic sobre el se >> ejecuta un codigo, el caso es que si al final le pongo >> >> event.Skip() >> >> el evento se ejecuta dos veces y si lo quito una vez sola. >> >> ¿Alguien sabe a que puede ser debido esto? >> >> >> >> Código: >> >> self.btResultados = wx.Button(id=wxID_FRAME1BTRESULTADOS, >> label=u'Resultados', name=u'btResultados', parent=self, >> pos=wx.Point(464, 224), size=wx.Size(136, 23), style=0) >> self.btResultados.Bind(wx.EVT_BUTTON, self.OnBtResultadosButton, >> id=wxID_FRAME1BTRESULTADOS) >> >> def OnBtResultadosButton(self, event): >> self.txtLog.SetValue(self.txtLog.GetValue() + u"Envía >> resultados\n") >> >> event.Skip() >> >> python 2.5 >> boa constructor >> wx 2.8 > > Esto me sucedió hace algun tiempo, estas poniendo el boton directamente > sobre el frame y el frame no esta preparado para controlar bien eso. > > *Nunca* coloques controles directamente sobre un frame. Crea un panel y > utilizalo como fondo del frame y crea los botones, cajas de texto, etc > sobre este panel. > > Saludos, > > > ------------------------------------------------------------------------ > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From jgomezdans en gmail.com Tue Sep 25 13:35:46 2007 From: jgomezdans en gmail.com (Jose Gomez-Dans) Date: Tue, 25 Sep 2007 13:35:46 +0200 Subject: Proyecto de mapa geografico de climas In-Reply-To: <6a39a1d0709250300j6e99edb4x3604260c6187c8ec@mail.gmail.com> References: <38f547470709240908j5307784aud7a1312fe26df1aa@mail.gmail.com> <91d218430709240915ja29e2eu44a5ff6caba82e6@mail.gmail.com> <6a39a1d0709250300j6e99edb4x3604260c6187c8ec@mail.gmail.com> Message-ID: <91d218430709250435r11209069pc5e44478242970ac@mail.gmail.com> Hola, On 9/25/07, Rolando José Torres Sánchez wrote: > Seria genial hacer un plugins para iexplorer y firefox, que cargue los > mapas de google earth, y sobreponga imagenes satelitales actuales del > estado del tiempo de weather.com, y que ponga iconos de las > predicciones del clima de NOAA. Para eso están los KML, que te permiten poner capas de distintas cosas, iconos.... NO hace falta ninguna extensión, sale con tener el JS activado :) From illanesariel en gmail.com Tue Sep 25 13:47:17 2007 From: illanesariel en gmail.com (ariel illanes) Date: Tue, 25 Sep 2007 08:47:17 -0300 Subject: Codigo Barra - Reportlab Message-ID: Hola gente : He echo un pequeño programita en python que me genera el codigo de barra a partir de un diccionario que tengo en la misma aplicacion ejemplos: from reportlab.extensions.barcode import code93 from reportlab.pdfgen.canvas import Canvas from reportlab.platypus import Frame from reportlab.lib.units import mm def run(): _patterns = { '0' : ('AcAaAb', 0), '1' : ('AaAbAc', 1), '2' : ('AaAcAb', 2), '3' : ('AaAdAa', 3), '4' : ('AbAaAc', 4), '5' : ('AbAbAb', 5), '6' : ('AbAcAa', 6), '7' : ('AaAaAd', 7), '8' : ('AcAbAa', 8), '9' : ('AdAaAa', 9), 'A' : ('BaAaAc', 10), 'B' : ('BaAbAb', 11), 'C' : ('BaAcAa', 12), 'D' : ('BbAaAb', 13), 'E' : ('BbAbAa', 14), 'F' : ('BcAaAa', 15), 'G' : ('AaBaAc', 16), 'H' : ('AaBbAb', 17), 'I' : ('AaBcAa', 18), 'J' : ('AbBaAb', 19), 'K' : ('AcBaAa', 20), 'L' : ('AaAaBc', 21), 'M' : ('AaAbBb', 22), 'N' : ('AaAcBa', 23), 'O' : ('AbAaBb', 24), 'P' : ('AcAaBa', 25), 'Q' : ('BaBaAb', 26), 'R' : ('BaBbAa', 27), 'S' : ('BaAaBb', 28), 'T' : ('BaAbBa', 29), 'U' : ('BbAaBa', 30), 'V' : ('BbBaAa', 31), 'W' : ('AaBaBb', 32), 'X' : ('AaBbBa', 33), 'Y' : ('AbBaBa', 34), 'Z' : ('AbCaAa', 35), '-' : ('AbAaCa', 36), '.' : ('CaAaAb', 37), ' ' : ('CaAbAa', 38), '$' : ('CbAaAa', 39), '/' : ('AaBaCa', 40), '+' : ('AaCaBa', 41), '%' : ('BaAaCa', 42), '#' : ('AbAbBa', 43), '!' : ('CaBaAa', 44), '=' : ('CaAaBa', 45), '&' : ('AbBbAa', 46), 'start' : ('AaAaDa', -1), 'stop' : ('AaAaDaA', -2) } #string=_patterns["1"] c = Canvas("barcode.pdf") #st=code93.MultiWidthBarcode(string) code=str(_patterns["2"]) story = [] story.append(code93.Standard93(str(code) f = Frame(10*mm, 10*mm, 190*mm, 277*mm, showBoundary=0) f.addFromList(story, c) c.save() if __name__=='__main__': run() Si prueban y cambian el valor de code=str(_patterns[x]) por algun otro valor del diccionario veran un archivo pdf con distinto codigo de barra. Ahora en el diccionario no veo el 22(la numeracion va de 0 a 9)intente genera de la siguiente forma: code=str(_patterns["2"])+str(_patterns["2"]) pero me da error Alguien me puede decir como seguir para poder generar codigo de barra a partir de un determinado numero que le paso con python. From rapto en arrakis.es Tue Sep 25 16:03:36 2007 From: rapto en arrakis.es (Marcos =?ISO-8859-1?Q?S=E1nchez?= Provencio) Date: Tue, 25 Sep 2007 16:03:36 +0200 Subject: Codigo Barra - Reportlab In-Reply-To: References: Message-ID: <1190729016.5806.33.camel@savin> ¿Y esto? disclaimer: No tengo ni idea de códigos de barras... from reportlab.pdfgen.canvas import Canvas from reportlab.platypus import Frame from reportlab.lib.units import mm from reportlab.extensions.barcode import code93 def run(): string="22" c = Canvas("barcode.pdf") st=code93.Standard93(string) story=[] story.append(st) f = Frame(10*mm, 10*mm, 190*mm, 277*mm, showBoundary=0) f.addFromList(story, c) c.save() if __name__=='__main__': run() El mar, 25-09-2007 a las 08:47 -0300, ariel illanes escribió: > Hola gente : He echo un pequeño programita en python que me genera el codigo > de barra a partir de un diccionario que tengo en la misma aplicacion > ejemplos: > from reportlab.extensions.barcode import code93 > > from reportlab.pdfgen.canvas import Canvas > from reportlab.platypus import Frame > from reportlab.lib.units import mm > > def run(): > > _patterns = { > '0' : ('AcAaAb', 0), '1' : ('AaAbAc', 1), '2' : ('AaAcAb', 2), > '3' : ('AaAdAa', 3), '4' : ('AbAaAc', 4), '5' : ('AbAbAb', 5), > '6' : ('AbAcAa', 6), '7' : ('AaAaAd', 7), '8' : ('AcAbAa', 8), > '9' : ('AdAaAa', 9), 'A' : ('BaAaAc', 10), 'B' : ('BaAbAb', 11), > 'C' : ('BaAcAa', 12), 'D' : ('BbAaAb', 13), 'E' : ('BbAbAa', 14), > 'F' : ('BcAaAa', 15), 'G' : ('AaBaAc', 16), 'H' : ('AaBbAb', 17), > 'I' : ('AaBcAa', 18), 'J' : ('AbBaAb', 19), 'K' : ('AcBaAa', 20), > 'L' : ('AaAaBc', 21), 'M' : ('AaAbBb', 22), 'N' : ('AaAcBa', 23), > 'O' : ('AbAaBb', 24), 'P' : ('AcAaBa', 25), 'Q' : ('BaBaAb', 26), > 'R' : ('BaBbAa', 27), 'S' : ('BaAaBb', 28), 'T' : ('BaAbBa', 29), > 'U' : ('BbAaBa', 30), 'V' : ('BbBaAa', 31), 'W' : ('AaBaBb', 32), > 'X' : ('AaBbBa', 33), 'Y' : ('AbBaBa', 34), 'Z' : ('AbCaAa', 35), > '-' : ('AbAaCa', 36), '.' : ('CaAaAb', 37), ' ' : ('CaAbAa', 38), > '$' : ('CbAaAa', 39), '/' : ('AaBaCa', 40), '+' : ('AaCaBa', 41), > '%' : ('BaAaCa', 42), '#' : ('AbAbBa', 43), '!' : ('CaBaAa', 44), > '=' : ('CaAaBa', 45), '&' : ('AbBbAa', 46), > 'start' : ('AaAaDa', -1), 'stop' : ('AaAaDaA', -2) > } > #string=_patterns["1"] > c = Canvas("barcode.pdf") > #st=code93.MultiWidthBarcode(string) > > code=str(_patterns["2"]) > story = [] > story.append(code93.Standard93(str(code) > f = Frame(10*mm, 10*mm, 190*mm, 277*mm, showBoundary=0) > f.addFromList(story, c) > > c.save() > > if __name__=='__main__': > run() > > Si prueban y cambian el valor de code=str(_patterns[x]) > por algun otro valor del diccionario veran un archivo pdf con distinto > codigo de barra. > Ahora en el diccionario no veo el 22(la numeracion va de 0 a 9)intente > genera de la siguiente forma: > code=str(_patterns["2"])+str(_patterns["2"]) > pero me da error > Alguien me puede decir como seguir para poder generar codigo de barra a > partir de un determinado numero que le paso con python. > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From dmunhiz en gmail.com Tue Sep 25 16:23:26 2007 From: dmunhiz en gmail.com (dmunhiz) Date: Tue, 25 Sep 2007 16:23:26 +0200 Subject: Codigo Barra - Reportlab In-Reply-To: <1190729016.5806.33.camel@savin> References: <1190729016.5806.33.camel@savin> Message-ID: <46F919DE.5040007@gmail.com> Hola: Yo tampoco "ni idea". Pero como me leo todo lo que se envía a esta lista se me dio por probarlo. El codigo no me funcionaba, he tenido que instalar el reportlab y hacer un cambio en un import (solo esta línea from reportlab.graphics.barcode import code93), al final me quedó así: from reportlab.pdfgen.canvas import Canvas from reportlab.platypus import Frame from reportlab.lib.units import mm from reportlab.graphics.barcode import code93 def run(): string="22" c = Canvas("barcode.pdf") st=code93.Standard93(string) story=[] story.append(st) f = Frame(10*mm, 10*mm, 190*mm, 277*mm, showBoundary=0) f.addFromList(story, c) c.save() if __name__=='__main__': run() Un código de barras si que imprime, ahora, el que exactamente, ni idea. Saludos Marcos Sánchez Provencio escribiu: > ¿Y esto? > > disclaimer: No tengo ni idea de códigos de barras... > > from reportlab.pdfgen.canvas import Canvas > from reportlab.platypus import Frame > from reportlab.lib.units import mm > > from reportlab.extensions.barcode import code93 > > def run(): > string="22" > c = Canvas("barcode.pdf") > st=code93.Standard93(string) > story=[] > story.append(st) > f = Frame(10*mm, 10*mm, 190*mm, 277*mm, showBoundary=0) > f.addFromList(story, c) > > c.save() > > if __name__=='__main__': > run() > > > El mar, 25-09-2007 a las 08:47 -0300, ariel illanes escribió: >> Hola gente : He echo un pequeño programita en python que me genera el codigo >> de barra a partir de un diccionario que tengo en la misma aplicacion >> ejemplos: >> from reportlab.extensions.barcode import code93 >> >> from reportlab.pdfgen.canvas import Canvas >> from reportlab.platypus import Frame >> from reportlab.lib.units import mm >> >> def run(): >> >> _patterns = { >> '0' : ('AcAaAb', 0), '1' : ('AaAbAc', 1), '2' : ('AaAcAb', 2), >> '3' : ('AaAdAa', 3), '4' : ('AbAaAc', 4), '5' : ('AbAbAb', 5), >> '6' : ('AbAcAa', 6), '7' : ('AaAaAd', 7), '8' : ('AcAbAa', 8), >> '9' : ('AdAaAa', 9), 'A' : ('BaAaAc', 10), 'B' : ('BaAbAb', 11), >> 'C' : ('BaAcAa', 12), 'D' : ('BbAaAb', 13), 'E' : ('BbAbAa', 14), >> 'F' : ('BcAaAa', 15), 'G' : ('AaBaAc', 16), 'H' : ('AaBbAb', 17), >> 'I' : ('AaBcAa', 18), 'J' : ('AbBaAb', 19), 'K' : ('AcBaAa', 20), >> 'L' : ('AaAaBc', 21), 'M' : ('AaAbBb', 22), 'N' : ('AaAcBa', 23), >> 'O' : ('AbAaBb', 24), 'P' : ('AcAaBa', 25), 'Q' : ('BaBaAb', 26), >> 'R' : ('BaBbAa', 27), 'S' : ('BaAaBb', 28), 'T' : ('BaAbBa', 29), >> 'U' : ('BbAaBa', 30), 'V' : ('BbBaAa', 31), 'W' : ('AaBaBb', 32), >> 'X' : ('AaBbBa', 33), 'Y' : ('AbBaBa', 34), 'Z' : ('AbCaAa', 35), >> '-' : ('AbAaCa', 36), '.' : ('CaAaAb', 37), ' ' : ('CaAbAa', 38), >> '$' : ('CbAaAa', 39), '/' : ('AaBaCa', 40), '+' : ('AaCaBa', 41), >> '%' : ('BaAaCa', 42), '#' : ('AbAbBa', 43), '!' : ('CaBaAa', 44), >> '=' : ('CaAaBa', 45), '&' : ('AbBbAa', 46), >> 'start' : ('AaAaDa', -1), 'stop' : ('AaAaDaA', -2) >> } >> #string=_patterns["1"] >> c = Canvas("barcode.pdf") >> #st=code93.MultiWidthBarcode(string) >> >> code=str(_patterns["2"]) >> story = [] >> story.append(code93.Standard93(str(code) >> f = Frame(10*mm, 10*mm, 190*mm, 277*mm, showBoundary=0) >> f.addFromList(story, c) >> >> c.save() >> >> if __name__=='__main__': >> run() >> >> Si prueban y cambian el valor de code=str(_patterns[x]) >> por algun otro valor del diccionario veran un archivo pdf con distinto >> codigo de barra. >> Ahora en el diccionario no veo el 22(la numeracion va de 0 a 9)intente >> genera de la siguiente forma: >> code=str(_patterns["2"])+str(_patterns["2"]) >> pero me da error >> Alguien me puede decir como seguir para poder generar codigo de barra a >> partir de un determinado numero que le paso con python. >> _______________________________________________ >> Python-es mailing list >> Python-es en aditel.org >> http://listas.aditel.org/listinfo/python-es > > > ------------------------------------------------------------------------ > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From claudio.quezada.r en gmail.com Tue Sep 25 18:28:44 2007 From: claudio.quezada.r en gmail.com (Claudio A. Quezada R.) Date: Tue, 25 Sep 2007 12:28:44 -0400 Subject: Off topic: Era: Proyecto de mapa geografico de climas Message-ID: <737bb1390709250928p26880fbk1e5cd7f73308a454@mail.gmail.com> José, hablando de KML... Yo hace unos meses tenía la idea de manejar google maps en una ventana browser en un programa bajo python y PyQt, previamente habiendo generado un kml desde una extension en arcview... Bueno, el asunto es que nunca pude ver bien el famoso kml (un poligono de una cuenca hidrografica), asi es que opte por abrir una imagen georeferenciada y su vector respectivo, con ogr y gdal. Y va bastante bien. Ahora con tus comentarios, se me vino a la cabeza de que el kml pudo haber sido generado de forma errónea (no lo pude cargar ni en la api de google maps en una pagina web, ni en google earth). Mi pregunta... Abrir un archivo vectorial, y pasarlo a kml debe ser relativamente fácil... acabo de encontrar pykml, ¿a eso te refieres tu? Saque unas referencias para graficar vectores desde tu página, bastante buena. Saludos, Claudio El 25/09/07, Jose Gomez-Dans escribió: > Para eso están los KML, que te permiten poner capas de distintas > cosas, iconos.... NO hace falta ninguna extensión, sale con tener el > JS activado :) -- Claudio Quezada Romegialli Ingeniero Ambiental (02)7321665 - 81466049 From jeancarlosr_ve en yahoo.com Tue Sep 25 20:40:31 2007 From: jeancarlosr_ve en yahoo.com (=?iso-8859-1?Q?Jean_Carlos_Rodr=ECguez?=) Date: Tue, 25 Sep 2007 11:40:31 -0700 (PDT) Subject: Interfaz grafica Message-ID: <594561.33427.qm@web53110.mail.re2.yahoo.com> Revisa esto a ver si te sirve... http://bulma.net/body.phtml?nIdNoticia=2338 ____________________________________________________________________________________ ¡Sé un mejor fotógrafo! Perfecciona tu técnica y encuentra las mejores fotos. http://telemundo.yahoo.com/promos/mejorfotografo.html From claudio.quezada.r en gmail.com Tue Sep 25 20:58:24 2007 From: claudio.quezada.r en gmail.com (Claudio A. Quezada R.) Date: Tue, 25 Sep 2007 14:58:24 -0400 Subject: Interfaz grafica In-Reply-To: References: Message-ID: <737bb1390709251158h3a4f7314s9c9a19aebbb83ee8@mail.gmail.com> Hola, Según recuerdo la función graficar de pylab depende de Tk, y si estás trabajando en PyQt de ninguna manera esa nueva ventana de Tk se quedará dentro de tu ventana de trabajo PyQt. Lo que yo hice tiempo atrás (cuando me pregunté lo mismo que tu) fue averiguar como generar gráficos en PyQt. Y encontré varias opciones: 1) Utilizar PyQtW, que son los bindings de QtW para python (lo encuentro confuso de utilizar), 2) Utilizar pylab para manejar los datos y agregarlos a un grafico, escribiéndolo luego en un archivo raster (una imagen png por ejemplo) y mostrar este archivo raster en un QTextBrowser, y otras opciones más que no recuerdo. PyQtW parece bastante bueno, pero decidí no meterme en el tema. La otra opción se ajustaba a mis necesidades por que requería graficar algo simple y rápido. Ejemplos de pylab, hay montones. Ejemplos de PyQtW también. Ojalá te sirva. Saludos, PyQtW: http://pyqwt.sourceforge.net/ pylab: http://matplotlib.sourceforge.net/ El 24/09/07, Natali Melgarejo Diaz escribió: > Hola a todos! > Tengo un problema para realizar una intefaz grafica. Necesito mostrar > graficamente unos datos sobre un formulario o dialogo (con menus, opciones, > botones, text labels, etc ) usando el modulo pyqt4, ademas uso pylab. He > llegado ha realizar el formulario con el qt designer , entender el concepto > de slots y signals tb, conectar los eventos de los botones con las > funciones, etc, pero no se como hacer para que las graficas que genero con > pylab se queden dentro del mismo formulario desde donde llamo la funcion > (haciendo click al boton correspondiente). > Si alguien tiene alguna idea, le agradeceria su sugerencia!! :) > > Saludos ;)) > > ********Natali******** > http://natmiel.hi5.com/ > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > -- Claudio Quezada Romegialli Ingeniero Ambiental (02)7321665 - 81466049 From rbaquerizo en ehas.org Tue Sep 25 21:06:54 2007 From: rbaquerizo en ehas.org (Reynaldo Baquerizo Micheline) Date: Tue, 25 Sep 2007 14:06:54 -0500 Subject: Interfaz grafica In-Reply-To: References: Message-ID: <46F95C4E.3010602@ehas.org> Natali Melgarejo Diaz escribió: > Hola a todos! > Tengo un problema para realizar una intefaz grafica. Necesito mostrar > graficamente unos datos sobre un formulario o dialogo (con menus, opciones, > botones, text labels, etc ) usando el modulo pyqt4, ademas uso pylab. He > llegado ha realizar el formulario con el qt designer , entender el concepto > de slots y signals tb, conectar los eventos de los botones con las > funciones, etc, pero no se como hacer para que las graficas que genero con > pylab se queden dentro del mismo formulario desde donde llamo la funcion > (haciendo click al boton correspondiente). > Si alguien tiene alguna idea, le agradeceria su sugerencia!! :) > > Saludos ;)) > Fijate aquí, http://www.scipy.org/Cookbook/Matplotlib/Qt_with_IPython_and_Designer PD: Saludos desde la PUCP -- From dmunhiz en gmail.com Tue Sep 25 21:28:00 2007 From: dmunhiz en gmail.com (dmunhiz) Date: Tue, 25 Sep 2007 21:28:00 +0200 Subject: sizers pyqt Message-ID: <46F96140.3080308@gmail.com> Hola: Me gustaría saber si en pyqt existen sizers (como en wx) o algo similar o si tiene alguna forma (o gestor) de redimensionado de controles en función del tamaño del formulario. Saludos y gracias ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From claudio.quezada.r en gmail.com Tue Sep 25 21:32:59 2007 From: claudio.quezada.r en gmail.com (Claudio A. Quezada R.) Date: Tue, 25 Sep 2007 15:32:59 -0400 Subject: sizers pyqt In-Reply-To: <46F96140.3080308@gmail.com> References: <46F96140.3080308@gmail.com> Message-ID: <737bb1390709251232q1699054ahe036960e726ea5d1@mail.gmail.com> Si, en PyQt se ordena de acuerdo a layouts (verticales, horizontales y grillas) y hay espaciadores (spacers) que mantienen "a raya" los widgets. Si le aplicas un layout a un conjunto de widgets y cambias de tamaño la ventana, se modifica la posición y tamaño de los widgets, a menos que tengas spacers. Al principio me costó entenderlo, pero después te vas como por un tubo. Saludos El 25/09/07, dmunhiz escribió: > Hola: > Me gustaría saber si en pyqt existen sizers (como en wx) o algo similar > o si tiene alguna forma (o gestor) de redimensionado de controles en > función del tamaño del formulario. > Saludos y gracias > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > > -- Claudio Quezada Romegialli Ingeniero Ambiental (02)7321665 - 81466049 From dmunhiz en gmail.com Tue Sep 25 21:52:31 2007 From: dmunhiz en gmail.com (dmunhiz) Date: Tue, 25 Sep 2007 21:52:31 +0200 Subject: sizers pyqt In-Reply-To: <737bb1390709251232q1699054ahe036960e726ea5d1@mail.gmail.com> References: <46F96140.3080308@gmail.com> <737bb1390709251232q1699054ahe036960e726ea5d1@mail.gmail.com> Message-ID: <46F966FF.70604@gmail.com> Muchas gracias lo tendré en cuenta. Claudio A. Quezada R. escribiu: > Si, en PyQt se ordena de acuerdo a layouts (verticales, horizontales y > grillas) y hay espaciadores (spacers) que mantienen "a raya" los > widgets. Si le aplicas un layout a un conjunto de widgets y cambias de > tamaño la ventana, se modifica la posición y tamaño de los widgets, a > menos que tengas spacers. Al principio me costó entenderlo, pero > después te vas como por un tubo. > > Saludos > > El 25/09/07, dmunhiz escribió: >> Hola: >> Me gustaría saber si en pyqt existen sizers (como en wx) o algo similar >> o si tiene alguna forma (o gestor) de redimensionado de controles en >> función del tamaño del formulario. >> Saludos y gracias >> >> _______________________________________________ >> Python-es mailing list >> Python-es en aditel.org >> http://listas.aditel.org/listinfo/python-es >> >> > > From peonblanco83 en gmail.com Tue Sep 25 22:01:08 2007 From: peonblanco83 en gmail.com (Peon Blanco) Date: Tue, 25 Sep 2007 14:01:08 -0600 Subject: python, textview y sqlite3 Message-ID: mando este correo primero para darles las gracias por sus respuestas, y para ver si me puedes ayudar con otro problema tengo una aplicacion que lee datos de una base sqlite3 y me los muestra en un Textview. el problema es que al mostrarlo en el textview lo hace con todo parentesis y comas quisiera que me los mostrara asi s001 s002 s003 etc. y lo hace asi ('s001', 's002', 's003') espero y me puedan ayudar From javi en bertayjavi.com Tue Sep 25 22:04:50 2007 From: javi en bertayjavi.com (Javi) Date: Tue, 25 Sep 2007 22:04:50 +0200 Subject: pregunta sobre variables globales References: <000601c7fba3$5726cc70$0101a8c0@portatil> Message-ID: <000b01c7ffaf$571f3090$0101a8c0@portatil> Gracias por tu respuesta me ha sido de gran ayuda. Un saludo ----- Original Message ----- From: "Gabriel Genellina" To: Sent: Monday, September 24, 2007 8:48 PM Subject: [Python-es] Re: pregunta sobre variables globales En Thu, 20 Sep 2007 13:28:53 -0300, Javi escribi?: > hola , os voy a exponer cual es mi duda, me gustaria tener una variable > a la que pueda acceder desde los diferentes modulos de mi programa y la > verdad es que no se como hacerlo, lo intento con global pero no me > funciona. Uso windows y python 2.5, wx y boa. Vayamos por partes. Por un lado la cuestion de las globales que veo que no lo tienes claro (leer el tutorial de Python creo que te vendria bien). En Python las variables "globales" son generalmente "globales al modulo". Asi que lo que hay que hacer es importar el modulo que las define. (No le tengas miedo al import, que una vez que el modulo fue importado por primera vez, simplemente devuelve una referencia al mismo modulo ya cargado). Por ejemplo: --- modulo1.py --- mi_variable = 100 def lagarunfa(): print "en modulo1, mi_variable=", mi_variable --- fin modulo1.py --- --- modulo2.py --- import modulo1 def furufaifa(): print "en modulo2, mi_variable=", modulo1.mi_variable --- fin modulo2.py --- --- main.py --- import modulo1, modulo2 print "en main, mi_variable=", modulo1.mi_variable modulo1.lagarunfa() modulo2.furufaifa() print "cambiando a 200" modulo1.mi_variable = 200 print "en main, mi_variable=", modulo1.mi_variable modulo1.lagarunfa() modulo2.furufaifa() --- fin main.py --- Y fijate que no use "global" en ninguna parte - es para otra cosa. > La cuestion es que tengo una mdiparentframe como pantalla principal > donde se le asigna valores a esa variable y despues quiero poder acceder > a ella desde las diferentes pantallas mdichildframe, pero no se me > ocurre. Si alguine pudiera ayudarme le estari amuy agradecido.. Pero en este caso deberias olvidarte de todo lo que dije arriba :) No hay que usar variables globales. Simplemente que sea un atributo de la MDIParentFrame (no del modulo, sino del objeto frame). Todas las MDIChildFrame pueden acceder a ella usando self.GetParent() -- Gabriel Genellina -------------------------------------------------------------------------------- _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From minibota en gmail.com Tue Sep 25 22:24:52 2007 From: minibota en gmail.com (=?ISO-8859-1?Q?Pavel_Mu=F1oz?=) Date: Tue, 25 Sep 2007 14:24:52 -0600 Subject: python, textview y sqlite3 In-Reply-To: References: Message-ID: <118999020709251324g2c467e85sec505d8c76272bd5@mail.gmail.com> podrias pegar un poco del codigo para tratar de ayudar encima de el? El día 25/09/07, Peon Blanco escribió: > > mando este correo primero para darles las gracias por sus respuestas, y > para ver si > me puedes ayudar con otro problema > > tengo una aplicacion que lee datos de una base sqlite3 > y me los muestra en un Textview. > > el problema es que al mostrarlo en el textview lo hace con > todo parentesis y comas > > quisiera que me los mostrara asi > > s001 > s002 > s003 > etc. > > y lo hace asi > > ('s001', > 's002', > 's003') > > espero y me puedan ayudar > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From jgomezdans en gmail.com Tue Sep 25 23:49:45 2007 From: jgomezdans en gmail.com (Jose Gomez-Dans) Date: Tue, 25 Sep 2007 23:49:45 +0200 Subject: Off topic: Era: Proyecto de mapa geografico de climas In-Reply-To: <737bb1390709250928p26880fbk1e5cd7f73308a454@mail.gmail.com> References: <737bb1390709250928p26880fbk1e5cd7f73308a454@mail.gmail.com> Message-ID: <91d218430709251449sa9301b0kdc253116f466e476@mail.gmail.com> Hola, On 9/25/07, Claudio A. Quezada R. wrote: > José, hablando de KML... Yo hace unos meses tenía la idea de manejar > google maps en una ventana browser en un programa bajo python y PyQt, > previamente habiendo generado un kml desde una extension en arcview... > Bueno, el asunto es que nunca pude ver bien el famoso kml (un poligono > de una cuenca hidrografica), asi es que opte por abrir una imagen > georeferenciada y su vector respectivo, con ogr y gdal. Y va bastante > bien. El KML (y el tratamiento de coberturas vectoriales) se complica cuando tienes polígonos con topologías raras (con huecos y cosas así). La manera más fácil de ir de Shape a KML (sin pasar por instalar PostGIS, que tiene muchas ventajas) es con ogr2ogr (un programa parte de OGR/GDAL). Sencillamente, te saca el KML (los atributos de la tabla asociada también los mete en el "globo" del mapa). También ten en cuenta que para visualizar en la Web, Google Maps tiene límites al tamaño del fichero (creo que es uno ó dos megas), y que los trucos de servir trozos de la capa según el nivel de zoom (SuperOverlays; aun no he llegado a esa parte del manual :D) es algo que OGR no hace. Con OGR, es tan sencillo como hacer ogr2ogr -f "KML" -s_srs -t_srs "EPSG:4326" Le puedes poner opciones para hacer una selcción por atributo (-where ...), espacial... Si no tienes que reproyectar, te ahorras la parte del s_srs t_srs (GMaps usa longitud, latitud WGS84). > Ahora con tus comentarios, se me vino a la cabeza de que el kml pudo > haber sido generado de forma errónea (no lo pude cargar ni en la api Lo bueno que tienen es que son XML, y por ello, tienen que validar (si los haces con el DOM, no hay problemas, pero si los haces a base de prints y otras técnicas rústico-ruralizantes como yo, pues hay lío), y te quitas de encima los problemas de sintaxis. feedvalidator.org es una herramienta útil para esto. > de google maps en una pagina web, ni en google earth). Mi pregunta... > Abrir un archivo vectorial, y pasarlo a kml debe ser relativamente > fácil... acabo de encontrar pykml, ¿a eso te refieres tu? OGR funciona bien, PostGIS es otra opción, y me suena que haya un proyecto de GDAL/OGR que hace los dichosos "SuperOverlays" , otro para que KML sea un ciudadano completo en GDAL (leer, escribir...). Por lo que se ve, el KML va a ser el nuevo Shape :) Saludos, J From elizundia en fitbak.com Wed Sep 26 08:47:07 2007 From: elizundia en fitbak.com (Ekaitz Lizundia) Date: Wed, 26 Sep 2007 08:47:07 +0200 Subject: python, textview y sqlite3 In-Reply-To: <118999020709251324g2c467e85sec505d8c76272bd5@mail.gmail.com> References: <118999020709251324g2c467e85sec505d8c76272bd5@mail.gmail.com> Message-ID: <46FA006B.7040901@fitbak.com> Me imagino que eso es porque no coges el valor que debes de coger. Sin ver el cogido, diria que pones print(row[0]) por ejemplo y te saca de esa manera. Si pones str(row[0]) te mostrara el valor digo yo. Aunque sin el codigo no sabria decirte exactamente. Pavel Muñoz escribió: > podrias pegar un poco del codigo para tratar de ayudar encima de el? > > El día 25/09/07, Peon Blanco escribió: > >> mando este correo primero para darles las gracias por sus respuestas, y >> para ver si >> me puedes ayudar con otro problema >> >> tengo una aplicacion que lee datos de una base sqlite3 >> y me los muestra en un Textview. >> >> el problema es que al mostrarlo en el textview lo hace con >> todo parentesis y comas >> >> quisiera que me los mostrara asi >> >> s001 >> s002 >> s003 >> etc. >> >> y lo hace asi >> >> ('s001', >> 's002', >> 's003') >> >> espero y me puedan ayudar >> _______________________________________________ >> Python-es mailing list >> Python-es en aditel.org >> http://listas.aditel.org/listinfo/python-es >> >> > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > > From cesar.ortiz en gmail.com Sun Sep 23 22:33:23 2007 From: cesar.ortiz en gmail.com (Cesar Ortiz) Date: Sun, 23 Sep 2007 22:33:23 +0200 Subject: chorrada con carga de modulos In-Reply-To: References: <90255a70709210336r6c6606baq2630b4957f7a5354@mail.gmail.com> Message-ID: <90255a70709231333o4c0868c5m90aa93bcee93adbc@mail.gmail.com> Muchas gracias!!!, Ya puedo salir de la lista de los que no sabían lo del "__main__" ;) On 9/23/07, Gabriel Genellina wrote: > > En Fri, 21 Sep 2007 07:36:47 -0300, Cesar Ortiz > escribi?: > > > Si tengo un modulo apps.py que tiene: > > > > > > import debug > > import apps > > > > def programBegin(): > > debug.init() > > Oops, apps se importa a sí mismo? Un poco raro... pero igual, no tiene > nada que ver con el problema. > > > Y si tengo un modulo debug.py que tiene: > > > > DEBUG = 0 > > > > def init(): > > global DEBUG > > DEBUG=1 > > > > if ( __name__ == "__main__") : > > import apps > > apps.programBegin() > > print DEBUG > > > ¿Porque al ejecutar como comando el modulo debug.py, me imprime 0? Mi no > > entender... > > La clave está en que al ejecutar debug.py directamente, se crean DOS > copias del MISMO modulo. > > 1) El script que estas ejecutando (debug.py) se carga como modulo > '__main__' (es decir, en sys.modules se inserta un nuevo item con > clave='__main__' y valor=el modulo debug.py). > > 2) Cuando apps ejecuta "import debug", Python se fija si el modulo ya esta > importado (mirando las claves de sys.modules) y como no lo encuentra, lo > lee de disco y lo inserta con clave='debug' > > O sea que debug.py fue importado DOS veces. Cuando programBegin llama a > debug.init, lo que se modifica es el valor de la variable DEBUG que esta > en el modulo llamado "debug". Cuando haces el print estando dentro del > script principal (que coincide con debug.py) lo que estas imprimiendo es > la variable DEBUG que esta en el modulo llamado "__main__". > > De paso, esta es justamente la razon por la que funciona la condicion: > > if __name__ == "__main__": > > que más de uno escribe sin tener ni idea de porqué se hace así. > > -- > Gabriel Genellina > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > > ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From nahuel.defosse en gmail.com Wed Sep 26 09:39:13 2007 From: nahuel.defosse en gmail.com (Nahuel Defosse) Date: Wed, 26 Sep 2007 04:39:13 -0300 Subject: Novato Funciones de "C" In-Reply-To: References: <1190354939.2625.2.camel@alex-desktop> <46F3CB1A.4030003@ehas.org> Message-ID: <200709260439.15811.nahuel.defosse@gmail.com> On Sunday 23 September 2007 17:11:26 Gabriel Genellina wrote: > En Fri, 21 Sep 2007 10:46:02 -0300, Arnau Sanchez > > escribi?: > > Alex Ricardo Rincon Silva escribió: > > > > No iría mal que hubieras especificado qué sistema operativo usas, porque > > ambas funciones son dependientes del SO. > > > >> -limpio pantalla "clrscr" > > > > Bien facilita para google: "python clear screen". Resultado: > > > > UNIX: os.system("clean") > > Windows: :-O > > El equivalente sería os.system("cls"). > > >> -eperp por una tecla o pulsacion del teclado "getch" > > > > Igual: "python getch" > > > > http://snippets.dzone.com/posts/show/915 > > http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/134892 > > > > Por otra parte, no te recomendaría hacer programas que lean por > > caracteres. raw_input(), que lee por líneas, *debería* ser suficiente. > > Yo diría lo mismo. getch() puede ser adecuado para una interfaz sencilla, > por ahi hasta usando menúes, pero cualquier cosa mas complicada convendria > hacerla con ncurses o console o urwid o la libreria que fuera para > interfaces de texto. Quizás no venga al caso, pero, ya que en python 2.5 tenemos a ctypes por defecto, podrías intentar levantar libc.so o ????.dll y accederlas directamente. No se si es una buena solución, pero es muy divertido :) A mi me resultó muy estable, aunque encontré algun que otor error entre el pasaje de flotatntes, que seguramente se deba a mi inexperiencia. ctypes es un módulo de python que te permite levantar librerías de enlace dinámico (las que salen con ldd en Linux). Saludos, Nahuel ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: no disponible Type: application/pgp-signature Size: 189 bytes Desc: no disponible URL: ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From judaz100 en hotmail.com Sat Sep 22 01:25:44 2007 From: judaz100 en hotmail.com (Juan Osorio Gonzalez) Date: Fri, 21 Sep 2007 23:25:44 +0000 Subject: problemas ascii Message-ID: cuando hago dobleclic sobre el programa para ejecutarlo sale el erroe del adjunto. pero cuando compilo con F5 no sale y corre normalmente. pueden ayudarme alguien con este caso es super urgente. gracias por adelantado _________________________________________________________________ ¡Ya está aquí Windows Live Spaces! Ahora podrás crear fácilmente tu propio sitio Web. http://spaces.live.com/signup.aspx ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From rafaelcantos en hotmail.com Wed Sep 26 13:50:43 2007 From: rafaelcantos en hotmail.com (Rafael Cantos) Date: Wed, 26 Sep 2007 11:50:43 +0000 Subject: Reproducir y controlar sonido. Message-ID: Buenas a todos. Para el software que estoy programando, necesito reproducir y controlar algunos parámetros de sonido, siempre en modo consola y la aplicación de sonido funcionando en segundo plano. He pensado en algunas librerías como GStreamer, pero me pregunto que qué librerías lleva python para esto. El sonido que manejaré será mp3 y wav. Saludos y gracias de antemano. Rafa _________________________________________________________________ Moda para esta temporada. Ponte al día de todas las tendencias. http://www.msn.es/Mujer/moda/default.asp From david.abreu en iac.es Wed Sep 26 14:42:46 2007 From: david.abreu en iac.es (David Abreu Rodriguez) Date: Wed, 26 Sep 2007 13:42:46 +0100 Subject: Reproducir y controlar sonido. In-Reply-To: References: Message-ID: <46FA53C6.5030806@iac.es> No estoy muy seguro, pero creo que pygame te puede servir. ciao Rafael Cantos wrote: > Buenas a todos. > > Para el software que estoy programando, necesito reproducir y > controlar algunos parámetros de sonido, siempre en modo consola y la > aplicación de sonido funcionando en segundo plano. > He pensado en algunas librerías como GStreamer, pero me pregunto que > qué librerías lleva python para esto. El sonido que manejaré será mp3 > y wav. > > Saludos y gracias de antemano. > > Rafa > > _________________________________________________________________ > Moda para esta temporada. Ponte al día de todas las tendencias. > http://www.msn.es/Mujer/moda/default.asp > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es From chaladinha21 en gmail.com Wed Sep 26 12:42:15 2007 From: chaladinha21 en gmail.com (=?ISO-8859-1?Q?Roc=EDo_Torres_Fungueiro?=) Date: Wed, 26 Sep 2007 12:42:15 +0200 Subject: =?iso-8859-1?q?c=F3mo_correr_python_con_apache_sobre?= =?iso-8859-1?q?_windows?= Message-ID: Ola, estoy empezando con python y tengo un problema. Quiero realizar aplicaciones en python y para ello había instalado apache, python y mod_python pero creo que no es la mejor forma porque cada vez que creo un script y quiero ejecutarlo tengo que modificar el httpd.conf de apache. Alguien puede ayudarme?? From rapto en arrakis.es Wed Sep 26 14:59:20 2007 From: rapto en arrakis.es (Marcos =?ISO-8859-1?Q?S=E1nchez?= Provencio) Date: Wed, 26 Sep 2007 14:59:20 +0200 Subject: problemas ascii In-Reply-To: References: Message-ID: <1190811560.5762.27.camel@savin> Me temo que la lista se zampa los adjuntos. Por favor, pega el texto. El vie, 21-09-2007 a las 23:25 +0000, Juan Osorio Gonzalez escribió: > cuando hago dobleclic sobre el programa para ejecutarlo sale el erroe del adjunto. > pero cuando compilo con F5 no sale y corre normalmente. > > pueden ayudarme alguien con este caso es super urgente. > > gracias por adelantado ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From rapto en arrakis.es Wed Sep 26 15:04:30 2007 From: rapto en arrakis.es (Marcos =?ISO-8859-1?Q?S=E1nchez?= Provencio) Date: Wed, 26 Sep 2007 15:04:30 +0200 Subject: =?ISO-8859-1?Q?c=F3mo?= correr python con apache sobre windows In-Reply-To: References: Message-ID: <1190811870.5762.31.camel@savin> El mié, 26-09-2007 a las 12:42 +0200, Rocío Torres Fungueiro escribió: > Ola, > estoy empezando con python y tengo un problema. > Quiero realizar aplicaciones en python y para ello había instalado apache, > python y mod_python pero creo que no es la mejor forma porque cada vez que > creo un script y quiero ejecutarlo tengo que modificar el httpd.conf de > apache. > Alguien puede ayudarme?? Si usas mod_python.publisher, no hace falta, ¿no? http://www.modpython.org/live/current/doc-html/tut-pub.html ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From garcia.reinaldo en gmail.com Wed Sep 26 15:30:11 2007 From: garcia.reinaldo en gmail.com (Reinaldo Garcia) Date: Wed, 26 Sep 2007 09:30:11 -0400 Subject: Manejo de archivos GNU/Linux - Win2 Message-ID: <46FA5EE3.10803@gmail.com> Hola lista, buen día. Bueno creo que no está demás decir que este es mi primer mensaje en esta lista :D Estoy comenzando a volver a programar, y esta vez he vuelto con python, (al parecer para quedarme XD). Estoy desarrollando una aplicación multiplataforma, tal que corra en win2 como en linux. Para ello necesito guardar algunos datos de "configuración" de la aplicación, tales como: *Datos de usuario, pass y nombre de la database *y otras configuraciones varias Mi consulta de fondo es: ¿como maneja python la escritura, específicamente el PATH de escritura? ya que, por ejemplo. e GNU/Linux en archivo podría guardarse en $HOME/.conf-python y en win2 C:\document and setting\usuario\ Como le indico a python estas rutas o PATH? Cualquier ayuda me vendría de pelos.... :D -- Reinaldo García Zuñiga (08) 749 21 07 Analista Programador Asesor de Informática RGSoluciones - Soluciones & Servicios Informáticos Integrales http://www.rgsoluciones.cl User #441987 counter.li.org "Nunca andes por el camino trazado... pues el te conduce únicamente hacia donde los otros fueron." (Grahan Bell) From arnau en ehas.org Wed Sep 26 15:44:00 2007 From: arnau en ehas.org (Arnau Sanchez) Date: Wed, 26 Sep 2007 15:44:00 +0200 Subject: Reproducir y controlar sonido. In-Reply-To: References: Message-ID: <46FA6220.3020704@ehas.org> Buenas, > Para el software que estoy programando, necesito reproducir y controlar > algunos parámetros de sonido, siempre en modo consola y la aplicación de > sonido funcionando en segundo plano. > He pensado en algunas librerías como GStreamer, pero me pregunto que qué > librerías lleva python para esto. El sonido que manejaré será mp3 y wav. Como te dicen, pygame es la solución más sencilla, es perfectamente capaz de reproducir ficheros wav y mp3. Sin embargo, no parece la solución ideal, estarías poniendo como dependencia una librería para correr juegos, de la cual sólo usarás una pequeñísima parte. Por otra parte, la librería de sonido de pygame tampoco es ninguna maravilla, sólo controla dispositivos oss (/dev/dspX), que ya se está quedando anticuado frente a las librerías alsa, esd, artsd, jackd, etc. Si miras las dependencias de python-gst, verás las aplicaciones que la usan, que son bastantes: $ ardepends python-gst dconverter quodlibet python-pigment python-coherence pitivi oggconvert minirok listen jokosher istanbul gnome-app-install flumotion exaile elisa decibel-audio-player soundconverter serpentine quodlibet listen jokosher istanbul El problema de GST es que se trata de un framework muy versátil, así que su uso no es tan sencillo (mientras que en pygame puedes reproducir un sonido en apenas 3 líneas de código, mírate el test.py que acompaña a GST). Sería bueno saber si esto que cuentas forma parte de la tarea principal de tu aplicación (tipo reproductor de sonido) o es algo secundario. Si es el primer caso, sí toca usar una librería python (GST, pygame, ...), pero si, por contra, es algo auxiliar, yo no lo dudaría y usaría las aplicaciones del sistema operativo que saben lo que hacen: "play", en este caso (paquete sox) arnau From ferrero.mariaeugenia en gmail.com Wed Sep 26 16:10:44 2007 From: ferrero.mariaeugenia en gmail.com (Maria Eugenia Ferrero) Date: Wed, 26 Sep 2007 11:10:44 -0300 Subject: =?ISO-8859-1?Q?_gr=E1fico_en_barras_en_tiempo_real?= Message-ID: <85f5e1fe0709260710q5df4f56en32340a12d02c6ef4@mail.gmail.com> Hola lista, disculpen por mi tonta consulta seguramente, pero estoy hace más de una semana probando y no logro que me salga es por eso que recurro a Uds..... Mi código es el siguiente: import gdchart import sys, os datos = map(int, str(os.system('top -b | grep Mem'))) x = gdchart.Bar3D() x.setData(datos) x.draw("memoria.png") La idea es que el gráfico debe ir cambiando en tiempo real conjuntamente con los datos, pero sólo logro que se actualicen los datos y al final me muestre la gráfica. ¿Cómo podría hacer para que la gráfica se actualice constantemente durante toda la ejecución del programa? Por favor serían tan amables de ayudarme porque no me sale... probé con un botón 'salir' y que se ejecute hasta que no se lo clickée, peor no sé si hice mal o qué pero no me funciona. También pensé en pasar los datos a un archivo de texto e ir tomándolo de ahí para generar el gráfico (a pesar de que lo haga muy pesado al programa, pero con tal de que me salga....) pero no me sale. Por favor algún alma bondadosa, muchísimas gracias!!!!! From jordi.f en ati.es Wed Sep 26 16:23:03 2007 From: jordi.f en ati.es (Jordi Funollet) Date: Wed, 26 Sep 2007 16:23:03 +0200 Subject: Reproducir y controlar sonido. In-Reply-To: <46FA6220.3020704@ehas.org> References: <46FA6220.3020704@ehas.org> Message-ID: <200709261623.03133.jordi.f@ati.es> Arnau Sanchez dixit: > Si miras las dependencias de python-gst, verás las aplicaciones que la > usan, que son bastantes: > > $ ardepends python-gst > > dconverter quodlibet python-pigment python-coherence pitivi oggconvert > minirok listen jokosher istanbul gnome-app-install flumotion exaile > elisa decibel-audio-player soundconverter serpentine quodlibet listen > jokosher istanbul Perdón por salirme un poco del hilo. Arnau, no conozco ese comando ('ardepends'). ¿Es específico de una distribución? -- ############################## ### Jordi Funollet ### http://www.terraquis.net From ematus en gmail.com Wed Sep 26 16:31:51 2007 From: ematus en gmail.com (Eduardo Matus) Date: Wed, 26 Sep 2007 10:31:51 -0400 Subject: =?ISO-8859-1?Q?Re:__gr=E1fico_en_barras_en_tiempo_real?= In-Reply-To: <85f5e1fe0709260710q5df4f56en32340a12d02c6ef4@mail.gmail.com> References: <85f5e1fe0709260710q5df4f56en32340a12d02c6ef4@mail.gmail.com> Message-ID: <984ad6a0709260731i5c65698dof743510349c461de@mail.gmail.com> no se si estara bien.. pero.. import gdchart import sys, os while 1: datos = map(int, str(os.system('top -b | grep Mem'))) if datos == None: break x = gdchart.Bar3D() x.setData(datos) x.draw("memoria.png") On 9/26/07, Maria Eugenia Ferrero wrote: > > Hola lista, disculpen por mi tonta consulta seguramente, pero estoy hace > más > de una semana probando y no logro que me salga es por eso que recurro a > Uds..... > Mi código es el siguiente: > > import gdchart > import sys, os > datos = map(int, str(os.system('top -b | grep Mem'))) > x = gdchart.Bar3D() > x.setData(datos) > x.draw("memoria.png") > > La idea es que el gráfico debe ir cambiando en tiempo real conjuntamente > con > los datos, pero sólo logro que se actualicen los datos y al final me > muestre > la gráfica. ¿Cómo podría hacer para que la gráfica se actualice > constantemente durante toda la ejecución del programa? Por favor serían > tan > amables de ayudarme porque no me sale... probé con un botón 'salir' y que > se > ejecute hasta que no se lo clickée, peor no sé si hice mal o qué pero no > me > funciona. También pensé en pasar los datos a un archivo de texto e ir > tomándolo de ahí para generar el gráfico (a pesar de que lo haga muy > pesado > al programa, pero con tal de que me salga....) pero no me sale. Por favor > algún alma bondadosa, muchísimas gracias!!!!! > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From sonajadiabolica en gmail.com Wed Sep 26 16:47:06 2007 From: sonajadiabolica en gmail.com (aNgel rEsendiz g.) Date: Wed, 26 Sep 2007 09:47:06 -0500 Subject: Manejo de archivos GNU/Linux - Win2 In-Reply-To: <46FA5EE3.10803@gmail.com> References: <46FA5EE3.10803@gmail.com> Message-ID: <8d9e208f0709260747p51475dd7hf0be5ffe7619d8dd@mail.gmail.com> > Mi consulta de fondo es: ¿como maneja python la escritura, > específicamente el PATH de escritura? ya que, por ejemplo. e GNU/Linux > en archivo podría guardarse en $HOME/.conf-python y en win2 C:\document > and setting\usuario\ > > Como le indico a python estas rutas o PATH? Que tal. Creo que lo que buscas es: os.environ['HOME'] Saludos. -- aNgel rEsendiz.! http://cibat.org From garcia.reinaldo en gmail.com Wed Sep 26 16:57:24 2007 From: garcia.reinaldo en gmail.com (Reinaldo Garcia) Date: Wed, 26 Sep 2007 10:57:24 -0400 Subject: Manejo de archivos GNU/Linux - Win2 In-Reply-To: <8d9e208f0709260747p51475dd7hf0be5ffe7619d8dd@mail.gmail.com> References: <46FA5EE3.10803@gmail.com> <8d9e208f0709260747p51475dd7hf0be5ffe7619d8dd@mail.gmail.com> Message-ID: <46FA7354.2040800@gmail.com> aNgel rEsendiz g. escribió: >> Mi consulta de fondo es: ¿como maneja python la escritura, >> específicamente el PATH de escritura? ya que, por ejemplo. e GNU/Linux >> en archivo podría guardarse en $HOME/.conf-python y en win2 C:\document >> and setting\usuario\ >> >> Como le indico a python estas rutas o PATH? > > Que tal. > > Creo que lo que buscas es: > os.environ['HOME'] > > Saludos. > gracias, esa es la *pista* que andaba buscando .... salu2 -- Reinaldo García Zuñiga (08) 749 21 07 Analista Programador Asesor de Informática RGSoluciones - Soluciones & Servicios Informáticos Integrales http://www.rgsoluciones.cl User #441987 counter.li.org "Nunca andes por el camino trazado... pues el te conduce únicamente hacia donde los otros fueron." (Grahan Bell) From arnau en ehas.org Wed Sep 26 17:09:25 2007 From: arnau en ehas.org (Arnau Sanchez) Date: Wed, 26 Sep 2007 17:09:25 +0200 Subject: Reproducir y controlar sonido. In-Reply-To: <200709261623.03133.jordi.f@ati.es> References: <46FA6220.3020704@ehas.org> <200709261623.03133.jordi.f@ati.es> Message-ID: <46FA7625.3020900@ehas.org> Jordi Funollet escribió: > Arnau Sanchez dixit: >> $ ardepends python-gst >> >> dconverter quodlibet python-pigment python-coherence pitivi oggconvert >> minirok listen jokosher istanbul gnome-app-install flumotion exaile >> elisa decibel-audio-player soundconverter serpentine quodlibet listen >> jokosher istanbul > > Perdón por salirme un poco del hilo. Arnau, no conozco ese comando > ('ardepends'). ¿Es específico de una distribución? Disculpa, debería haber puesto la llamada completa. Es sólo un sencillo script Bash sobre el apt-cache de Debian: (/usr/local/bin/ardepends) #!/bin/sh apt-cache rdepends $1 | sed -ne '3,$p' | xargs Es especialmente útil cuando uno se pregunta "¿cómo diantre usa la gente esta infernal librería?" ;-) arnau From arnau en ehas.org Wed Sep 26 17:15:50 2007 From: arnau en ehas.org (Arnau Sanchez) Date: Wed, 26 Sep 2007 17:15:50 +0200 Subject: =?ISO-8859-1?Q?gr=E1fico_en_barras_en_ti?= =?ISO-8859-1?Q?empo_real?= In-Reply-To: <85f5e1fe0709260710q5df4f56en32340a12d02c6ef4@mail.gmail.com> References: <85f5e1fe0709260710q5df4f56en32340a12d02c6ef4@mail.gmail.com> Message-ID: <46FA77A6.1080406@ehas.org> Maria Eugenia Ferrero escribió: > import gdchart > import sys, os > datos = map(int, str(os.system('top -b | grep Mem'))) > x = gdchart.Bar3D() > x.setData(datos) > x.draw("memoria.png") > > La idea es que el gráfico debe ir cambiando en tiempo real conjuntamente con > los datos, pero sólo logro que se actualicen los datos y al final me muestre > la gráfica. Es que "top -b" no acaba nunca, tendrías que añadir el parámetro "-n1" para que te dé sólo una actualización. Por otra parte, ¿te funciona esa línea en que pasas los valores a entero? puesto que la salida de top es ésta: Mem: 508404k total, 489340k used, 19064k free, 632k buffers antes tendrías que extraer el campo o campos que te interesen... A todo esto, ¿no te iría mejor el comando "free"? Por otra parte, ir llamando a un proceso externo de forma continua es caro. ¿No te sirve la información de /proc/meminfo? Cuidado que la memoria del sistema incluye también la swap, no sólo la memoria física. arnau From gnomeusr en gmail.com Wed Sep 26 17:44:14 2007 From: gnomeusr en gmail.com (gfc) Date: Wed, 26 Sep 2007 11:44:14 -0400 Subject: Reproducir y controlar sonido. In-Reply-To: References: Message-ID: <1190821454.7107.4.camel@GnomeDeveloper> Hola, Prueba con http://packages.ubuntu.com/dapper/python/python-gst Saludos El mié, 26-09-2007 a las 11:50 +0000, Rafael Cantos escribió: > Buenas a todos. > > Para el software que estoy programando, necesito reproducir y controlar > algunos parámetros de sonido, siempre en modo consola y la aplicación de > sonido funcionando en segundo plano. > He pensado en algunas librerías como GStreamer, pero me pregunto que qué > librerías lleva python para esto. El sonido que manejaré será mp3 y wav. > > Saludos y gracias de antemano. > > Rafa > > _________________________________________________________________ > Moda para esta temporada. Ponte al día de todas las tendencias. > http://www.msn.es/Mujer/moda/default.asp > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From judaz100 en hotmail.com Wed Sep 26 17:51:31 2007 From: judaz100 en hotmail.com (Juan Osorio Gonzalez) Date: Wed, 26 Sep 2007 15:51:31 +0000 Subject: problemas ascii In-Reply-To: <1190811560.5762.27.camel@savin> References: <1190811560.5762.27.camel@savin> Message-ID: no te preocupes ya esta solucionado al pareces habia que agregar la siguiente linea # -*- coding: cp1252 -*- aunque aun no entiendo porque python la agrego por si mismo despues de preguntarme si queria cambiar el coding----- Fight back spam! Download the Blue Frog. http://www.bluesecurity.com/register/s?user=anVkYW81MzUz > Subject: Re: [Python-es] problemas ascii> From: rapto en arrakis.es> To: python-es en aditel.org> Date: Wed, 26 Sep 2007 14:59:20 +0200> > Me temo que la lista se zampa los adjuntos. Por favor, pega el texto.> > El vie, 21-09-2007 a las 23:25 +0000, Juan Osorio Gonzalez escribió:> > cuando hago dobleclic sobre el programa para ejecutarlo sale el erroe del adjunto.> > pero cuando compilo con F5 no sale y corre normalmente.> > > > pueden ayudarme alguien con este caso es super urgente.> > > > gracias por adelantado> > _________________________________________________________________ Consigue el nuevo Windows Live Messenger http://get.live.com/messenger/overview From rafaelcantos en hotmail.com Wed Sep 26 18:20:29 2007 From: rafaelcantos en hotmail.com (Rafael Cantos) Date: Wed, 26 Sep 2007 16:20:29 +0000 Subject: Reproducir y controlar sonido. In-Reply-To: <20070926143315.80B011451293@devnull.aditel.org> References: <20070926143315.80B011451293@devnull.aditel.org> Message-ID: hola de nuevo. mi programa tiene como función la de reproducir ciertos DTB (Digital Talcking Book), así que las funciones de sonido son las más importantes, o por lo menos, de mayor importancia. Me parece un poco absurdo tener que instalar pygame, para solo usar las librerías de sonido, ¿no? saludos. Rafa >No estoy muy seguro, pero creo que pygame te puede servir. > >ciao > >Rafael Cantos wrote: > > > Buenas a todos. > > > > Para el software que estoy programando, necesito reproducir y > > controlar algunos parámetros de sonido, siempre en modo consola y la > > aplicación de sonido funcionando en segundo plano. > > He pensado en algunas librerías como GStreamer, pero me pregunto que > > qué librerías lleva python para esto. El sonido que manejaré será mp3 > > y wav. > > > > Saludos y gracias de antemano. > > > > Rafa > >Como te dicen, pygame es la solución más sencilla, es perfectamente >capaz de reproducir ficheros wav y mp3. Sin embargo, no parece la >solución ideal, estarías poniendo como dependencia una librería para >correr juegos, de la cual sólo usarás una pequeñísima parte. Por otra >parte, la librería de sonido de pygame tampoco es ninguna maravilla, >sólo controla dispositivos oss (/dev/dspX), que ya se está quedando >anticuado frente a las librerías alsa, esd, artsd, jackd, etc. > >Si miras las dependencias de python-gst, verás las aplicaciones que la >usan, que son bastantes: > >$ ardepends python-gst > >dconverter quodlibet python-pigment python-coherence pitivi oggconvert >minirok listen jokosher istanbul gnome-app-install flumotion exaile >elisa decibel-audio-player soundconverter serpentine quodlibet listen >jokosher istanbul > >El problema de GST es que se trata de un framework muy versátil, así que >su uso no es tan sencillo (mientras que en pygame puedes reproducir un >sonido en apenas 3 líneas de código, mírate el test.py que acompaña a GST). > >Sería bueno saber si esto que cuentas forma parte de la tarea principal >de tu aplicación (tipo reproductor de sonido) o es algo secundario. Si >es el primer caso, sí toca usar una librería python (GST, pygame, ...), >pero si, por contra, es algo auxiliar, yo no lo dudaría y usaría las >aplicaciones del sistema operativo que saben lo que hacen: "play", en >este caso (paquete sox) > >arnau > >Perdón por salirme un poco del hilo. Arnau, no conozco ese comando >('ardepends'). ¿Es específico de una distribución? > >-- >############################## >### Jordi Funolle _________________________________________________________________ Descubre la descarga digital con MSN Music. Más de un millón de canciones. http://music.msn.es/ From axelruiz en bicimoto.com Wed Sep 26 18:12:46 2007 From: axelruiz en bicimoto.com (Axel Ruiz) Date: Wed, 26 Sep 2007 10:12:46 -0600 Subject: Saludos.. In-Reply-To: <46FA77A6.1080406@ehas.org> References: <85f5e1fe0709260710q5df4f56en32340a12d02c6ef4@mail.gmail.com> <46FA77A6.1080406@ehas.org> Message-ID: <000601c80058$137e5e70$3a7b1b50$@com> Saludos a Todos, fijense que estoy muy interesado en aprender a programar, en Phyton, quisiera saber cuales son los alcances de este lenguaje, y con que interactuo en lo que a bases de datos se refiere, yo llevo programando 12 anos en Visual Fox , y quisiera hacer un cambio bueno en mi vida, tienen algunos links que me serivan para descargar manuales para aprender desde cero, como instalarlo y configurar o de una iniciar a trabajar en ello. Gracias, espero su respuesta. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From ferrero.mariaeugenia en gmail.com Wed Sep 26 19:19:22 2007 From: ferrero.mariaeugenia en gmail.com (Maria Eugenia Ferrero) Date: Wed, 26 Sep 2007 14:19:22 -0300 Subject: =?ISO-8859-1?Q?Re:__gr=E1fico_en_barras_en_tiempo_real?= In-Reply-To: <46FA77A6.1080406@ehas.org> References: <85f5e1fe0709260710q5df4f56en32340a12d02c6ef4@mail.gmail.com> <46FA77A6.1080406@ehas.org> Message-ID: <85f5e1fe0709261019x2e6360d2gf8af53c34499f3fa@mail.gmail.com> Si, ya sé; es que en realidad tengo que rescatar datos de la memoria, la swap y del % de uso de la cpu. Lo de mamoria y swap podría hacerlo con 'free', pero lo de la cpu solamente con top. ¿Cómo sería lo de agragar un parámetro "-n1" ???? Justamente como nunca acaba pienso que es lo que necesito, porque o sino con free tendría que ir leyendo a cada rato, o estoy equivocada? El día 26/09/07, Arnau Sanchez escribió: > > Maria Eugenia Ferrero escribió: > > > import gdchart > > import sys, os > > datos = map(int, str(os.system('top -b | grep Mem'))) > > x = gdchart.Bar3D() > > x.setData(datos) > > x.draw("memoria.png") > > > > La idea es que el gráfico debe ir cambiando en tiempo real conjuntamente > con > > los datos, pero sólo logro que se actualicen los datos y al final me > muestre > > la gráfica. > > Es que "top -b" no acaba nunca, tendrías que añadir el parámetro "-n1" > para que te dé sólo una actualización. > > Por otra parte, ¿te funciona esa línea en que pasas los valores a > entero? puesto que la salida de top es ésta: > > Mem: 508404k total, 489340k used, 19064k free, 632k buffers > > antes tendrías que extraer el campo o campos que te interesen... > > A todo esto, ¿no te iría mejor el comando "free"? > > Por otra parte, ir llamando a un proceso externo de forma continua es > caro. ¿No te sirve la información de /proc/meminfo? > > Cuidado que la memoria del sistema incluye también la swap, no sólo la > memoria física. > > arnau > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From rolandojtorres en gmail.com Wed Sep 26 19:33:14 2007 From: rolandojtorres en gmail.com (=?UTF-8?Q?Rolando_Jos=C3=A9_Torres_S=C3=A1nchez?=) Date: Wed, 26 Sep 2007 12:33:14 -0500 Subject: =?UTF-8?Q?Re:__gr=C3=A1fico_en_barras_en_tiempo_real?= In-Reply-To: <46FA77A6.1080406@ehas.org> References: <85f5e1fe0709260710q5df4f56en32340a12d02c6ef4@mail.gmail.com> <46FA77A6.1080406@ehas.org> Message-ID: <6a39a1d0709261033jefed3e3s64e71e512be24c44@mail.gmail.com> Yo se que quizas no te sirva de nada, pero quizas quieras passarlo de TCL a Python. http://wiki.tcl.tk/16946 El día 26/09/07, Arnau Sanchez escribió: > > Maria Eugenia Ferrero escribió: > > > import gdchart > > import sys, os > > datos = map(int, str(os.system('top -b | grep Mem'))) > > x = gdchart.Bar3D() > > x.setData(datos) > > x.draw("memoria.png") > > > > La idea es que el gráfico debe ir cambiando en tiempo real conjuntamente > con > > los datos, pero sólo logro que se actualicen los datos y al final me > muestre > > la gráfica. > > Es que "top -b" no acaba nunca, tendrías que añadir el parámetro "-n1" > para que te dé sólo una actualización. > > Por otra parte, ¿te funciona esa línea en que pasas los valores a > entero? puesto que la salida de top es ésta: > > Mem: 508404k total, 489340k used, 19064k free, 632k buffers > > antes tendrías que extraer el campo o campos que te interesen... > > A todo esto, ¿no te iría mejor el comando "free"? > > Por otra parte, ir llamando a un proceso externo de forma continua es > caro. ¿No te sirve la información de /proc/meminfo? > > Cuidado que la memoria del sistema incluye también la swap, no sólo la > memoria física. > > arnau > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > -- Rolando José Torres Sánchez TCL/TK inside Python MSN:rolandojtorres en hotmail.com ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From rbaquerizo en ehas.org Wed Sep 26 19:43:21 2007 From: rbaquerizo en ehas.org (Reynaldo Baquerizo Micheline) Date: Wed, 26 Sep 2007 12:43:21 -0500 Subject: =?ISO-8859-1?Q?gr=E1fico_en_barras_en_ti?= =?ISO-8859-1?Q?empo_real?= In-Reply-To: <85f5e1fe0709261019x2e6360d2gf8af53c34499f3fa@mail.gmail.com> References: <85f5e1fe0709260710q5df4f56en32340a12d02c6ef4@mail.gmail.com> <46FA77A6.1080406@ehas.org> <85f5e1fe0709261019x2e6360d2gf8af53c34499f3fa@mail.gmail.com> Message-ID: <46FA9A39.3020204@ehas.org> Maria Eugenia Ferrero escribió: > Si, ya sé; es que en realidad tengo que rescatar datos de la memoria, la > swap y del % de uso de la cpu. Lo de mamoria y swap podría hacerlo con > 'free', pero lo de la cpu solamente con top. > ¿Cómo sería lo de agragar un parámetro "-n1" ???? Justamente como nunca > acaba pienso que es lo que necesito, porque o sino con free tendría que ir > leyendo a cada rato, o estoy equivocada? > Si nunca acaba no regresa regresa el control a tu programa. > > > El día 26/09/07, Arnau Sanchez escribió: > >> Maria Eugenia Ferrero escribió: >> >> >>> import gdchart >>> import sys, os >>> datos = map(int, str(os.system('top -b | grep Mem'))) >>> Si no me equivoco os.system ejecuta el comando y lo que devuelve es el estatus de retorno, es decir si fallo o fuese exitoso (0) Yo creo que con lo que arnau te dijo y utilizando el modulo commands deberías utilizarlo de estar forma import commands commands.getoutput('top -b -n1 | grep Mem') esto regresa una cadena: 'Mem: 385564k total, 378956k used, 6608k free, 6236k buffers' la parsea y obtienes los campos que quieres y eso se lo pasas a tu función de dibujo. con el loop infinito (while 1) va ir obteniendo una linea del top a la vez e ira actualizando. Suerte con el resto. Saludos, Reynaldo -- From rbaquerizo en ehas.org Wed Sep 26 19:53:11 2007 From: rbaquerizo en ehas.org (Reynaldo Baquerizo Micheline) Date: Wed, 26 Sep 2007 12:53:11 -0500 Subject: =?ISO-8859-1?Q?gr=E1fico_en_barras_en_ti?= =?ISO-8859-1?Q?empo_real?= In-Reply-To: <46FA9A39.3020204@ehas.org> References: <85f5e1fe0709260710q5df4f56en32340a12d02c6ef4@mail.gmail.com> <46FA77A6.1080406@ehas.org> <85f5e1fe0709261019x2e6360d2gf8af53c34499f3fa@mail.gmail.com> <46FA9A39.3020204@ehas.org> Message-ID: <46FA9C87.6070507@ehas.org> Reynaldo Baquerizo Micheline escribió: > Maria Eugenia Ferrero escribió: >> Si, ya sé; es que en realidad tengo que rescatar datos de la memoria, la >> swap y del % de uso de la cpu. Lo de mamoria y swap podría hacerlo con >> 'free', pero lo de la cpu solamente con top. >> ¿Cómo sería lo de agragar un parámetro "-n1" ???? Justamente como nunca >> acaba pienso que es lo que necesito, porque o sino con free tendría >> que ir >> leyendo a cada rato, o estoy equivocada? >> > Si nunca acaba no regresa regresa el control a tu programa. >> >> >> El día 26/09/07, Arnau Sanchez escribió: >> >>> Maria Eugenia Ferrero escribió: >>> >>> >>>> import gdchart >>>> import sys, os >>>> datos = map(int, str(os.system('top -b | grep Mem'))) >>>> > Si no me equivoco os.system ejecuta el comando y lo que devuelve es el > estatus de retorno, es decir si fallo o fuese exitoso (0) > Yo creo que con lo que arnau te dijo y utilizando el modulo commands > deberías utilizarlo de estar forma > > import commands > > commands.getoutput('top -b -n1 | grep Mem') > > esto regresa una cadena: 'Mem: 385564k total, 378956k used, > 6608k free, 6236k buffers' Una forma de parsear esa cadena ( no se si la mas elegante, o la mas eficiente) temp = commands.getoutput('top -b -n1 | grep Mem') total, used, free, buffers = [dato.split()[0].strip('k') for dato in temp.split(':')[1].split(',')] :-) Saludos, Reynaldo -- From mario.carrasco en gmail.com Wed Sep 26 19:58:44 2007 From: mario.carrasco en gmail.com (=?ISO-8859-1?Q?Mario_Jim=E9nez_Carrasco?=) Date: Wed, 26 Sep 2007 12:58:44 -0500 Subject: Saludos.. In-Reply-To: <000601c80058$137e5e70$3a7b1b50$@com> References: <85f5e1fe0709260710q5df4f56en32340a12d02c6ef4@mail.gmail.com> <46FA77A6.1080406@ehas.org> <000601c80058$137e5e70$3a7b1b50$@com> Message-ID: Pones Python en google y te llevara a muchos links.... http://www.google.com.mx/search?q=python&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:es-ES:official&client=firefox-a prueba con ese... saludos... On 9/26/07, Axel Ruiz wrote: > > Saludos a Todos, fijense que estoy muy interesado en aprender a programar, > en Phyton, quisiera saber cuales son los alcances de este lenguaje, y con > que interactuo en lo que a bases de datos se refiere, yo llevo programando > 12 anos en Visual Fox , y quisiera hacer un cambio bueno en mi vida, > tienen > algunos links que me serivan para descargar manuales para aprender desde > cero, como instalarlo y configurar o de una iniciar a trabajar en ello. > Gracias, espero su respuesta. > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > > -- ISC. Mario Jimenez Carrasco Ingeniero de Software. From ferrero.mariaeugenia en gmail.com Wed Sep 26 20:11:54 2007 From: ferrero.mariaeugenia en gmail.com (Maria Eugenia Ferrero) Date: Wed, 26 Sep 2007 15:11:54 -0300 Subject: =?ISO-8859-1?Q?Re:__gr=E1fico_en_barras_en_tiempo_real?= In-Reply-To: <46FA9C87.6070507@ehas.org> References: <85f5e1fe0709260710q5df4f56en32340a12d02c6ef4@mail.gmail.com> <46FA77A6.1080406@ehas.org> <85f5e1fe0709261019x2e6360d2gf8af53c34499f3fa@mail.gmail.com> <46FA9A39.3020204@ehas.org> <46FA9C87.6070507@ehas.org> Message-ID: <85f5e1fe0709261111l1451c5dbl620da482555e2e29@mail.gmail.com> Qué es exactamente lo que hace: dato.split()[0].strip('k') for dato in temp.split(':')[1].split(',')] ??? Perdón mi ignorancia pero probando eso tampoco me sale entonces quiero saber mas o menos que es lo que estoy intetando hacer para ir probando modificándole algo..... Me da impotencia saber que es algo tan sencillo y que no me sale...!!!!!! El día 26/09/07, Reynaldo Baquerizo Micheline escribió: > > Reynaldo Baquerizo Micheline escribió: > > Maria Eugenia Ferrero escribió: > >> Si, ya sé; es que en realidad tengo que rescatar datos de la memoria, > la > >> swap y del % de uso de la cpu. Lo de mamoria y swap podría hacerlo con > >> 'free', pero lo de la cpu solamente con top. > >> ¿Cómo sería lo de agragar un parámetro "-n1" ???? Justamente como nunca > >> acaba pienso que es lo que necesito, porque o sino con free tendría > >> que ir > >> leyendo a cada rato, o estoy equivocada? > >> > > Si nunca acaba no regresa regresa el control a tu programa. > >> > >> > >> El día 26/09/07, Arnau Sanchez escribió: > >> > >>> Maria Eugenia Ferrero escribió: > >>> > >>> > >>>> import gdchart > >>>> import sys, os > >>>> datos = map(int, str(os.system('top -b | grep Mem'))) > >>>> > > Si no me equivoco os.system ejecuta el comando y lo que devuelve es el > > estatus de retorno, es decir si fallo o fuese exitoso (0) > > Yo creo que con lo que arnau te dijo y utilizando el modulo commands > > deberías utilizarlo de estar forma > > > > import commands > > > > commands.getoutput('top -b -n1 | grep Mem') > > > > esto regresa una cadena: 'Mem: 385564k total, 378956k used, > > 6608k free, 6236k buffers' > Una forma de parsear esa cadena ( no se si la mas elegante, o la mas > eficiente) > > temp = commands.getoutput('top -b -n1 | grep Mem') > total, used, free, buffers = [dato.split()[0].strip('k') for dato in > temp.split(':')[1].split(',')] > > :-) > > Saludos, > Reynaldo > -- > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From peonblanco83 en gmail.com Wed Sep 26 20:53:39 2007 From: peonblanco83 en gmail.com (Peon Blanco) Date: Wed, 26 Sep 2007 12:53:39 -0600 Subject: python, textview y sqlite3 In-Reply-To: <46FA006B.7040901@fitbak.com> References: <118999020709251324g2c467e85sec505d8c76272bd5@mail.gmail.com> <46FA006B.7040901@fitbak.com> Message-ID: gracias por contestar lo arregle con row[0] From rbaquerizo en ehas.org Wed Sep 26 20:50:21 2007 From: rbaquerizo en ehas.org (Reynaldo Baquerizo Micheline) Date: Wed, 26 Sep 2007 13:50:21 -0500 Subject: =?ISO-8859-1?Q?gr=E1fico_en_barras_en_ti?= =?ISO-8859-1?Q?empo_real?= In-Reply-To: <85f5e1fe0709261111l1451c5dbl620da482555e2e29@mail.gmail.com> References: <85f5e1fe0709260710q5df4f56en32340a12d02c6ef4@mail.gmail.com> <46FA77A6.1080406@ehas.org> <85f5e1fe0709261019x2e6360d2gf8af53c34499f3fa@mail.gmail.com> <46FA9A39.3020204@ehas.org> <46FA9C87.6070507@ehas.org> <85f5e1fe0709261111l1451c5dbl620da482555e2e29@mail.gmail.com> Message-ID: <46FAA9ED.4060601@ehas.org> Maria Eugenia Ferrero escribió: > Qué es exactamente lo que hace: dato.split()[0].strip('k') for dato in > temp.split(':')[1].split(',')] ??? > Perdón mi ignorancia pero probando eso tampoco me sale entonces quiero saber > mas o menos que es lo que estoy intetando hacer para ir probando > modificándole algo..... > Me da impotencia saber que es algo tan sencillo y que no me sale...!!!!!! > [dato.split()[0].strip('k') for dato in temp.split(':')[1].split(',')] es una 'comprehension list' podrías conseguir dicho resultado de manera equivalente con un map def quitarK(dato): dato.split()[0].strip('k') map(quitark, temp.split(':')[1].split(',')) Ahora, si temp = 'Mem: 385564k total, 378956k used, 6608k free, 6236k buffers' temp.split(':') esta separando la cadena tomando como referencia ':' , si no pusieras nada se separan por espacios en blanco. temp.split(':') regresa una lista .... ['Mem', ' 385564k total, 379188k used, 6376k free, 5560k buffers'] temp.split(':')[1] devuelve en el 2 elemento de la lista, que es una cadena. Si vuelves a hacer split sobre esa cadena con referencia ',' (coma) separará la cadena y te devolvera una lista. --> [' 385564k total', ' 379188k used', ' 6376k free', ' 5560k buffers'] cuando utilizas map o list comprehensions lo que haces es, pasar cada elemento de la secuencia como argumento de la función, la cual se evalua y se almacena en una lista ...así para los demás elementos de la secuencia. Al final te devuelve una lista. fijate en esto, podrías hacer un for loop lista = [] for dato in dato in temp.split(':')[1].split(','): d = dato.split()[0].strip('k') lista.append(d) map te ahora algunas lineas, una list comprehension te ahorra aún mas lineas. Espero que me hayas entendido Saludos, Reynaldo From minibota en gmail.com Wed Sep 26 21:06:05 2007 From: minibota en gmail.com (=?ISO-8859-1?Q?Pavel_Mu=F1oz?=) Date: Wed, 26 Sep 2007 13:06:05 -0600 Subject: Saludos.. In-Reply-To: References: <85f5e1fe0709260710q5df4f56en32340a12d02c6ef4@mail.gmail.com> <46FA77A6.1080406@ehas.org> <000601c80058$137e5e70$3a7b1b50$@com> Message-ID: <118999020709261206r7ae0d696hb6e61d77133d35a3@mail.gmail.com> Te recomiendo esta serie de pdf... son cortos y muy claros paginaspersonales.deusto.es/dipina/publications/*Pensando*En*Python*I.pdf paginaspersonales.deusto.es/dipina/publications/*Pensando*En*Python*II.pdf paginaspersonales.deusto.es/dipina/publications/*Pensando*En*Python*III.pdf paginaspersonales.deusto.es/dipina/publications/*Pensando*En*Python*IV.pdf Saludos El día 26/09/07, Mario Jiménez Carrasco escribió: > > Pones Python en google y te llevara a muchos links.... > > > http://www.google.com.mx/search?q=python&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:es-ES:official&client=firefox-a > > prueba con ese... > > saludos... > > On 9/26/07, Axel Ruiz wrote: > > > > Saludos a Todos, fijense que estoy muy interesado en aprender a > programar, > > en Phyton, quisiera saber cuales son los alcances de este lenguaje, y > con > > que interactuo en lo que a bases de datos se refiere, yo llevo > programando > > 12 anos en Visual Fox , y quisiera hacer un cambio bueno en mi vida, > > tienen > > algunos links que me serivan para descargar manuales para aprender desde > > cero, como instalarlo y configurar o de una iniciar a trabajar en ello. > > Gracias, espero su respuesta. > > > > > > _______________________________________________ > > Python-es mailing list > > Python-es en aditel.org > > http://listas.aditel.org/listinfo/python-es > > > > > > > -- > ISC. Mario Jimenez Carrasco > Ingeniero de Software. > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From arnau en ehas.org Wed Sep 26 22:02:59 2007 From: arnau en ehas.org (Arnau Sanchez) Date: Wed, 26 Sep 2007 22:02:59 +0200 Subject: =?ISO-8859-1?Q?gr=E1fico_en_barras_en_ti?= =?ISO-8859-1?Q?empo_real?= In-Reply-To: <85f5e1fe0709261111l1451c5dbl620da482555e2e29@mail.gmail.com> References: <85f5e1fe0709260710q5df4f56en32340a12d02c6ef4@mail.gmail.com> <46FA77A6.1080406@ehas.org> <85f5e1fe0709261019x2e6360d2gf8af53c34499f3fa@mail.gmail.com> <46FA9A39.3020204@ehas.org> <46FA9C87.6070507@ehas.org> <85f5e1fe0709261111l1451c5dbl620da482555e2e29@mail.gmail.com> Message-ID: <46FABAF3.1020804@ehas.org> Maria Eugenia Ferrero escribió: > Qué es exactamente lo que hace: dato.split()[0].strip('k') for dato in > temp.split(':')[1].split(',')] ??? > Perdón mi ignorancia pero probando eso tampoco me sale entonces quiero saber > mas o menos que es lo que estoy intetando hacer para ir probando > modificándole algo..... > Me da impotencia saber que es algo tan sencillo y que no me sale...!!!!!! Tampoco creo que sea un problema tan trivial. Pero si tienes dificultades con las comprensiones de listas, es señal de que hace poco que estás con Python o que aún te falta algo de soltura... En este caso, por ejemplo, para hacerlo de forma más o menos compacta, podrías usar el módulo subprocess, expresiones regulares (módulo re) y generadores; en un primera aproximación puede no ser evidente. Cualquier solución que implique llamar una y otra vez a top no es aceptable. Hay que lanzarlo una única vez e ir leyendo datos sin esperar a que acabe (para eso se usa un objeto Popen del módulo subprocess). Antes preguntabas acerca de un parámetro del comando top, pero no tienes más que repasar su página de manual ("man top" en la shell) Te paso una posible implementación en la cual se extraen, a modo de ejemplo, tres campos (los indicados en "fields"); te resultará sencillo ampliarlo e integrarlo en tu programa. La forma de extraer los campos no es especialmente eficiente, pero de este modo la función es más sencilla de abstraer: #!/usr/bin/python import subprocess import re def process(command): return subprocess.Popen(command, stdout=subprocess.PIPE) def top(delay): command = ["top", "-b", "-d", str(delay)] return process(command) def get_fields(datainput, fields): for line in datainput: for field, regexp in fields: match = re.search(regexp, line) if match: yield field, int(match.groups()[0]) top_fields = [("total_memory", "^Mem:.*\s(\d+)k\s*total"), ("free_memory", "^Mem:.*\s(\d+)k\s*free"), ("free_swap", "^Swap:.*\s(\d+)k\s*free")] popen = top(delay=1.0) for field, value in get_fields(popen.stdout, top_fields): print field, value # hacer algo con field y value Si tienes dificultades con algo de lo que hace, repasa el tutorial y la documentación de las librerías. O en caso de problemas insalvables, vuelve a la lista :-) arnau From ferrero.mariaeugenia en gmail.com Wed Sep 26 22:38:26 2007 From: ferrero.mariaeugenia en gmail.com (Maria Eugenia Ferrero) Date: Wed, 26 Sep 2007 17:38:26 -0300 Subject: =?ISO-8859-1?Q?Re:__gr=E1fico_en_barras_en_tiempo_real?= In-Reply-To: <46FABAF3.1020804@ehas.org> References: <85f5e1fe0709260710q5df4f56en32340a12d02c6ef4@mail.gmail.com> <46FA77A6.1080406@ehas.org> <85f5e1fe0709261019x2e6360d2gf8af53c34499f3fa@mail.gmail.com> <46FA9A39.3020204@ehas.org> <46FA9C87.6070507@ehas.org> <85f5e1fe0709261111l1451c5dbl620da482555e2e29@mail.gmail.com> <46FABAF3.1020804@ehas.org> Message-ID: <85f5e1fe0709261338q673af501w7062cc273994bfe3@mail.gmail.com> La verdad es que si soy muy nueva en Python por eso seguramente mis preguntas tontas... Y es por eso que me da mucha impotencia porque sé que es algo sumamente fácil y no me está saliendo. Lamento mucho molestarlos y agradezco a quienes pierden su tiempo contestándome. Muchas gracias Reynaldo, te lo agradezco un montón. He probado lo que me dijiste y me funciona, lo que yo quería, que es que la imagen también se mueva en tiempo real. Ahora tengo otro problemita: la imagen no se me adjunta a la aplicación que yo tengo. Es decir, antes cuando sólo la tomaba y la pegaba si andaba bien, pero ahora que la imagen también corre en tiempo real no se ve en mi ventanita de la aplicación (sólo la veo en la carpeta donde la guardo). una última ayudita puede ser....???? GRACIAS.- El día 26/09/07, Arnau Sanchez escribió: > > Maria Eugenia Ferrero escribió: > > > Qué es exactamente lo que hace: dato.split()[0].strip('k') for dato in > > temp.split(':')[1].split(',')] ??? > > Perdón mi ignorancia pero probando eso tampoco me sale entonces quiero > saber > > mas o menos que es lo que estoy intetando hacer para ir probando > > modificándole algo..... > > Me da impotencia saber que es algo tan sencillo y que no me > sale...!!!!!! > > Tampoco creo que sea un problema tan trivial. Pero si tienes > dificultades con las comprensiones de listas, es señal de que hace poco > que estás con Python o que aún te falta algo de soltura... > > En este caso, por ejemplo, para hacerlo de forma más o menos compacta, > podrías usar el módulo subprocess, expresiones regulares (módulo re) y > generadores; en un primera aproximación puede no ser evidente. > > Cualquier solución que implique llamar una y otra vez a top no es > aceptable. Hay que lanzarlo una única vez e ir leyendo datos sin esperar > a que acabe (para eso se usa un objeto Popen del módulo subprocess). > Antes preguntabas acerca de un parámetro del comando top, pero no tienes > más que repasar su página de manual ("man top" en la shell) > > Te paso una posible implementación en la cual se extraen, a modo de > ejemplo, tres campos (los indicados en "fields"); te resultará sencillo > ampliarlo e integrarlo en tu programa. La forma de extraer los campos no > es especialmente eficiente, pero de este modo la función es más sencilla > de abstraer: > > #!/usr/bin/python > import subprocess > import re > > def process(command): > return subprocess.Popen(command, stdout=subprocess.PIPE) > > def top(delay): > command = ["top", "-b", "-d", str(delay)] > return process(command) > > def get_fields(datainput, fields): > for line in datainput: > for field, regexp in fields: > match = re.search(regexp, line) > if match: > yield field, int(match.groups()[0]) > > top_fields = [("total_memory", "^Mem:.*\s(\d+)k\s*total"), > ("free_memory", "^Mem:.*\s(\d+)k\s*free"), > ("free_swap", "^Swap:.*\s(\d+)k\s*free")] > > popen = top(delay=1.0) > for field, value in get_fields(popen.stdout, top_fields): > print field, value # hacer algo con field y value > > Si tienes dificultades con algo de lo que hace, repasa el tutorial y la > documentación de las librerías. O en caso de problemas insalvables, > vuelve a la lista :-) > > arnau > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From abarzuaf en yahoo.es Thu Sep 27 00:02:21 2007 From: abarzuaf en yahoo.es (cris abar) Date: Thu, 27 Sep 2007 00:02:21 +0200 (CEST) Subject: Interactuar con objetos 3D Message-ID: <336334.1602.qm@web25609.mail.ukl.yahoo.com> Hola a Todos. Este es mi primer post, y felicito la cantidad de correos que se envian y la amabilidad con que contestan, bueno para no dar más lata me refiero a mi consulta. Diseñé en Blender una figura Humana ( bastante simple, con esferas y cuadrados), y quisiera crear un programa en Python que me hiciera lo siguiente: 1) Me cree una ventana en donde me carge el Modelo hecho en Blender. 2) Al hacer un clic sobre el modelo,(por ejemplo en un brazo o una pierna), se indique en un cuadro de texto que es lo que se seleccionó. 3)La informacion del modelo debe estar almacenado en una base de datos. Bueno, lo que se me ocurre es lo siguiente: 1) Realizarla con WxPython, ayudado por el Boa constructor 2) Conectarme a un motor Grafico (¿Ogre3d?) 3) Almacenar la informacion del cuerpo en SQLITE. En realidad tengo una idea muy general, y no se si es posible realizar lo que pienso, agradezco cualquier ayuda o sugerencia. Saludos --------------------------------- Sé un Mejor Amante del Cine ¿Quieres saber cómo? ¡Deja que otras personas te ayuden!. From minibota en gmail.com Thu Sep 27 00:50:34 2007 From: minibota en gmail.com (=?ISO-8859-1?Q?Pavel_Mu=F1oz?=) Date: Wed, 26 Sep 2007 16:50:34 -0600 Subject: Interactuar con objetos 3D In-Reply-To: <336334.1602.qm@web25609.mail.ukl.yahoo.com> References: <336334.1602.qm@web25609.mail.ukl.yahoo.com> Message-ID: <118999020709261550m4358a2a2x5d34a7170a3f8cae@mail.gmail.com> Dado q tenes instalado el Blender, deberias poder hacer: import Blender Te paso un link q creo q ayuda aunque sea un poco. http://klopes.iespana.es/tutoriales/pythonlopes/pythonlopes1.htm El día 26/09/07, cris abar escribió: > > Hola a Todos. > > Este es mi primer post, y felicito la cantidad de correos que se envian y > la amabilidad con que contestan, bueno para no dar más lata me refiero a mi > consulta. > > Diseñé en Blender una figura Humana ( bastante simple, con esferas y > cuadrados), y quisiera crear un programa en Python que me hiciera lo > siguiente: > > 1) Me cree una ventana en donde me carge el Modelo hecho en Blender. > 2) Al hacer un clic sobre el modelo,(por ejemplo en un brazo o una > pierna), se indique en un cuadro de texto que es lo que se seleccionó. > 3)La informacion del modelo debe estar almacenado en una base de datos. > > Bueno, lo que se me ocurre es lo siguiente: > > 1) Realizarla con WxPython, ayudado por el Boa constructor > 2) Conectarme a un motor Grafico (¿Ogre3d?) > 3) Almacenar la informacion del cuerpo en SQLITE. > > En realidad tengo una idea muy general, y no se si es posible realizar lo > que pienso, agradezco cualquier ayuda o sugerencia. > > Saludos > > > --------------------------------- > > Sé un Mejor Amante del Cine > ¿Quieres saber cómo? ¡Deja que otras personas te ayuden!. > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From abarzuaf en yahoo.es Thu Sep 27 01:12:52 2007 From: abarzuaf en yahoo.es (cris abar) Date: Thu, 27 Sep 2007 01:12:52 +0200 (CEST) Subject: Interactuar con objetos 3D In-Reply-To: <118999020709261550m4358a2a2x5d34a7170a3f8cae@mail.gmail.com> References: <118999020709261550m4358a2a2x5d34a7170a3f8cae@mail.gmail.com> Message-ID: <439320.53846.qm@web25615.mail.ukl.yahoo.com> Gracias por tu respuesta Pavel No es exactamente lo que quiero, mi idea no es trabajar con el editor de Python en Blender, si no que yo creé un objeto en blender y quiero manipularlo con Python, osea, moverlo,rotarlo, seleccionar una parte de el con el mouse, y que se me indique que parte estoy seleccionando, y con ese dato compararlo en una base de datos(Puede se Sqlite)para saber sus caracteristicas. Todo esto sin abrir el Blender. Vi un Ejemplo del SDK 7.0 de visual Basic en donde manipulas un Motor en 3D, lo puedes rotar, y cuando haces clic en cualquier parte de el, se conecta a una base de datos, para indicarte la existencia de esa parte, carcateristicas, etc. Bueno, estoy al tanto de cualquier sugerencia. Saludos y gracias Pavel Muñoz escribió: Dado q tenes instalado el Blender, deberias poder hacer: import Blender Te paso un link q creo q ayuda aunque sea un poco. http://klopes.iespana.es/tutoriales/pythonlopes/pythonlopes1.htm El día 26/09/07, cris abar escribió: > > Hola a Todos. > > Este es mi primer post, y felicito la cantidad de correos que se envian y > la amabilidad con que contestan, bueno para no dar más lata me refiero a mi > consulta. > > Diseñé en Blender una figura Humana ( bastante simple, con esferas y > cuadrados), y quisiera crear un programa en Python que me hiciera lo > siguiente: > > 1) Me cree una ventana en donde me carge el Modelo hecho en Blender. > 2) Al hacer un clic sobre el modelo,(por ejemplo en un brazo o una > pierna), se indique en un cuadro de texto que es lo que se seleccionó. > 3)La informacion del modelo debe estar almacenado en una base de datos. > > Bueno, lo que se me ocurre es lo siguiente: > > 1) Realizarla con WxPython, ayudado por el Boa constructor > 2) Conectarme a un motor Grafico (¿Ogre3d?) > 3) Almacenar la informacion del cuerpo en SQLITE. > > En realidad tengo una idea muy general, y no se si es posible realizar lo > que pienso, agradezco cualquier ayuda o sugerencia. > > Saludos > > > --------------------------------- > > Sé un Mejor Amante del Cine > ¿Quieres saber cómo? ¡Deja que otras personas te ayuden!. > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es --------------------------------- Sé un Mejor Amante del Cine ¿Quieres saber cómo? ¡Deja que otras personas te ayuden!. From gagsl-py2 en yahoo.com.ar Thu Sep 27 05:09:04 2007 From: gagsl-py2 en yahoo.com.ar (Gabriel Genellina) Date: Thu, 27 Sep 2007 00:09:04 -0300 Subject: Manejo de archivos GNU/Linux - Win2 References: <46FA5EE3.10803@gmail.com> <8d9e208f0709260747p51475dd7hf0be5ffe7619d8dd@mail.gmail.com> <46FA7354.2040800@gmail.com> Message-ID: En Wed, 26 Sep 2007 11:57:24 -0300, Reinaldo Garcia escribi?: >>> Mi consulta de fondo es: ¿como maneja python la escritura, >>> específicamente el PATH de escritura? ya que, por ejemplo. e GNU/Linux >>> en archivo podría guardarse en $HOME/.conf-python y en win2 C:\document >>> and setting\usuario\ >>> >>> Como le indico a python estas rutas o PATH? >> Que tal. >> Creo que lo que buscas es: >> os.environ['HOME'] Un poco más facil sería usar os.path.normpath(os.path.expanduser('~/miprograma.config')) y ConfigObj/ConfigParser para mantener los datos de configuracion. -- Gabriel Genellina ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From rolandojtorres en gmail.com Thu Sep 27 13:02:24 2007 From: rolandojtorres en gmail.com (=?UTF-8?Q?Rolando_Jos=C3=A9_Torres_S=C3=A1nchez?=) Date: Thu, 27 Sep 2007 06:02:24 -0500 Subject: Interactuar con objetos 3D In-Reply-To: <439320.53846.qm@web25615.mail.ukl.yahoo.com> References: <118999020709261550m4358a2a2x5d34a7170a3f8cae@mail.gmail.com> <439320.53846.qm@web25615.mail.ukl.yahoo.com> Message-ID: <6a39a1d0709270402w3f6455cevcfacca1c7783b6c@mail.gmail.com> En TCL existe una dll llamada tkogl, que permite crear un widget opengl, compatible en Windows y Linux, que te permitiria trabajar con ella, seleccionando caras, puntos u objetos, y pasando al programa que parte del modelo fue seleccionado. En teoria, el tkinter de Python puede llamar a las librerias que usa TCL, luego tambien puedes usar las librerias para conectarte a OPENGL con tkogl, o a la base de datos Sqlite o a MySQL. http://hct.ece.ubc.ca/research/tkogl/tkogl/index.html http://wiki.tcl.tk/_search?S=opengl Aunque si no quieres usar librerias puedes construir con tkinter un canvas que muestra figuras .OBJ, en 3D asi como esta. http://gersoo.free.fr/wiki/w14283/3display.jpg El codigo esta disponible en http://wiki.tcl.tk/14283 El 26/09/07, cris abar escribió: > Gracias por tu respuesta Pavel > No es exactamente lo que quiero, mi idea no es trabajar con el editor de > Python en Blender, si no que yo creé un objeto en blender y quiero > manipularlo con Python, osea, moverlo,rotarlo, seleccionar una parte de el > con el mouse, y que > se me indique que parte estoy seleccionando, y con ese dato compararlo en > una base de datos(Puede se Sqlite)para saber sus caracteristicas. > Todo esto sin abrir el Blender. > Vi un Ejemplo del SDK 7.0 de visual Basic en donde manipulas un Motor en 3D, > lo puedes rotar, y cuando haces clic en cualquier parte de el, se conecta a > una base de datos, para indicarte la existencia de esa parte, > carcateristicas, etc. > > Bueno, estoy al tanto de cualquier sugerencia. > > Saludos y gracias > Pavel Muñoz escribió: Dado q tenes instalado el > Blender, deberias poder hacer: > > import Blender > > Te paso un link q creo q ayuda aunque sea un poco. > > http://klopes.iespana.es/tutoriales/pythonlopes/pythonlopes1.htm > > > > El día 26/09/07, cris abar escribió: > > > > Hola a Todos. > > > > Este es mi primer post, y felicito la cantidad de correos que se envian y > > la amabilidad con que contestan, bueno para no dar más lata me refiero a > mi > > consulta. > > > > Diseñé en Blender una figura Humana ( bastante simple, con esferas y > > cuadrados), y quisiera crear un programa en Python que me hiciera lo > > siguiente: > > > > 1) Me cree una ventana en donde me carge el Modelo hecho en Blender. > > 2) Al hacer un clic sobre el modelo,(por ejemplo en un brazo o una > > pierna), se indique en un cuadro de texto que es lo que se > seleccionó. > > 3)La informacion del modelo debe estar almacenado en una base de datos. > > > > Bueno, lo que se me ocurre es lo siguiente: > > > > 1) Realizarla con WxPython, ayudado por el Boa constructor > > 2) Conectarme a un motor Grafico (¿Ogre3d?) > > 3) Almacenar la informacion del cuerpo en SQLITE. > > > > En realidad tengo una idea muy general, y no se si es posible realizar lo > > que pienso, agradezco cualquier ayuda o sugerencia. > > > > Saludos > > > > > > --------------------------------- > > > > Sé un Mejor Amante del Cine > > ¿Quieres saber cómo? ¡Deja que otras personas te ayuden!. > > _______________________________________________ > > Python-es mailing list > > Python-es en aditel.org > > http://listas.aditel.org/listinfo/python-es > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > > > > --------------------------------- > > Sé un Mejor Amante del Cine > ¿Quieres saber cómo? ¡Deja que otras personas te ayuden!. > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > -- Rolando José Torres Sánchez TCL/TK inside Python MSN:rolandojtorres en hotmail.com ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From abarzuaf en yahoo.es Thu Sep 27 14:52:05 2007 From: abarzuaf en yahoo.es (cris abar) Date: Thu, 27 Sep 2007 14:52:05 +0200 (CEST) Subject: Interactuar con objetos 3D In-Reply-To: <6a39a1d0709270402w3f6455cevcfacca1c7783b6c@mail.gmail.com> References: <6a39a1d0709270402w3f6455cevcfacca1c7783b6c@mail.gmail.com> Message-ID: <102757.36009.qm@web25604.mail.ukl.yahoo.com> ¡Muchas Gracias Rolando!, Es exactamente lo que queria. Saludos. Rolando José Torres Sánchez escribió: En TCL existe una dll llamada tkogl, que permite crear un widget opengl, compatible en Windows y Linux, que te permitiria trabajar con ella, seleccionando caras, puntos u objetos, y pasando al programa que parte del modelo fue seleccionado. En teoria, el tkinter de Python puede llamar a las librerias que usa TCL, luego tambien puedes usar las librerias para conectarte a OPENGL con tkogl, o a la base de datos Sqlite o a MySQL. http://hct.ece.ubc.ca/research/tkogl/tkogl/index.html http://wiki.tcl.tk/_search?S=opengl Aunque si no quieres usar librerias puedes construir con tkinter un canvas que muestra figuras .OBJ, en 3D asi como esta. http://gersoo.free.fr/wiki/w14283/3display.jpg El codigo esta disponible en http://wiki.tcl.tk/14283 El 26/09/07, cris abar escribió: > Gracias por tu respuesta Pavel > No es exactamente lo que quiero, mi idea no es trabajar con el editor de > Python en Blender, si no que yo creé un objeto en blender y quiero > manipularlo con Python, osea, moverlo,rotarlo, seleccionar una parte de el > con el mouse, y que > se me indique que parte estoy seleccionando, y con ese dato compararlo en > una base de datos(Puede se Sqlite)para saber sus caracteristicas. > Todo esto sin abrir el Blender. > Vi un Ejemplo del SDK 7.0 de visual Basic en donde manipulas un Motor en 3D, > lo puedes rotar, y cuando haces clic en cualquier parte de el, se conecta a > una base de datos, para indicarte la existencia de esa parte, > carcateristicas, etc. > > Bueno, estoy al tanto de cualquier sugerencia. > > Saludos y gracias > Pavel Muñoz escribió: Dado q tenes instalado el > Blender, deberias poder hacer: > > import Blender > > Te paso un link q creo q ayuda aunque sea un poco. > > http://klopes.iespana.es/tutoriales/pythonlopes/pythonlopes1.htm > > > > El día 26/09/07, cris abar escribió: > > > > Hola a Todos. > > > > Este es mi primer post, y felicito la cantidad de correos que se envian y > > la amabilidad con que contestan, bueno para no dar más lata me refiero a > mi > > consulta. > > > > Diseñé en Blender una figura Humana ( bastante simple, con esferas y > > cuadrados), y quisiera crear un programa en Python que me hiciera lo > > siguiente: > > > > 1) Me cree una ventana en donde me carge el Modelo hecho en Blender. > > 2) Al hacer un clic sobre el modelo,(por ejemplo en un brazo o una > > pierna), se indique en un cuadro de texto que es lo que se > seleccionó. > > 3)La informacion del modelo debe estar almacenado en una base de datos. > > > > Bueno, lo que se me ocurre es lo siguiente: > > > > 1) Realizarla con WxPython, ayudado por el Boa constructor > > 2) Conectarme a un motor Grafico (¿Ogre3d?) > > 3) Almacenar la informacion del cuerpo en SQLITE. > > > > En realidad tengo una idea muy general, y no se si es posible realizar lo > > que pienso, agradezco cualquier ayuda o sugerencia. > > > > Saludos > > > > > > --------------------------------- > > > > Sé un Mejor Amante del Cine > > ¿Quieres saber cómo? ¡Deja que otras personas te ayuden!. > > _______________________________________________ > > Python-es mailing list > > Python-es en aditel.org > > http://listas.aditel.org/listinfo/python-es > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > > > > --------------------------------- > > Sé un Mejor Amante del Cine > ¿Quieres saber cómo? ¡Deja que otras personas te ayuden!. > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > -- Rolando José Torres Sánchez TCL/TK inside Python MSN:rolandojtorres en hotmail.com _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es --------------------------------- Sé un Mejor Amante del Cine ¿Quieres saber cómo? ¡Deja que otras personas te ayuden!. From javi en bertayjavi.com Thu Sep 27 15:47:24 2007 From: javi en bertayjavi.com (Javi) Date: Thu, 27 Sep 2007 15:47:24 +0200 Subject: comsulta sobre mysql Message-ID: <001201c8010c$f03687c0$2201a8c0@portatil> hola, tengo una duda sobre como enfocar el usar mysql con un programita que estoy haciendo, la cuestion es que no se si debo crear una conexion con la base de datos al principio de la aplicacion y mantenerla abierta durante toda la ejecucion del programa de manera que lo unico que hago son crear cursores con las consultas a medida que los necesite, pero con la conexion abierta, o por el contrario crear la conexion solo cunado necesite los datos y cerrarla despues y volverla a abrir aunque esto signifique que pueda tener varias conexiones abiertas a la vez. gracias por vuestra ayuda From claudio.quezada.r en gmail.com Thu Sep 27 16:23:01 2007 From: claudio.quezada.r en gmail.com (Claudio A. Quezada R.) Date: Thu, 27 Sep 2007 10:23:01 -0400 Subject: Off topic: Era: Proyecto de mapa geografico de climas In-Reply-To: <91d218430709251449sa9301b0kdc253116f466e476@mail.gmail.com> References: <737bb1390709250928p26880fbk1e5cd7f73308a454@mail.gmail.com> <91d218430709251449sa9301b0kdc253116f466e476@mail.gmail.com> Message-ID: <737bb1390709270723k2778933bg367e1d898a60abd2@mail.gmail.com> Hola José, Te agradezco tus comentarios, con ogr2ogr me resultó muy fácil pasar el shp a kml. Saludos, Claudio Quezada El 25/09/07, Jose Gomez-Dans escribió: > Hola, > > On 9/25/07, Claudio A. Quezada R. wrote: > > José, hablando de KML... Yo hace unos meses tenía la idea de manejar > > google maps en una ventana browser en un programa bajo python y PyQt, > > previamente habiendo generado un kml desde una extension en arcview... > > Bueno, el asunto es que nunca pude ver bien el famoso kml (un poligono > > de una cuenca hidrografica), asi es que opte por abrir una imagen > > georeferenciada y su vector respectivo, con ogr y gdal. Y va bastante > > bien. > > El KML (y el tratamiento de coberturas vectoriales) se complica cuando > tienes polígonos con topologías raras (con huecos y cosas así). La > manera más fácil de ir de Shape a KML (sin pasar por instalar PostGIS, > que tiene muchas ventajas) es con ogr2ogr (un programa parte de > OGR/GDAL). Sencillamente, te saca el KML (los atributos de la tabla > asociada también los mete en el "globo" del mapa). También ten en > cuenta que para visualizar en la Web, Google Maps tiene límites al > tamaño del fichero (creo que es uno ó dos megas), y que los trucos de > servir trozos de la capa según el nivel de zoom (SuperOverlays; aun no > he llegado a esa parte del manual :D) es algo que OGR no hace. > > Con OGR, es tan sencillo como hacer > ogr2ogr -f "KML" -s_srs -t_srs "EPSG:4326" > > > Le puedes poner opciones para hacer una selcción por atributo (-where > ...), espacial... Si no tienes que reproyectar, te ahorras la parte > del s_srs t_srs (GMaps usa longitud, latitud WGS84). > > > Ahora con tus comentarios, se me vino a la cabeza de que el kml pudo > > haber sido generado de forma errónea (no lo pude cargar ni en la api > > Lo bueno que tienen es que son XML, y por ello, tienen que validar (si > los haces con el DOM, no hay problemas, pero si los haces a base de > prints y otras técnicas rústico-ruralizantes como yo, pues hay lío), y > te quitas de encima los problemas de sintaxis. feedvalidator.org es > una herramienta útil para esto. > > > de google maps en una pagina web, ni en google earth). Mi pregunta... > > Abrir un archivo vectorial, y pasarlo a kml debe ser relativamente > > fácil... acabo de encontrar pykml, ¿a eso te refieres tu? > > OGR funciona bien, PostGIS es otra opción, y me suena que haya un > proyecto de GDAL/OGR que hace los dichosos "SuperOverlays" > , otro para que KML sea un > ciudadano completo en GDAL (leer, escribir...). > > Por lo que se ve, el KML va a ser el nuevo Shape :) > > Saludos, > J > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > -- Claudio Quezada Romegialli Ingeniero Ambiental (02)7321665 - 81466049 From pych3m4 en gmail.com Thu Sep 27 16:35:17 2007 From: pych3m4 en gmail.com (Chema Cortes) Date: Thu, 27 Sep 2007 16:35:17 +0200 Subject: comsulta sobre mysql In-Reply-To: <001201c8010c$f03687c0$2201a8c0@portatil> References: <001201c8010c$f03687c0$2201a8c0@portatil> Message-ID: <2c9fb0dd0709270735g1a5a8dcdo940f35eda19b2a97@mail.gmail.com> El 27/09/07, Javi escribió: > hola, tengo una duda sobre como enfocar el usar mysql con un programita que estoy haciendo, la cuestion es que no se si debo crear una conexion con la base de datos al principio de la aplicacion y mantenerla abierta durante toda la ejecucion del programa de manera que lo unico que hago son crear cursores con las consultas a medida que los necesite, pero con la conexion abierta, o por el contrario crear la conexion solo cunado necesite los datos y cerrarla despues y volverla a abrir aunque esto signifique que pueda tener varias conexiones abiertas a la vez. No conozco si en alguna ultimísima versión de mysql se ha mejorado este tema, pero mysql no hace buen uso de los cursores tal como lo hacen otros gestores de bases de datos. Con mysql se debe pensar siempre en "conexiones", y en que éstas estén abiertas el tiempo mínimo imprescindible. Pero también podría ser recomendable el otro enfoque de una única conexión dependiendo de la naturaleza de tu aplicación, del número de usuarios concurrentes, número de transacciones, etc. Si tu sistema va a ser masivamente transaccional, considera que sólo una conexión va a poder consolidar los datos, con lo que tener muchas conexiones abiertas a la vez podrían entorpecerse. From marcelo.schiavone en gmail.com Thu Sep 27 17:10:12 2007 From: marcelo.schiavone en gmail.com (marcelo schiavone) Date: Thu, 27 Sep 2007 12:10:12 -0300 Subject: testing Message-ID: <931b28a60709270810o71717bd1l83ad02fab773272e@mail.gmail.com> Hola lista. He realizado una aplicacion web python con el framework Webware y cheetah. Que herramienta me recomiendan para realizar testing sobre esta aplicacion?? Saludos From claudio.quezada.r en gmail.com Fri Sep 28 20:11:58 2007 From: claudio.quezada.r en gmail.com (Claudio A. Quezada R.) Date: Fri, 28 Sep 2007 14:11:58 -0400 Subject: =?iso-8859-1?q?error_en_m=E9todo_para_recuperar_=EDn?= =?iso-8859-1?q?dice_en_lista?= Message-ID: <737bb1390709281111n6fe13ee9t7aa8e93376a1368a@mail.gmail.com> Hola, Tengo el siguiente problema. Tengo una lista creada de acuerdo a una grilla de datos, algo así: [[1,2,3,4,5],[6,7,8,9,0],[11,22,33,44,55]]. Quiero recuperar los índices: 1) de la primera columna en la que aparece mi "valor", 2) todos los índices fila que aparece repetido mi "valor", en esa columna . La llamo así (enviándole la lista de valores, y mi valor "gremio" a buscar: def recorrerGremios(valores, gremio): indice = [] for columna in valores: for fila in columna: if fila == gremio: indice.append(columna.index(fila)) continue #optativo if len(indice)>0: return [valores.index(columna),indice] return False El problema es que no me retorna todos los indices "fila", sino, me retorna el indice a la primera fila, repetido tantas veces como aparezca mi gremio en la columna, algo asi: [3,[0,0,0,0,0,0]] #llamada con 1 gremio [0,[0]] #llamada con otro gremio [2,[6,6] #llamada con otro gremio más. También probé agregándole el continue y poniéndolo dentro del if gremio==fila, y dentro del 2do for, incluso con un break (nada que ver), y con un pass. Debe de haber algún detalle que se me escapa... Agradecería sus aportes. Saludos, -- Claudio Quezada Romegialli Ingeniero Ambiental (02)7321665 - 81466049 From claudio.quezada.r en gmail.com Fri Sep 28 20:21:43 2007 From: claudio.quezada.r en gmail.com (Claudio A. Quezada R.) Date: Fri, 28 Sep 2007 14:21:43 -0400 Subject: =?iso-8859-1?q?Re=3A_error_en_m=E9todo_para_recupera?= =?iso-8859-1?q?r_=EDndice_en_lista?= In-Reply-To: <737bb1390709281111n6fe13ee9t7aa8e93376a1368a@mail.gmail.com> References: <737bb1390709281111n6fe13ee9t7aa8e93376a1368a@mail.gmail.com> Message-ID: <737bb1390709281121g6f670171p60347136d7632dba@mail.gmail.com> brrrrrp, me respondo yo mismo. Index devuelve el "primer" indice en que aparece un valor en la lista... entonces habria que eliminar esa fila, y ya esta... El 28/09/07, Claudio A. Quezada R. escribió: > Hola, > > Tengo el siguiente problema. Tengo una lista creada de acuerdo a una > grilla de datos, algo así: [[1,2,3,4,5],[6,7,8,9,0],[11,22,33,44,55]]. > > Quiero recuperar los índices: 1) de la primera columna en la que > aparece mi "valor", 2) todos los índices fila que aparece repetido mi > "valor", en esa columna . > > La llamo así (enviándole la lista de valores, y mi valor "gremio" a buscar: > > def recorrerGremios(valores, gremio): > indice = [] > for columna in valores: > for fila in columna: > if fila == gremio: > indice.append(columna.index(fila)) > continue #optativo > > if len(indice)>0: > return [valores.index(columna),indice] > > return False > > El problema es que no me retorna todos los indices "fila", sino, me > retorna el indice a la primera fila, repetido tantas veces como > aparezca mi gremio en la columna, algo asi: > > [3,[0,0,0,0,0,0]] #llamada con 1 gremio > [0,[0]] #llamada con otro gremio > [2,[6,6] #llamada con otro gremio más. > > También probé agregándole el continue y poniéndolo dentro del if > gremio==fila, y dentro del 2do for, incluso con un break (nada que > ver), y con un pass. > > Debe de haber algún detalle que se me escapa... Agradecería sus aportes. > > Saludos, > > > -- > Claudio Quezada Romegialli > Ingeniero Ambiental > (02)7321665 - 81466049 > -- Claudio Quezada Romegialli Ingeniero Ambiental (02)7321665 - 81466049 From tecnicosrocha en adinet.com.uy Fri Sep 28 21:23:08 2007 From: tecnicosrocha en adinet.com.uy (Tecnicos) Date: Fri, 28 Sep 2007 16:23:08 -0300 Subject: wx.EVENTOS Message-ID: <46FD549C.7020006@adinet.com.uy> Hola lista! He pasado un buen rato cortando y pegando código de los ejemplos de wxPython y alguno que otro que he visto en google. También he intentado leer aquí [0] y aquí [1], mas mi inglés no me ayuda. El cut & paste dio como resultado esto: [2] El comportamiento que busco y no lo he conseguido es que cuando en el textCtrl 'buscar' escriba algo, se seleccione el item correspondiente en el listbox (esto lo hace), pero además también se actualizen los demás textControl que hay en el form (nombre, apellido y dirección). Otra cosa, en la documentación encontré muchas constantes wx.CONSTANTE pero no pude encontrar un listado con todas las constantes definidas para los eventos. Cualquier pista es bienvenida ;) [0] http://www.wxwidgets.org/manuals/2.6/wx_contents.html [1] http://www.wxwidgets.org/manuals/stable/wx_wxlistbox.html#wxlistbox [2] http://codigo.chuelmo.net/eventos.py From arnau en ehas.org Fri Sep 28 22:36:25 2007 From: arnau en ehas.org (Arnau Sanchez) Date: Fri, 28 Sep 2007 22:36:25 +0200 Subject: error en =?ISO-8859-1?Q?m=E9todo_para_recupe?= =?ISO-8859-1?Q?rar_=EDndice_en_lista?= In-Reply-To: <737bb1390709281111n6fe13ee9t7aa8e93376a1368a@mail.gmail.com> References: <737bb1390709281111n6fe13ee9t7aa8e93376a1368a@mail.gmail.com> Message-ID: <46FD65C9.5080707@ehas.org> Claudio A. Quezada R. escribió: > La llamo así (enviándole la lista de valores, y mi valor "gremio" a buscar: > > def recorrerGremios(valores, gremio): > indice = [] > for columna in valores: > for fila in columna: > if fila == gremio: > indice.append(columna.index(fila)) > continue #optativo > > if len(indice)>0: > return [valores.index(columna),indice] > > return False > > El problema es que no me retorna todos los indices "fila", sino, me > retorna el indice a la primera fila, repetido tantas veces como > aparezca mi gremio en la columna, algo asi: > > [3,[0,0,0,0,0,0]] #llamada con 1 gremio > [0,[0]] #llamada con otro gremio > [2,[6,6] #llamada con otro gremio más. Claudio, dices que lo has arreglado, pero aún así, tu implementación parece demasiado verbosa. Si pones un ejemplo real (porque en los que mandas no indicas cómo llamas a la función, ni parece concordar con la matriz de valores del principio del correo) será muy útil. Creo que lo que necesitas es "enumerate", ¿no? From gloaiza en unicauca.edu.co Fri Sep 28 22:40:25 2007 From: gloaiza en unicauca.edu.co (gloaiza en unicauca.edu.co) Date: Fri, 28 Sep 2007 15:40:25 -0500 (COT) Subject: Consulta.... Message-ID: <20070928204025.466227D9387@atenea.unicauca.edu.co> Hola a todos. He ingresado apenas al mundo PYTHON bajo windows. Leí sobre la posibilidad de incorporar el Emacs a pyhton. Cree un archivo .emacs como se me sugirió pero el Emacs no cambió para nada. Así que aunque puedo escribir un programa en la ventana principal de python no puedo crear uno externo para luego compilarlo. Gracias. ----------------------------- Gerardo Arturo Loaiza Universidad Del Cauca Departamento De Matemáticas Oficina 211 Teléfono (2)8209800 Ext 2364 Celular 315 4862567 -------------------------------------- MENSAJE ENVIADO CON WMAIL 1.01 UNIVERSIDAD DEL CAUCA ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From gagsl-py2 en yahoo.com.ar Sat Sep 29 05:50:47 2007 From: gagsl-py2 en yahoo.com.ar (Gabriel Genellina) Date: Sat, 29 Sep 2007 00:50:47 -0300 Subject: Consulta.... References: <20070928204025.466227D9387@atenea.unicauca.edu.co> Message-ID: En Fri, 28 Sep 2007 17:40:25 -0300, escribi?: > He ingresado apenas al mundo PYTHON bajo windows. Leí sobre la > posibilidad de incorporar el Emacs a pyhton. Cree un archivo .emacs como > se me sugirió pero el Emacs no cambió para nada. Así que aunque puedo > escribir un programa en la ventana principal de python no puedo crear > uno externo para luego compilarlo. Uhm, tal vez aprender Python al mismo tiempo que Emacs sea demasiado... Un programa se puede escribir con cualquier editor de textos, incluso con el Block de Notas de Windows. Asi que siempre se puede "crear uno externo para luego compilarlo." Claro que si el editor (Emacs, o el que fuere) entiende el lenguaje, es mucho mas comodo, pero no tenerlo no es una limitacion absoluta. -- Gabriel Genellina ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es