From morillas en posta.unizar.es Wed Dec 1 00:08:52 2004 From: morillas en posta.unizar.es (luis miguel morillas) Date: Wed, 1 Dec 2004 00:08:52 +0100 Subject: Dia de la semana y de numero a palabras. In-Reply-To: <20041130215755.66016.qmail@web41204.mail.yahoo.com> References: <20041130215755.66016.qmail@web41204.mail.yahoo.com> Message-ID: <20041130230852.GA5273@marmota.unizar.es> Asunto: [Python-es] Dia de la semana y de numero a palabras. Fecha: mar, nov 30, 2004 at 01:57:55 -0800 Citando a FERNANDO VILLARROEL (fvillarroel en yahoo.com): > Hola existe alguna funcion que dependiendo de la fecha > me diga que dia de la semana es, ejemplo LUNES, > MARTES, MIERCOLES, etc, o que entregue un entero de 0 > a 5 donde 0 es Domingo, 1 Lunes, etc. > me parece que es el séptimo elemento de la lista que te devuelven las funciones de time: import time time.localtime()[6] > Ocurre que estoy trabajando en un modulo para imprimir > Facturas, alguien tiene o conoce algun modulo o clase > que convierta un valor en numeros a su correspondiente > valor en palabras. > > Fernando Villarroel N. > > > > __________________________________ > Do you Yahoo!? > Meet the all-new My Yahoo! - Try it today! > http://my.yahoo.com > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es -- Luis Miguel No a las patentes de software en Europa EuropeSwPatentFree http://EuropeSwPatentFree.hispalinux.es From pepe en diselpro.com Wed Dec 1 00:43:56 2004 From: pepe en diselpro.com (Pepe Aracil) Date: Wed, 1 Dec 2004 00:43:56 +0100 Subject: Dia de la semana y de numero a palabras. In-Reply-To: <20041130215755.66016.qmail@web41204.mail.yahoo.com> References: <20041130215755.66016.qmail@web41204.mail.yahoo.com> Message-ID: <200412010043.56629.pepe@diselpro.com> El Martes, 30 de Noviembre de 2004 22:57, FERNANDO VILLARROEL escribió: > Hola existe alguna funcion que dependiendo de la fecha > me diga que dia de la semana es, ejemplo LUNES, > MARTES, MIERCOLES, etc, o que entregue un entero de 0 > a 5 donde 0 es Domingo, 1 Lunes, etc. > > Ocurre que estoy trabajando en un modulo para imprimir > Facturas, alguien tiene o conoce algun modulo o clase > que convierta un valor en numeros a su correspondiente > valor en palabras. > > Fernando Villarroel N. > > > > __________________________________ > Do you Yahoo!? > Meet the all-new My Yahoo! - Try it today! > http://my.yahoo.com Creas una tupla con los 9 elementos que se indican en el módulo time y rellenas los datos de la fecha, el resto los pones a 0 Ej import time fecha=(2004,12,1,0,0,0,0,0,0) #ahora sacamos el día de la semana de fecha dia_semana = time.localtime(time.mktime(fecha))[6] Saludos. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From pepe en diselpro.com Wed Dec 1 01:49:14 2004 From: pepe en diselpro.com (Pepe Aracil) Date: Wed, 1 Dec 2004 01:49:14 +0100 Subject: Habemus Python 2.4 In-Reply-To: <41ACD0E6.8010806@sicem.biz> References: <200411301417.57555.py@ch3m4.org> <1101838794.6148.9.camel@localhost> <41ACD0E6.8010806@sicem.biz> Message-ID: <200412010149.14819.pepe@diselpro.com> Ya lo entiendo :D Me he hecho mi primer decorador y funaciona :DD Ej. def crono(f): def timer_wrap(*args,**kwargs): t1=time.time() ret=f(*args,**kwargs) print "Tiempo:%f" % (time.time()-t1) return ret return timer_wrap @crono def delay(seconds): time.sleep(seconds) delay(1) Tiempo:1.000013 ---- Saludos. El Martes, 30 de Noviembre de 2004 20:58, Ernesto Revilla escribió: > Los decoradores básicamente manipulan objetos de función, de manera que: > class A: > @decorar > def met1(....): > .... > > > met1 = decorar(met1) > > de esa manera: > > class A: > @staticmethod > def met1(arg1): > .... > > se equivale a: > > class A: > def met1(arg1): > .... > > met1=staticmethod(met1) > > es fácil hacer otros decoradores, simplemente hay que crear una función > que recibe como argumento una función que la manipula: > > esta función crea un wrapper que comprueba que el primer argumento a la > función sea un entero > > def checkType(f): > def wrapper(self, *args, **kwargs): > if type(args[0])!=int: > raise TypeError, "Argumento 1 tiene que ser entero > return f(*args,**kwargs) > return wrapper > > class A: > @checkType > def met1(self, arg): > print arg > > No lo he probado, todavía no tengo python 2.4 instalado. > > Erny > > Anibal Fenoglio escribió: > >El mar, 30-11-2004 a las 18:27 +0100, Pepe Aracil escribió: > >>El Martes, 30 de Noviembre de 2004 14:17, Chema Cortés escribió: > >>>Ya tenemos la versión final del python-2.4 . Ahora a sufrir con las > >>>actualizaciones :-P > >>> > >>>http://www.python.org/2.4/ > >>> > >>>A ver si mañana puedo sacar el artículo con las novedades de esta > >>> versión. De momento podéis ver una relación de novedades en: > >>>http://www.python.org/2.4/highlights.html > >> > >>Estoy impaciente por saber entre otras cosas como funcionan los > >> decoradores. Me he le ido la PEP, pero entre que no controlo mucho el > >> inglés y que estoy algo espesito por culpa del resfriado, no pillo una > >> :( > > > >Jaja, yo estoy igual, no puedo terminar de enterder para que son y/o > >como funcionan los "decoradores", espero que pronto encontrar algo al > >respecto en el dichoso idioma español ;) > > > >Saludos > > > > Anibal > > > >>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 erny en sicem.biz Wed Dec 1 03:50:49 2004 From: erny en sicem.biz (Ernesto Revilla) Date: Wed, 01 Dec 2004 03:50:49 +0100 Subject: Dia de la semana y de numero a palabras. In-Reply-To: <20041130215755.66016.qmail@web41204.mail.yahoo.com> References: <20041130215755.66016.qmail@web41204.mail.yahoo.com> Message-ID: <41AD3189.30106@sicem.biz> import time t=time.localtime() dia=time.strftime("%A",t) dependiendo del Locale te dará en un idioma u otro. (si tienes problemas, podrías usar: import locale locale.setlocale(locale.LC_TIME,"es_ES") # o "sp" para Windows Erny FERNANDO VILLARROEL escribió: >Hola existe alguna funcion que dependiendo de la fecha >me diga que dia de la semana es, ejemplo LUNES, >MARTES, MIERCOLES, etc, o que entregue un entero de 0 >a 5 donde 0 es Domingo, 1 Lunes, etc. > >Ocurre que estoy trabajando en un modulo para imprimir >Facturas, alguien tiene o conoce algun modulo o clase >que convierta un valor en numeros a su correspondiente >valor en palabras. > >Fernando Villarroel N. > > > >__________________________________ >Do you Yahoo!? >Meet the all-new My Yahoo! - Try it today! >http://my.yahoo.com > > > > >------------------------------------------------------------------------ > >_______________________________________________ >Python-es mailing list >Python-es en aditel.org >http://listas.aditel.org/listinfo/python-es > > -- Ernesto Revilla sicem sl Pol. Ind. Juncaril, c/ Loja Parc. 7 Local 13 18220 Albolote http://www.sicem.biz Tel: 958 468773 - 637 716189 MSN: aerd en mx3.redestb.es ICQ: 163888521 --- avast! Antivirus: Saliente mensaje limpio. Base de datos de Virus (VPS): 0443-2, 21/10/2004 Comprobado en: 01/12/2004 3:50:51 avast! tiene los derechos reservados (c) 2000-2004 ALWIL Software. http://www.avast.com From jjdelcerromurciano en yahoo.es Wed Dec 1 07:02:40 2004 From: jjdelcerromurciano en yahoo.es (Joaquin Jose del Cerro Murciano) Date: Wed, 1 Dec 2004 07:02:40 +0100 Subject: =?iso-8859-1?q?Programaci=F3n_OO=2E_Un_ejemplo_con_a_scensores?= (ejem, calculadoras). In-Reply-To: References: <1101844429.10187.16.camel@renata.macondo.pri> Message-ID: <200412010702.40450.jjdelcerromurciano@yahoo.es> El Martes, 30 de Noviembre de 2004 21:25, Victor Peinado escribió: > ¡Hola! > > > Hala, hecho. Fíjate que la gracia está en arrancar varias calculadoras, > > Ya, muy chulo el ejemplo. Y veo que tiene sentido inicializar > determinados valores en el constructor cuando creas más de una > instancia de un objeto, cosa que yo hasta ahora no he necesitado > hacer, de hay que mis constructores sean tan parcos. > > Gracias y saludos. Hola, Ojeando este hilo de discusion no he podido dejar de obserbar un par de cosas. Una siguiendo con el tema de POO y otra de interes personal (ligada a lo que comentaba Antonio Castro al final de su mensaje) que igual podria tener entidad para otra discusion. Primero comentar la que atañe a este hilo de discusion. En un momento Antonio hizo un explicacion bastante buena para lo breve que ha sido sobre POO. El truco esta en el analisis como bien comenta. Dirijo un equipo de desarrolladores y el problema que se le plantea a Victor es un problema recurrente en programadores noveles que creeen que saben programar OO. La gente esta acostunbrada a ver el lenguaje de programacion como tal y a no ver la parte de POO. Tienes un lenguaje como Python, que es el caso, que SOPORTA programacion OO y tienedes a pensar que OO es codificar en python y aprender los trucos de la codificacion en python. Cuando dices > Ya, muy chulo el ejemplo. Y veo que tiene sentido inicializar > determinados valores en el constructor cuando creas más de una Estan centrandote en el problema de la codificacion. OO no es codificacion. Yo he hecho programacion OO con C puro y duro cuando no existia el C++. El lenguaje es una herramienta que te condiciona pero no es OO. Cuando piensas en OO no piensas en Python, o C++ , o Java, o VB. POO es una forma de estructurar las ideas que luego se codifica en un lenguaje. Por supuesto si no controlas el lenguaje y sus peculiaridades en cuanto a facilidades de OO lo tienes dificil, pero controlar eso no es POO. Cuando tengo que iniciar a un nuevo programador en POO, normalmete nos vamos a una pizarra y nos olvidamos del teclado, y del Python. Eso biene despues. Te recomiendo que pruebes un ejercicio, y si quieres lo comentas por aqui (si no le molesta a los demas). - Elige un problema. - Coje un lapiz (o algo asi) y haz una descripcion en texto ordinario del problema (no muy larga, dos o tres parrafos a lo sumo). - Coje un rotulador fosfi y subraya los sustantivos mas relevantes que haya en tu escrito. Posiblemente seran las entidades asociadas a tu problema. - Ahora con otro color los verbos. Posiblemente sean las acciones asociadas a las entidades que hayas descubierto. Deberias tratar de descubrir que datos utiliza cada accion y anotarlo en algun sitio. Con esa informacion coges una hoja en blanco y pintas una cajita por cada entidad. Te anotaslas acciones que creas que te han salido asociandolas a cada entidad e intentas ver que relaciones hay entre las distintas entidades y pintas rayas. Piensa tambien si existe alguna propiedad de esa entidad que sea relevante en el contexto de tu problema, y lo añades a la caja como una propiedad de esta. Si asta aqui fuesemos bien (si quieres puedes consultar mas en la lista o en privado), ahora podriamos entrar a lo que es python. Una entidad = una clase python. En el constructor inicializas un atributo de la clase python por cada propiedad de una entidad. Si fuese imprescindible esa propidad se la pasas en el constructor. Añades a cada clase un metodo por cada accion que te haya salido en la entidad y si trabaja con datos que no forman parte de los de la clase deberas pasarselos como parametro. Si has llegado asta aqui, y quieres ya comentas. No es un curso de POO, ni es muy academico, pero como una aproximacion puede serte valido. Tampoco creas que por que has entendido lo que aqui se comenta puedes pasar de hacerlo y codificar directamente. Si no tienes el habito mental de pensar asi, antes de abordar un tema directamente pasa por describir el problema en cristiano, pintar cajiitas y rayas entre ellas antes de ir a codificar. Cuando adquieras el habito de OO, y si el problema es pequeño podras pasar a codificar directamente sin pintar nada (aunque no es muy recomendable, algo de analisis garabateado en un folio o una pizarra al principio biene bien siempre). (Sorry si he aburrido a muchos). ------------------------------------------------------------------------------ El otro tema. Antonio comenta: > En mi opiníon, sería chulo terminar con un interfaz gráfico que permita > hacer simulaciones y comprobar el funcionamiento de la parte algorítimica, > pero eso ya es para nota. En realidad ni siquiera se trata de completar Suena muy bien lo que dices. Creeis que seria posible desarrollar un poco mas ese tema aqui en la lista.Vendria muy bien disponer en python de herramientas para hacer cosas de esas. - Cuando comentas lo de "terminar con un interface grafico" estas hablando de un modelodar de clases ? A lo mejor podemos contribuir si tienes algo. Y si no tienes y ayudas con la definicion igual nos podria interesar meternos en ello. - Cuando hablas de "hacer simulaciones y comprobar el funcionamiento de la parte algorítimica" por donde van tus ideas ? Si te interesa pordemos ver si se puede colaborar para hacer algo. Un saludo Joaquin From jjdelcerromurciano en yahoo.es Wed Dec 1 07:14:13 2004 From: jjdelcerromurciano en yahoo.es (Joaquin Jose del Cerro Murciano) Date: Wed, 1 Dec 2004 07:14:13 +0100 Subject: Problemas con ServerProxy (xmlrpclib) Message-ID: <200412010714.13888.jjdelcerromurciano@yahoo.es> Hola Se me ha planteado un problema con la clase ServerProxy del modulo standard xmlrpclib. Lo primero que ma paso fue cuando llamando a una funcion remota por XMLRPC, cuando le pasaba un acento reventaba. La solucion es simple al crear el ServerProxy le pasas encoding que ha de usar. Asta ahi todo bien. El problema biene cuando el rertorno de la uncion XMLRPC es una cadena y tiene un acento. En python 2.3 el ServerProxy ignora el valor del encoding que le pasas a la hora de tratar los valores de retorno. He montado una chapuza para salir del paso, pero el tema es si el problema se podria comunicar a alguien para que se arregle en futuras revisiones, si es que no lo han arreglado ya. Por si ha alguien le sirbe de algo o se le ocurre alguna forma mejor de rodear el problema aqui esta mi chapuza para un python 2.3. import xmlrpclib class ServerProxy(xmlrpclib.ServerProxy): def __init__(self,*w,**kw): xmlrpclib.ServerProxy.__init__(self,*w,**kw) self._ServerProxy__transport.getparser = self.__getparser def __getparser(self): p, t = xmlrpclib.getparser() t._encoding = self._encoding return p,t Un saludo Joaquin ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From dtrillo en gmail.com Wed Dec 1 08:48:20 2004 From: dtrillo en gmail.com (david _) Date: Wed, 1 Dec 2004 08:48:20 +0100 Subject: =?iso-8859-1?q?Programaci=F3n_OO=2E_Un_ejemplo_con_a?= =?iso-8859-1?q?_scensores?= Message-ID: <86b8f6b904113023485211663f@mail.gmail.com> Yo vengo del VB, y en concreto, creo que esta propuesta es muy interesante. Tal y como yo lo plantearia: 1 objeto Botones (desde dentro del ascensor), para el movimiento del ascensor desde dentro 1 objeto Planta (fuera del ascensor), para cuando los ascensores son llamados desde una planta, desde fuera 1 objeto ascensor, que tiene asociado un objeto Botones, y un Objeto Planta (donde esta situado actualmente) Voy bien? david ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From erny en sicem.biz Wed Dec 1 09:41:23 2004 From: erny en sicem.biz (Ernesto Revilla) Date: Wed, 01 Dec 2004 09:41:23 +0100 Subject: Problemas con ServerProxy (xmlrpclib) In-Reply-To: <200412010714.13888.jjdelcerromurciano@yahoo.es> References: <200412010714.13888.jjdelcerromurciano@yahoo.es> Message-ID: <41AD83B3.2010105@sicem.biz> Hola, Fundamentos: * entre los dos extremos, viaja normalmente UTF-8 * si usas una cadena que no sea unicode, xmlrpc tendrá problemas al hacer la conversión hacia UTF-8 Soluciones: * asegura que todas las cadenas de caracteres que se manden sean unicode (ej. u'método') * usa un encoding en los archivos fuentes en la primera línea para decir a Python con qué codificación estás trabajando: si usas Linux, es posible que tu consola se UTF-8, o algún otro encoding como iso8859-15 (latin1 con el símbolo del euro) si usas Windows, seguramente trabajas con cp1252 (parecido a iso8859-1) si trabajas con ventanas y cp850 si trabajas en la línea de comandos (puedes probar: import sys; sys.stdout.encoding ) Python tiene que saber con qué encoding trabajar, si escribes: u'método' Erny Joaquin Jose del Cerro Murciano escribió: >Hola > >Se me ha planteado un problema con la clase ServerProxy del modulo standard >xmlrpclib. >Lo primero que ma paso fue cuando llamando a una funcion remota por XMLRPC, >cuando le pasaba un acento reventaba. La solucion es simple al crear el >ServerProxy le pasas encoding que ha de usar. >Asta ahi todo bien. >El problema biene cuando el rertorno de la uncion XMLRPC es una cadena y tiene >un acento. > >En python 2.3 el ServerProxy ignora el valor del encoding que le pasas a la >hora de tratar los valores de retorno. > >He montado una chapuza para salir del paso, pero el tema es si el problema se >podria comunicar a alguien para que se arregle en futuras revisiones, si es >que no lo han arreglado ya. > > >Por si ha alguien le sirbe de algo o se le ocurre alguna forma mejor de >rodear el problema aqui esta mi chapuza para un python 2.3. > >import xmlrpclib > >class ServerProxy(xmlrpclib.ServerProxy): > def __init__(self,*w,**kw): > xmlrpclib.ServerProxy.__init__(self,*w,**kw) > self._ServerProxy__transport.getparser = self.__getparser > > def __getparser(self): > p, t = xmlrpclib.getparser() > t._encoding = self._encoding > return p,t > >Un saludo >Joaquin > > >------------------------------------------------------------------------ > >_______________________________________________ >Python-es mailing list >Python-es en aditel.org >http://listas.aditel.org/listinfo/python-es > > -- Ernesto Revilla sicem sl Pol. Ind. Juncaril, c/ Loja Parc. 7 Local 13 18220 Albolote http://www.sicem.biz Tel: 958 468773 - 637 716189 MSN: aerd en mx3.redestb.es ICQ: 163888521 --- avast! Antivirus: Saliente mensaje limpio. Base de datos de Virus (VPS): 0443-2, 21/10/2004 Comprobado en: 01/12/2004 9:41:25 avast! tiene los derechos reservados (c) 2000-2004 ALWIL Software. http://www.avast.com From aruxek en gmail.com Wed Dec 1 10:13:54 2004 From: aruxek en gmail.com (Arux Kicho Ek) Date: Wed, 1 Dec 2004 03:13:54 -0600 Subject: Ventanucos In-Reply-To: References: Message-ID: <81a637ab04120101131980906@mail.gmail.com> pygtk podria ser una muy buena alternativa de ahi puedes utilizar glade-2(para dibujar tus ventanitas y componentes) y algun editor como scite. y un buen manual para esto, lo encuentras en http://primates.ximian.com/~sandino/python-glade/ (escrito por tigrux) te lleva de la mano On Tue, 30 Nov 2004 16:56:01 -0500, Nestor wrote: > Hola, > Tengo una duda, creo que ya se hablo sobre esto pero no la encuentro. > Quiero saber si hay alguna aplicacion con la que puedo armar ventanas > de manera facil y rapida. > Ojo, si he visto las librerias para que aparezcan las ventanas, pero > lo que no he encontrado es una aplicacion para hacerlo de una manera > mas rapida. > > Gracias > > Saludos > > Nestor > > > _______________________________________________ > 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 py en ch3m4.org Wed Dec 1 10:39:46 2004 From: py en ch3m4.org (Chema =?iso-8859-15?q?Cort=E9s?=) Date: Wed, 01 Dec 2004 10:39:46 +0100 Subject: Habemus Python 2.4 In-Reply-To: <41ACDFB2.5040005@sicem.biz> References: <200411301417.57555.py@ch3m4.org> <1101845379.10187.20.camel@renata.macondo.pri> <41ACDFB2.5040005@sicem.biz> Message-ID: <200412011039.49507.py@ch3m4.org> El Martes, 30 de Noviembre de 2004 22:01, Ernesto Revilla escribió: > Cuando el parser lee la función, al procesar A, sigue siendo una función. > > Se convierte en método, cuando llama a la metaclase para construir la > clase: Ummm..Siendo academicista, sería mejor hablar de "descriptores". En python, el término 'def' define "descriptores", que luego serán funciones ó metodos, según si el tipo de uso que se dé. Podrías tranquilamente definir los métodos de una clase como si fueran simples funciones: def f(self, arg1): print arg1 class A: meth1=f a=A() a.meth1("Hola") No existe "conversión", estrictamente hablando, de función a método. El descriptor sigue inalterado. Tan sólo se sigue la regla de los descriptores: "Si en el diccionario de un objeto aparece un descriptor, su lectura devolverá, en lugar de un objeto descriptor, el resultado de invocar el método __get__ del descriptor" Por ejemplo: def f(self): print self.valor class A: def __init__(self): self.valor="Hola" a=A() >>> f.__get__(None,A) >>> f.__get__(a,A) > >>> f.__get__(a,A)() Hola No hay ninguna conversión entre función y método. Es más, ni siquiera hemos ligado la función a la clase. En cuanto a los decoradores, se pueden ver como "wrappers" de descriptores: de un descriptor se devuelve otro descriptor. Daría igual estas dos versiones: def deco(f): .... @deco def mymeth(self,arg): ... class A: meth1=mymeth que: def deco(f): ... class A: @deco def meth1(self,arg): ... ------------ 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 jjdelcerromurciano en yahoo.es Wed Dec 1 11:49:35 2004 From: jjdelcerromurciano en yahoo.es (Joaquin Jose del Cerro Murciano) Date: Wed, 1 Dec 2004 11:49:35 +0100 Subject: Problemas con ServerProxy (xmlrpclib) In-Reply-To: <41AD83B3.2010105@sicem.biz> References: <200412010714.13888.jjdelcerromurciano@yahoo.es> <41AD83B3.2010105@sicem.biz> Message-ID: <200412011149.35657.jjdelcerromurciano@yahoo.es> Hola, Lo que cuentas esta muy bien, pero el Contructor del ServerProxy tiene un parametro que es el encoding que tiene que usar. De hecho lo utiliza para codificar los parametros de la funcion RPC que se invoca cuando son cadenas, y poniendo ahi el encoding que toca parece que todo va bien. El problema es que solo lo utiliza para codificar la informacion que envia al servidor XMLRPC, y pasa de el en la descodificacion de los valores devueltos por el servidor. Tu le dices que use un encoding y para algunas cosas pasa de ti. Si le haces llegar el encoding que toca a la funcion de unmarshaling (que esta preparada para ello) entonces va todo, tambien los retornos. Da la sensacion de que en un momento se añadiese el parametro encoding al ServerProxy, se uso en el marshal de lo parametros, pero a alguien se le olvido usarla en el unmarshall de los valores de retorno. O eso, o alguien penso que el servidor xmlrpc deberia codificar como toca las cosas pero alfinal no le pasaron al SimpleXMLRPCServer un encoding para que lo hiciese. La gran duda es: El ServerProxy usa el encoding indicado solo en la informacion hacia el server y lo ignora en la informacion del server, por diseño o es un error en el modulo susceptible de ser arreglado en proximas versiones ? Aquien dirigir esta pregunta ? Un saludo Joaquin From miguela.garcia3 en alu.uclm.es Wed Dec 1 12:11:53 2004 From: miguela.garcia3 en alu.uclm.es (Miguel Angel Garcia) Date: Wed, 01 Dec 2004 12:11:53 +0100 Subject: Python como lenguaje bajo nivel Message-ID: <1101899513.19258.12.camel@localhost> Hola!! Estoy utilizando python para simular una máquina de bajo nivel. Evidentemente, el tipo de datos básico es un byte, pero python tiene ciertos problemillas para entenderlo. Básicamente, yo necesito lo siguiente: 100 + 200 = 44 y es evidente que python me dice: 100 + 200 = 300 Una solución es: (100+200)%256 Pero como tengo que hacer muchos cálculos, no quiero encontrarme "%256" por todas partes. Me he planteado hacer hasta la clase "Byte" que me arregle estos problemitas. ¿Hay alguna manera más sencilla y/o más elegante de hacerlo? ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: Esta parte del mensaje está firmada digitalmente URL: ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From python en ammsoft.com Wed Dec 1 12:30:57 2004 From: python en ammsoft.com (Amm-Python) Date: Wed, 1 Dec 2004 12:30:57 +0100 Subject: Python como lenguaje bajo nivel In-Reply-To: <1101899513.19258.12.camel@localhost> References: <1101899513.19258.12.camel@localhost> Message-ID: <002501c4d799$3a6d5b70$640010ac@nombref31twj9b> O no he entendido tu enunciado o estas mezclando operaciones aritméticas con operaciones de bits. >>> 100 & 200 64 >>> hex(100 & 200) '0x40' >>> De dónde sacas el 44? > -----Mensaje original----- > De: python-es-bounces en aditel.org > [mailto:python-es-bounces en aditel.org] En nombre de Miguel Angel Garcia > Enviado el: dimecres, 1 / desembre / 2004 12:12 > Para: La lista de python en castellano > Asunto: [Python-es] Python como lenguaje bajo nivel > > > Hola!! > > Estoy utilizando python para simular una máquina de bajo > nivel. Evidentemente, el tipo de datos básico es un byte, > pero python tiene ciertos problemillas para entenderlo. > Básicamente, yo necesito lo > siguiente: > 100 + 200 = 44 > y es evidente que python me dice: > 100 + 200 = 300 > > Una solución es: > (100+200)%256 > > Pero como tengo que hacer muchos cálculos, no quiero > encontrarme "%256" por todas partes. Me he planteado hacer > hasta la clase "Byte" que me arregle estos problemitas. > > ¿Hay alguna manera más sencilla y/o más elegante de hacerlo? > From jcanto en hispasec.com Wed Dec 1 12:41:58 2004 From: jcanto en hispasec.com (Julio Canto) Date: Wed, 01 Dec 2004 12:41:58 +0100 Subject: Python como lenguaje bajo nivel In-Reply-To: <002501c4d799$3a6d5b70$640010ac@nombref31twj9b> References: <002501c4d799$3a6d5b70$640010ac@nombref31twj9b> Message-ID: <41ADAE06.4020001@hispasec.com> Amm-Python wrote: >O no he entendido tu enunciado o estas mezclando operaciones aritméticas >con operaciones de bits. > > > >>>>100 & 200 >>>> >>>> >64 > > >>>>hex(100 & 200) >>>> >>>> >'0x40' > > > >De dónde sacas el 44? > > Probablemente quiere aprovechar el 'overflow' tipico de C... Un saludo, JC From magmax9 en yahoo.es Wed Dec 1 12:42:47 2004 From: magmax9 en yahoo.es (Miguel Angel Garcia) Date: Wed, 01 Dec 2004 12:42:47 +0100 Subject: Python como lenguaje bajo nivel In-Reply-To: <002501c4d799$3a6d5b70$640010ac@nombref31twj9b> References: <002501c4d799$3a6d5b70$640010ac@nombref31twj9b> Message-ID: <1101901368.19258.16.camel@localhost> Lo saco de: (100+200)%256 recuerda que (256 + 44 = 300) No quiero un AND, sino las operaciones básicas: suma, resta, multiplicación, división... de bytes. Las operaciones lógicas funcionarán sin problemas por realizarse entre operandos de la misma longitud. El mié, 01-12-2004 a las 12:30 +0100, Amm-Python escribió: > O no he entendido tu enunciado o estas mezclando operaciones aritméticas > con operaciones de bits. > > >>> 100 & 200 > 64 > >>> hex(100 & 200) > '0x40' > >>> > > De dónde sacas el 44? > > > > -----Mensaje original----- > > De: python-es-bounces en aditel.org > > [mailto:python-es-bounces en aditel.org] En nombre de Miguel Angel Garcia > > Enviado el: dimecres, 1 / desembre / 2004 12:12 > > Para: La lista de python en castellano > > Asunto: [Python-es] Python como lenguaje bajo nivel > > > > > > Hola!! > > > > Estoy utilizando python para simular una máquina de bajo > > nivel. Evidentemente, el tipo de datos básico es un byte, > > pero python tiene ciertos problemillas para entenderlo. > > Básicamente, yo necesito lo > > siguiente: > > 100 + 200 = 44 > > y es evidente que python me dice: > > 100 + 200 = 300 > > > > Una solución es: > > (100+200)%256 > > > > Pero como tengo que hacer muchos cálculos, no quiero > > encontrarme "%256" por todas partes. Me he planteado hacer > > hasta la clase "Byte" que me arregle estos problemitas. > > > > ¿Hay alguna manera más sencilla y/o más elegante de hacerlo? > > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: Esta parte del mensaje está firmada digitalmente URL: ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From falted en pytables.org Wed Dec 1 12:44:22 2004 From: falted en pytables.org (Francesc Altet) Date: Wed, 1 Dec 2004 12:44:22 +0100 Subject: Python como lenguaje bajo nivel In-Reply-To: <1101899513.19258.12.camel@localhost> References: <1101899513.19258.12.camel@localhost> Message-ID: <200412011244.22391.falted@pytables.org> Puedes usar numarray, que soporta una gran variedad de tipos: In [15]: from numarray import * In [16]: a=array(100,type=UInt8) In [17]: b=array(200,type=UInt8) In [18]: a+b Out[18]: 44 HTH A Dimecres 01 Desembre 2004 12:11, Miguel Angel Garcia va escriure: > Hola!! > > Estoy utilizando python para simular una máquina de bajo nivel. > Evidentemente, el tipo de datos básico es un byte, pero python tiene > ciertos problemillas para entenderlo. Básicamente, yo necesito lo > siguiente: > 100 + 200 = 44 > y es evidente que python me dice: > 100 + 200 = 300 > > Una solución es: > (100+200)%256 > > Pero como tengo que hacer muchos cálculos, no quiero encontrarme "%256" > por todas partes. Me he planteado hacer hasta la clase "Byte" que me > arregle estos problemitas. > > ¿Hay alguna manera más sencilla y/o más elegante de hacerlo? > -- Francesc Altet ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From pepe en diselpro.com Wed Dec 1 12:43:32 2004 From: pepe en diselpro.com (Pepe Aracil) Date: Wed, 1 Dec 2004 12:43:32 +0100 Subject: Python como lenguaje bajo nivel In-Reply-To: <1101899513.19258.12.camel@localhost> References: <1101899513.19258.12.camel@localhost> Message-ID: <200412011243.32931.pepe@diselpro.com> El Miércoles, 1 de Diciembre de 2004 12:11, Miguel Angel Garcia escribió: > Hola!! > > Estoy utilizando python para simular una máquina de bajo nivel. > Evidentemente, el tipo de datos básico es un byte, pero python tiene > ciertos problemillas para entenderlo. Básicamente, yo necesito lo > siguiente: > 100 + 200 = 44 > y es evidente que python me dice: > 100 + 200 = 300 > > Una solución es: > (100+200)%256 una opción un poco más rápida es hacer un and a nivel de bit. Ej. >>>ByteMask=255 >>>WordMask=65535 >>># Suma de Bytes >>>100 + 200 & ByteMask 44 >>># Suma de Palabras >>>100 + 200 & WordMask 300 >>>65535 + 2 & WordMask 1 .... Saludos. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From py en ch3m4.org Wed Dec 1 12:52:41 2004 From: py en ch3m4.org (Chema =?iso-8859-15?q?Cort=E9s?=) Date: Wed, 01 Dec 2004 12:52:41 +0100 Subject: Python como lenguaje bajo nivel In-Reply-To: <200412011244.22391.falted@pytables.org> References: <1101899513.19258.12.camel@localhost> <200412011244.22391.falted@pytables.org> Message-ID: <200412011252.45033.py@ch3m4.org> El Miércoles, 1 de Diciembre de 2004 12:44, Francesc Altet escribió: > Puedes usar numarray, que soporta una gran variedad de tipos: O directamente con "pyrex" :-D cdef unsigned char res res=100+200 Pyrex http://nz.cosc.canterbury.ac.nz/~greg/python/Pyrex/ ------------ 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 py en ch3m4.org Wed Dec 1 13:15:54 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Wed, 01 Dec 2004 13:15:54 +0100 Subject: Habemus Python 2.4 In-Reply-To: <20041130215402.GA5018@marmota.unizar.es> References: <200411301417.57555.py@ch3m4.org> <20041130215402.GA5018@marmota.unizar.es> Message-ID: <200412011315.57635.py@ch3m4.org> El Martes, 30 de Noviembre de 2004 22:54, luis miguel morillas escribió: > Asunto: [Python-es] Habemus Python 2.4 > Fecha: Tue, Nov 30, 2004 at 02:17:54PM +0100 > > Citando a Chema Cortés (py en ch3m4.org): > > Ya tenemos la versión final del python-2.4 . Ahora a sufrir con las > > actualizaciones :-P > > Sí, esto de las actualizaciones es un coñazo: ¿con cuántos módulos/paquetes > trabajáis a parte de la distribución estándar? Yo siempre que actualizo me > olvido de alguna cosa. ¿Cómo va tu experiencia con gentoo, chema? Ha > mejorado el asunto de las actualizaciones? Cada vez son más los módulos que uso que están fuera de la librería estándar. En cuanto a actualizarlos, en Gentoo supongo que pasará igual que en el resto. Una ventaja de gentoo es que puedes instalar paquetes en "slots" fuera de la instalación general (denominada "world"). De este modo se puede ir probando python-2.4 sin que se vea afectado el resto del sistema. Cuando el python-2.4 se marque como estable sólo será necesario "reemerger" el python para tener todo en su sitio y actualizado. He vuelto a mi instalación de SuSE para probar la SuSE 9.2, pero he desistido cuando tenía que volver a recompilar de nuevo montón de módulos y aplicaciones. Definitivamente, me quedo con gentoo. > > http://www.python.org/2.4/ > > > > A ver si mañana puedo sacar el artículo con las novedades de esta > > versión. De momento podéis ver una relación de novedades en: > > http://www.python.org/2.4/highlights.html > > jeje, daremos buen provecho de él :-P Hoy no va a poder ser. A ver si saco algo de tiempo para terminar de escribirlo, y lo publico ya. ------------ 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 falted en pytables.org Wed Dec 1 13:23:00 2004 From: falted en pytables.org (Francesc Altet) Date: Wed, 1 Dec 2004 13:23:00 +0100 Subject: Python como lenguaje bajo nivel In-Reply-To: <200412011252.45033.py@ch3m4.org> References: <1101899513.19258.12.camel@localhost> <200412011244.22391.falted@pytables.org> <200412011252.45033.py@ch3m4.org> Message-ID: <200412011323.00872.falted@pytables.org> A Dimecres 01 Desembre 2004 12:52, Chema Cortés va escriure: > O directamente con "pyrex" :-D > > cdef unsigned char res > res=100+200 Pues si que es verdad, oye, siempre se aprende algo nuevo ;-) -- Francesc Altet ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From jeremiasc en gmail.com Wed Dec 1 14:40:16 2004 From: jeremiasc en gmail.com (Jeremias) Date: Wed, 1 Dec 2004 10:40:16 -0300 Subject: Ventanucos In-Reply-To: <81a637ab04120101131980906@mail.gmail.com> References: <81a637ab04120101131980906@mail.gmail.com> Message-ID: Existe el Boa-constructor[0] que es un IDE tipo VB pero, por suerte, ni se le parece. Personalmente solo lo he instalado y di un par de vueltas, pero no lo uso ya que no creo interfacez graficas, "dicen" que es muy bueno. Espero que sirva. Saludos [0] http://boa-constructor.sourceforge.net/ On Wed, 1 Dec 2004 03:13:54 -0600, Arux Kicho Ek wrote: > pygtk podria ser una muy buena alternativa > > de ahi puedes utilizar glade-2(para dibujar tus ventanitas y > componentes) y algun editor como scite. > > y un buen manual para esto, lo encuentras en > http://primates.ximian.com/~sandino/python-glade/ (escrito por tigrux) > te lleva de la mano > > > > > On Tue, 30 Nov 2004 16:56:01 -0500, Nestor wrote: > > Hola, > > Tengo una duda, creo que ya se hablo sobre esto pero no la encuentro. > > Quiero saber si hay alguna aplicacion con la que puedo armar ventanas > > de manera facil y rapida. > > Ojo, si he visto las librerias para que aparezcan las ventanas, pero > > lo que no he encontrado es una aplicacion para hacerlo de una manera > > mas rapida. > > > > Gracias > > > > Saludos > > > > Nestor > > > > > > _______________________________________________ > > 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 i_munoz en euskalnet.net Wed Dec 1 14:54:02 2004 From: i_munoz en euskalnet.net (=?ISO-8859-1?Q?I=F1igo?=) Date: Wed, 01 Dec 2004 14:54:02 +0100 Subject: Ventanucos In-Reply-To: References: Message-ID: <41ADCCFA.7020504@euskalnet.net> La opción más fácil y rápida que yo he encontrado es pythoncard. La web es pythoncard.sourceforge.net Nestor escribió: >Hola, >Tengo una duda, creo que ya se hablo sobre esto pero no la encuentro. >Quiero saber si hay alguna aplicacion con la que puedo armar ventanas >de manera facil y rapida. >Ojo, si he visto las librerias para que aparezcan las ventanas, pero >lo que no he encontrado es una aplicacion para hacerlo de una manera >mas rapida. > >Gracias > >Saludos > >Nestor > > >------------------------------------------------------------------------ > >_______________________________________________ >Python-es mailing list >Python-es en aditel.org >http://listas.aditel.org/listinfo/python-es > > From py en ch3m4.org Wed Dec 1 15:28:01 2004 From: py en ch3m4.org (Chema =?iso-8859-15?q?Cort=E9s?=) Date: Wed, 01 Dec 2004 15:28:01 +0100 Subject: Ventanucos In-Reply-To: References: Message-ID: <200412011528.07501.py@ch3m4.org> El Martes, 30 de Noviembre de 2004 22:56, Nestor escribió: > Hola, > Tengo una duda, creo que ya se hablo sobre esto pero no la encuentro. > Quiero saber si hay alguna aplicacion con la que puedo armar ventanas > de manera facil y rapida. Si, las hay. > Ojo, si he visto las librerias para que aparezcan las ventanas, pero > lo que no he encontrado es una aplicacion para hacerlo de una manera > mas rapida. Dependiendo del toolkit que uses, y de si quieres que te genere el código python, ó te guarde la configuración en un fichero independiente, tienes: Tkinter: SpecPython, Komodo,... wxPython: Boa-constructor, pythoncard, wxglade, wxdesigner,... GTK: glade, gazpacho,... Si usaras jython, se podría añadir todo lo que hay para java. Como consejo, mírate gazpacho ó wxglade. ------------ 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 acastro en ciberdroide.com Wed Dec 1 17:47:55 2004 From: acastro en ciberdroide.com (Antonio Castro) Date: Wed, 1 Dec 2004 17:47:55 +0100 (CET) Subject: =?iso-8859-1?Q?Re=3A_=5BPython-es=5D_Programaci=F3n_OO=2E_Un_ej?= =?iso-8859-1?Q?emplo_con_ascensores?= In-Reply-To: <86b8f6b904113023485211663f@mail.gmail.com> References: <86b8f6b904113023485211663f@mail.gmail.com> Message-ID: On Wed, 1 Dec 2004, david _ wrote: > Yo vengo del VB, y en concreto, creo que esta propuesta es muy interesante. > > Tal y como yo lo plantearia: > 1 objeto Botones (desde dentro del ascensor), para el movimiento del > ascensor desde dentro > 1 objeto Planta (fuera del ascensor), para cuando los ascensores son > llamados desde una planta, desde fuera > 1 objeto ascensor, que tiene asociado un objeto Botones, y un Objeto > Planta (donde esta situado actualmente) > > Voy bien? > david Si. Vas bien. Es la forma de empezar, pero tienes que buscar mas objetos. Luego mira dentro de los objetos y describelos. Cuales son sus atributos o características. ¿Alguno de esos atributos es un objeto? Si es asi describelo. Luego detallan que cosas pueden hacer cada uno de esos objetos. No elimines los objetos triviales. Puede que a lo largo del analisis aparezcan aspectos interesantes relacionados con ellos. Solo al final puedes eliminar o simplificar objetos. Con el tiempo no hace falta hacer todo esto que te digo pero como forma de entrenamiento para cambiar la forma de pensar es un buen sistema. Yo jamas me metería en un ascensor de los tuyos. No tiene puertas. ;-) En general cualquier cosa que pueda encontrarse en mas de un estado interesa ponerla. Por ejemplo, El cable del ascensor no interesa. Suele estar entero todo el rato. ;-D. (Perdón por la broma.) El motor del ascensor no está siempre en el mismo estado. Habra que ponerlo. Y el indicador de encima de cada puerta tampoco está indicando lo mismo todo el rato. Tambien ponlo. etc. -- Un saludo Antonio Castro /\ /\ \\W// _|0 0|_ +-oOOO-(___o___)-OOOo---------------------+ | . . . . U U . Antonio Castro Snurmacher | | . . . . . . . acastro en ciberdroide.com | +()()()---------()()()--------------------+ From erny en sicem.biz Wed Dec 1 18:33:43 2004 From: erny en sicem.biz (Ernesto Revilla) Date: Wed, 01 Dec 2004 18:33:43 +0100 Subject: Problemas con ServerProxy (xmlrpclib) In-Reply-To: <200412011149.35657.jjdelcerromurciano@yahoo.es> References: <200412010714.13888.jjdelcerromurciano@yahoo.es> <41AD83B3.2010105@sicem.biz> <200412011149.35657.jjdelcerromurciano@yahoo.es> Message-ID: <41AE0077.10802@sicem.biz> Joaquin Jose del Cerro Murciano escribió: >Hola, > >Lo que cuentas esta muy bien, pero el Contructor del ServerProxy tiene un >parametro que es el encoding que tiene que usar. De hecho lo utiliza para >codificar los parametros de la funcion RPC que se invoca cuando son cadenas, >y poniendo ahi el encoding que toca parece que todo va bien. > > Sí, pero eso es para intercomunicar sistemas que no hablan UTF-8, no para que les des strings que contengan caracteres que no sean Ascii. Hay algunas liberías xmlrpc de otros sistemas que hablan por defecto latin1, y es para que se pueda entender con esos otros sistemas, no contigo. >El problema es que solo lo utiliza para codificar la informacion que envia al >servidor XMLRPC, y pasa de el en la descodificacion de los valores devueltos >por el servidor. Tu le dices que use un encoding y para algunas cosas pasa de >ti. >Si le haces llegar el encoding que toca a la funcion de unmarshaling (que esta >preparada para ello) entonces va todo, tambien los retornos. Da la sensacion >de que en un momento se añadiese el parametro encoding al ServerProxy, se uso >en el marshal de lo parametros, pero a alguien se le olvido usarla en el >unmarshall de los valores de retorno. O eso, o alguien penso que el servidor >xmlrpc deberia codificar como toca las cosas pero alfinal no le pasaron al >SimpleXMLRPCServer un encoding para que lo hiciese. > >La gran duda es: > >El ServerProxy usa el encoding indicado solo en la informacion hacia el server >y lo ignora en la informacion del server, por diseño o es un error en el >modulo susceptible de ser arreglado en proximas versiones ? >Aquien dirigir esta pregunta ? > > > No me parece ningún error. Nosotros usamos xmlrpc desde python y desde JavaScript y nos funciona bien (a excepción que el javascript no tiene enteros, sino sólo floats). Anda, dale unicodes a xmlrpc (en las dos direcciones si usas tanto cliente como servidor escrito en python). Erny --- avast! Antivirus: Saliente mensaje limpio. Base de datos de Virus (VPS): 0443-2, 21/10/2004 Comprobado en: 01/12/2004 18:33:44 avast! tiene los derechos reservados (c) 2000-2004 ALWIL Software. http://www.avast.com From acastro en ciberdroide.com Wed Dec 1 18:15:33 2004 From: acastro en ciberdroide.com (Antonio Castro) Date: Wed, 1 Dec 2004 18:15:33 +0100 (CET) Subject: =?iso-8859-1?Q?Re=3A_=5BPython-es=5D_Programaci=F3n_OO=2E_Un_ej?= =?iso-8859-1?Q?emplo_con_a_scensores?= In-Reply-To: <200412010702.40450.jjdelcerromurciano@yahoo.es> References: <1101844429.10187.16.camel@renata.macondo.pri> <200412010702.40450.jjdelcerromurciano@yahoo.es> Message-ID: On Wed, 1 Dec 2004, Joaquin Jose del Cerro Murciano wrote: En tu primera parte del mensaje me has captado perfectamente lo que quería decir. > > > En mi opiníon, sería chulo terminar con un interfaz gráfico que permita > > hacer simulaciones y comprobar el funcionamiento de la parte algorítimica, > > pero eso ya es para nota. En realidad ni siquiera se trata de completar > > Suena muy bien lo que dices. Creeis que seria posible desarrollar un poco mas > ese tema aqui en la lista.Vendria muy bien disponer en python de herramientas > para hacer cosas de esas. > - Cuando comentas lo de "terminar con un interface grafico" estas hablando > de un modelodar de clases ? > A lo mejor podemos contribuir si tienes algo. Y si no tienes y ayudas con > la definicion igual nos podria interesar meternos en ello. > - Cuando hablas de "hacer simulaciones y comprobar el funcionamiento de > la parte algorítimica" por donde van tus ideas ? > > Si te interesa pordemos ver si se puede colaborar para hacer algo. ;-) Hay formas muy distintas de enfocar el problema. Se trata en principio de un ejercicio puramente tehorico pero basado en un caso real. Los ascensores inteligentes muchas veces parecen tontos y esa es la única razón por la que me interesa este caso. En cuanto a lo del interfaz gráfico es una idea ambiciosilla. Yo imagino una representación de un edificio con varias plantas y varios ascensores y que pulsando con el raton en un pulsador de un ascensor o en un pulsador de una planta se pueda llamar al ascensor. Que simule la entrada y salida de gente, y que con todo ello se pueda emular el comportamiento de un algoritmo. Si yo lo intentara, lo haría quizás en Tkinter que es lo que conozco. Lo del interfaz me temo que tenga mucho curro para ser un programita de propósito educativo pero es bueno cuando se sugiere un ejercicio, plantearlo como algo que podría llegar a ser algo más que eso. En este caso un emulador. Yo para este ejercicio no considero importante implementar ningún algoritmo concreto. Lo que si considero esencial para el ejercicio es implementar aunque sea a modo de meros esbozos todos los objetos posibles y me he puesto a ello. Me acabo de dar cuenta de una complicación. Se trata de un problema en el cual existirá un bucle de eventos. (Gente pulsando potones) y una serie de ascensores funcionando de forma bastante autónoma. Es decir tenemos un claro caso de threading. ;-) Esto ocurre cuando los objetos con los que trabajamos actuan como si tuvieran vida propia lo cual los hace siempre mucho más interesantes. De hecho me puse a teclear en cuanto me di cuenta de esto y tengo que decir que tal conclusion sale de forma natural cuando se emplieza a analizar el problema orientandolo a objetos. No es necesario tener esa idea preconcebida. Surge como resultado de ir refinando el diseño de los objetos. Yo llevo menos de un año con Python y ni el diseño será perfecto ni la codificación tampoco pero es un punto de partida. Lo que siento es que lo dejo a medias y ni siquiera está pensado para mostrar una traza interesante, pero no debería faltar mucho para eso. Ya le daré un empujón otro día y si alguien quiere aportar ideas en la forma que sea pues estupendo. ==================8<----------------------------------------------- #!/usr/bin/python # -*- coding: latin1 -*- # ascensores.py #------------------------------------------------------------------- class Boton: ''' Botón con memoria y luz de estado. Objeto muy simple. ''' def __init__(self): self.PulsadoSN=0 # Luz de estado, 0=No pulsado; 1=Pulsado def Pulsar(self): self.PulsadoSN=1 def Olvidar(self): ''' Cuando ya no interese conservar el estado ''' self.PulsadoSN=0 #------------------------------------------------------------------- class Botonera: ''' Botonera genérica ''' def __init__(self, ListaIdentBotones): self.Botonera={} for B in ListaIdentBotones: self.Botonera[B]=Boton() def PulsarBoton(self, B): self.Botonera[B].Pulsar() def OlvidarBoton(self, B): self.Botonera[B].Olvidar() #------------------------------------------------------------------- class Ascensor: ''' Ascensor inteligente. ''' def __init__(self, CargaMaxima, PlantaInferior, PlantaSuperior): self.EnServicio=1 # 0= Fuera de servicio; 1 En Servicio self.CargaMaxima=CargaMaxima self.PlantaInferior=PlantaInferior self.PlantaSuperior=PlantaSuperior # Botonera Botones=range(self.PlantaInferior, self.PlantaSuperior+1) Botones.append('Stop') Botones.append('Alarm') self.Botonera=Botonera(Botones) self.Puerta=Puerta() self.SensorDeCarga=0 # Kg de carga self.SensorDePuerta=0 # 0=PasoLibre; 1=PasoOcupado self.Motor='P' # P=Parado; B=Bajando; S=Subiendo # La ruta indica cual es la ruta asignada al ascensor en este instante self.Ruta='P' # P=Parado; B=Bajando; S=Subiendo self.SituPlanta=0.0 # 0.0= Planta baja self.IncrPos=0.5 # Se consideran los cambios de posicion en incrementos self.Delay=0.5 # Tiempo en segundos para cambiar de posicion. def GetInfo(self): ''' Retorna la información que interesa a los usuarios que esperan por un ascensor. ''' return self.SituPlanta, self.Ruta, self.Puerta.EstadoCierre def GetAccionPuertaExt(self, Planta): ''' Dice a una puerta externa lo que tiene que hacer ''' pass # Por implementar def Algoritmo(self): ''' Obtiene la orden siguiente para este ascensor. Este algoritmo debe funcionar dentro de una región critica para evitar problemas de concurrencia. * Un ascensor con gente dentro no debe invertir el sentido de su marcha hasta que la última persona alcance su destino. * Las ordenes recibidas desde el interior desaparecen cuando el ascensor (0 Kg) queda vació. * Si todos los ascensores están desocupados el más cercano a la planta baja debe bajar a esa planta para quedar a la espera de pasageros. * Un ascensor con gente dentro no atenderá más ordén externa que la de incluir en su memoria una nueva parada que coincida con el sentido de la marcha. * Cualquier ascensor que pare en una planta elimina la orden pendiente si coincide con el sentido de la marcha. * Realizada una petición de ascensor, será ajudicada al ascensor más favorable. Este será el que esté mas cerca pero en caso de estar parado se considerará como si estuviera tres plantas más lejos que un ascensor que se acerca en la dirección correcta. El ascensor que viene en la dirección correcta será penalizado con una distancia equivalente a media planta por cada parada pendiente en su recorrido hasta llegar a la planta solicitada. * Un ascensor que le falte menos de 70 kilos para alcanzar su limite de carga no acepta nuevas peticiones externas. ''' pass # Todo por hacer def run(self): ''' Dar vida al ascensor. ''' import time while 1: # Entrar en la región crítica # Aplicar algoritmo # Sacar la mejor orden para este ascensor de la lista de ordenes # Salir de la región crítica # Procesar la orden time.sleep(self.Delay) #------------------------------------------------------------------- class Puerta: ''' Objeto muy simple ''' def __init__(self): self.EstadoCierre=0 # 0=Cerrada; 1=Abierta self.Bloqueada=0 # 0=No bloqueada; 1 bloqueada def Abrir(self): self.PuertaInterior=1 def Cerrar(self): self.PuertaInterior=0 def Bloquear(self): self.Bloqueada=1 #------------------------------------------------------------------- class Display: def __init__(self, ascensor): ''' Muestra en todo momento la informacion relativa a un ascensor. ''' def __init__(self): self.ascensor=ascensor self.delay=1 def run(self): ''' Dar vida al display ''' import time while 1: self.ascensor.GetInfo() time.sleep(self.delay) #------------------------------------------------------------------- class PuertaExterna: def __init__(self, ascensor): ''' ''' self.ascensor=ascensor self.puerta=Puerta() def run(self, Planta): ''' Dar vida al display ''' import time while 1: self.ascensor.GetAccionPuertaExt(Planta) time.sleep(self.delay) #------------------------------------------------------------------- class Planta: ''' Cada planta tiene una dotación comun y una que depende del número de ascencores. ''' def __init__(self, ListaDeAscensores, NumPlanta): import threadind self.NumPlanta=NumPlanta self.Botonera=Botonera(['Subir', 'Bajar']) self.Display=[] self.Puerta=[] for I in ListaDeAscensores: displ=Display(I) threading.Thread(target=displ.run) self.Display.append(displ) puerta=PuertaExterna(I) threading.Thread(target=puerta.run) self.Puerta.append(puerta) def PedirSubir(self): self.Botonera['Subir'].Pulsar() def PedirBajar(self): self.Botonera['Bajar'].Pulsar() #------------------------------------------------------------------- class Orden: def __init__(self, MayorOrig, MinorOrig, PlantaDestino): ''' El MayorOrig' indica si la orden proviene de un ascensor '0' o de una planta, '1', o de centralita '2' y el MinorOrig de que ascensor o de que planta. Si viene de la centralita el MinorOrig siempre será 0 porque hay una sola centralita. Objeto muy simple. ''' self.MayorOrig=MayorOrig self.MinorOrig=MinorOrig self.PlantaDestino=PlantaDestino #------------------------------------------------------------------- class Edificio: def __init__(self, PlantaInf, PlantaSup, NumAscensores, CargaMaximaAsc): import threading self.ListaDeAscensores=[] self.ListaDePlantas=[] self.ListaOrdenes=[] for N in range(NumAscensores): ascensor=Ascensor(PlantaInf, PlantaSup+1,CargaMaximaAsc) self.ListaDeAscensores.append(ascensor) t= threading.Thread(target=ascensor.run) for N in range(PlantaInf, PlantaSup+1): self.ListaDePlantas.append([self.ListaDeAscensores, N] ) edif=Edificio(-2,9,3,400) import time, random # Bucle de eventos aleatorios while 1: MayorOrig=random.randrange(2) if MayorOrig==0: # Orden desde un ascensor MinorOrig=random.randrange(len(edif.ListaDeAscensores)) else: # Orden desde una planta MinorOrig=random.randrange(len(edif.ListaDePlantas)) PlantaDestino=random.randrange(len(edif.ListaDePlantas)) RandOrden=Orden(MayorOrig, MinorOrig, PlantaDestino) edif.ListaOrdenes.append(RandOrden) time.sleep(1.5) ==================8<----------------------------------------------- -- Un saludo Antonio Castro /\ /\ \\W// _|0 0|_ +-oOOO-(___o___)-OOOo---------------------+ | . . . . U U . Antonio Castro Snurmacher | | . . . . . . . acastro en ciberdroide.com | +()()()---------()()()--------------------+ From vitojph en gmail.com Wed Dec 1 19:51:23 2004 From: vitojph en gmail.com (Victor Peinado) Date: Wed, 1 Dec 2004 10:51:23 -0800 Subject: =?ISO-8859-1?Q?Re:__Programaci=F3n_OO._Un_ejem?= =?ISO-8859-1?Q?plo_con_a_scensores_(ejem,_calculadoras).?= In-Reply-To: <200412010702.40450.jjdelcerromurciano@yahoo.es> References: <1101844429.10187.16.camel@renata.macondo.pri> <200412010702.40450.jjdelcerromurciano@yahoo.es> Message-ID: ¡Hola otra vez! Me he despertado hoy pensando en clases y objetos, ¿os lo podéis creer? Bueno, los problemas que tuve y que generaron esta interesante discusión están solucionados parcialmente. Los comentarios has sido la mar de ilustrativos y junto con algunas lecturas creo que ya tengo más claro cómo empezar a pensar en términos de OO. Hasta ahora, mis diseños eran más bien «aquí te pillo aquí te mato», más que nada porque no eran cosas complejas. > Te recomiendo que pruebes un ejercicio, y si quieres lo comentas por aqui (si > no le molesta a los demas). Voy a hacer tu ejercicio, no ahora que estoy algo liado, y si os parece, podemos seguir esta conversación. Imagino que habrá algún que otro novato al que le puede interesar. De verdad, muchas gracias por vuestros comentarios. Saludos. -- Víctor Peinado || || http://ieqo.org/blog From pepe en diselpro.com Wed Dec 1 23:28:13 2004 From: pepe en diselpro.com (Pepe Aracil) Date: Wed, 1 Dec 2004 23:28:13 +0100 Subject: CGI que devuelve contenido comprimido. Message-ID: <200412012328.13191.pepe@diselpro.com> Hola. Estoy acabando una aplicación web, y hay una parte de ella que retorna una lista bastante larga de una sola vez. Me he fijado en que practicamente todos los navegadores incluyen en la petición esta cabecera: Accept-Encoding: x-gzip, x-deflate, gzip, deflate ¿Esto quiere decir que aceptan contenido comprimido con gzip? Si es así,¿ como debo retornar el contenido comprimido ? Si se puede comprimir me supondría un gran ahorro en ancho de banda, porque he comprimido a mano el listado y este se queda en un 20% de su tamaño original. Gracias. From morillas en posta.unizar.es Wed Dec 1 23:54:34 2004 From: morillas en posta.unizar.es (luis miguel morillas) Date: Wed, 1 Dec 2004 23:54:34 +0100 Subject: Usar gdchart en windows Message-ID: <20041201225434.GA2117@marmota.unizar.es> Llevo algún tiempo utilizando pygdchart[1] con linux para generar gráficos. Quería usarlo ahora en algún equipo con ms windows, pero no veo versión precompilada para win32 (sí había de la versión anterior) [2] ¿Alguien está usando la nueva versión con windows? Saludos, [1] http://www.nullcube.com/software/pygdchart2.html [2] http://www.nullcube.com/software/pygdchart.html -- Luis Miguel No a las patentes de software en Europa EuropeSwPatentFree http://EuropeSwPatentFree.hispalinux.es From dtrillo en gmail.com Thu Dec 2 08:56:50 2004 From: dtrillo en gmail.com (david _) Date: Thu, 2 Dec 2004 08:56:50 +0100 Subject: =?iso-8859-1?q?Programaci=F3n_OO=2E_Un_ejemplo_con_a?= =?iso-8859-1?q?scensores?= Message-ID: <86b8f6b9041201235631351373@mail.gmail.com> > Yo vengo del VB, y en concreto, creo que esta propuesta es muy interesante. > > Tal y como yo lo plantearia: > 1 objeto Botones (desde dentro del ascensor), para el movimiento del > ascensor desde dentro > 1 objeto Planta (fuera del ascensor), para cuando los ascensores son > llamados desde una planta, desde fuera > 1 objeto ascensor, que tiene asociado un objeto Botones, y un Objeto > Planta (donde esta situado actualmente) > > Voy bien? > david Si. Vas bien. Es la forma de empezar, pero tienes que buscar mas objetos. Luego mira dentro de los objetos y describelos. Cuales son sus atributos o características. ¿Alguno de esos atributos es un objeto? Si es asi describelo. Luego detallan que cosas pueden hacer cada uno de esos objetos. No elimines los objetos triviales. Puede que a lo largo del analisis aparezcan aspectos interesantes relacionados con ellos. Solo al final puedes eliminar o simplificar objetos. Con el tiempo no hace falta hacer todo esto que te digo pero como forma de entrenamiento para cambiar la forma de pensar es un buen sistema. Yo jamas me metería en un ascensor de los tuyos. No tiene puertas. ;-) En general cualquier cosa que pueda encontrarse en mas de un estado interesa ponerla. Por ejemplo, El cable del ascensor no interesa. Suele estar entero todo el rato. ;-D. (Perdón por la broma.) El motor del ascensor no está siempre en el mismo estado. Habra que ponerlo. Y el indicador de encima de cada puerta tampoco está indicando lo mismo todo el rato. Tambien ponlo. etc. -- Un saludo Antonio Castro /\ /\ \\W// _|0 0|_ +-oOOO-(___o___)-OOOo---------------------+ | . . . . U U . Antonio Castro Snurmacher | | . . . . . . . acastro en ciberdroide.com | +()()()---------()()()--------------------+ ------------------------------ * Botones (desde dentro del ascensor) - Numero de Botones - IrA, es para marchar de una planta a otra * Planta (fuera del ascensor), para cuando los ascensores son llamados desde una planta, desde fuera - PuertaAbierta, por si el ascensor esta parado en esta planta o no, y permite llamarlo - AscensorViniendoAPlanta, cuando el ascensor se mueve con destino a una planta - DistanciaAscensorMasCercano, es el numero de plantas a recorrer desde la planta al ascensor que se encuentre mas ceercano a la planta * Ascensor - Botones, y un Objeto - Planta (donde esta situado actualmente) - EstadoPuerta: Abierta, parada en una planta; o Cerrada, es que se esta moviendo. * Edificio. es la estructura que alberga todo - NumeroPlantas, plantas que tiene el edificio - NumeroAscensores, que contiene el edificio Creo que es una mejora, pero seguro que falta algo. Alguien me ayuda? david From py en ch3m4.org Thu Dec 2 10:08:32 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Thu, 02 Dec 2004 10:08:32 +0100 Subject: CGI que devuelve contenido comprimido. In-Reply-To: <200412012328.13191.pepe@diselpro.com> References: <200412012328.13191.pepe@diselpro.com> Message-ID: <200412021008.36553.py@ch3m4.org> El Miércoles, 1 de Diciembre de 2004 23:28, Pepe Aracil escribió: > Hola. > > Estoy acabando una aplicación web, y hay una parte de ella que retorna una > lista bastante larga de una sola vez. > > Me he fijado en que practicamente todos los navegadores incluyen en la > petición esta cabecera: > > Accept-Encoding: x-gzip, x-deflate, gzip, deflate > > ¿Esto quiere decir que aceptan contenido comprimido con gzip? Efectívamente. El "deflate" te indica que también acepta "zip". Hay algunos navegadores (eg: lynx) que también aceptan "compress". > Si es así,¿ como debo retornar el contenido comprimido ? Envía la cabecera "Content-Encoding: gzip" y el archivo comprimido (en binario) como cuerpo ("body"). Para no tener que crear ficheros temporales, combina gzip.GzipFile con cStringIO: def compressBuf(s): zbuf=cStringIO.StringIO() zfile=gzip.GzipFile(mode='wb', fileobj=zbuf, compresslevel=9) zfile.write(s) zfile.close() return zbuf.getvalue() body=make_a_the_body() if not "gzip" in os.environ["HTTP_ACCEPT_ENCODING"]: print "Content-Type: text/html" print print body else: print "Content-Type: text/html" print "Content-Encoding: gzip" print "Content-Length: %d"%len(zBuf) print print compressBuf(zBuf), > Si se puede comprimir me supondría un gran ahorro en ancho de banda, porque > he comprimido a mano el listado y este se queda en un 20% de su tamaño > original. ------------ 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 py en ch3m4.org Thu Dec 2 10:13:14 2004 From: py en ch3m4.org (Chema =?iso-8859-15?q?Cort=E9s?=) Date: Thu, 02 Dec 2004 10:13:14 +0100 Subject: CGI que devuelve contenido comprimido. In-Reply-To: <200412021008.36553.py@ch3m4.org> References: <200412012328.13191.pepe@diselpro.com> <200412021008.36553.py@ch3m4.org> Message-ID: <200412021013.14382.py@ch3m4.org> Como el código tenía algunos fallos, lo reenvío corregido: import os,gzip,cStringIO def compressBuf(s):   zbuf=cStringIO.StringIO()   zfile=gzip.GzipFile(mode='wb', fileobj=zbuf, compresslevel=9)   zfile.write(s)   zfile.close()   return zbuf.getvalue() body=make_the_body() if not "gzip" in os.environ["HTTP_ACCEPT_ENCODING"]:   print "Content-Type: text/html"   print   print body else:   print "Content-Type: text/html"   print "Content-Encoding: gzip"   print "Content-Length: %d"%len(body)   print   print compressBuf(body), ------------ 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 pepe en diselpro.com Thu Dec 2 10:19:00 2004 From: pepe en diselpro.com (Pepe Aracil) Date: Thu, 2 Dec 2004 10:19:00 +0100 Subject: CGI que devuelve contenido comprimido. In-Reply-To: <200412021013.14382.py@ch3m4.org> References: <200412012328.13191.pepe@diselpro.com> <200412021008.36553.py@ch3m4.org> <200412021013.14382.py@ch3m4.org> Message-ID: <200412021019.01073.pepe@diselpro.com> Muchas gracias Chema ;) Saludos. El Jueves, 2 de Diciembre de 2004 10:13, Chema Cortés escribió: > Como el código tenía algunos fallos, lo reenvío corregido: > > import os,gzip,cStringIO > > def compressBuf(s): >   zbuf=cStringIO.StringIO() >   zfile=gzip.GzipFile(mode='wb', fileobj=zbuf, compresslevel=9) >   zfile.write(s) >   zfile.close() >   return zbuf.getvalue() > > body=make_the_body() > > if not "gzip" in os.environ["HTTP_ACCEPT_ENCODING"]: >   print "Content-Type: text/html" >   print >   print body > else: >   print "Content-Type: text/html" >   print "Content-Encoding: gzip" >   print "Content-Length: %d"%len(body) >   print >   print compressBuf(body), ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From acastro en ciberdroide.com Thu Dec 2 10:26:22 2004 From: acastro en ciberdroide.com (Antonio Castro) Date: Thu, 2 Dec 2004 10:26:22 +0100 (CET) Subject: =?iso-8859-1?q?Programaci=F3n_OO=2E_Un_ejemplo_con_a?= =?iso-8859-1?q?scensores?= In-Reply-To: <86b8f6b9041201235631351373@mail.gmail.com> References: <86b8f6b9041201235631351373@mail.gmail.com> Message-ID: On Thu, 2 Dec 2004, david _ wrote: > * Botones (desde dentro del ascensor) > - Numero de Botones > - IrA, es para marchar de una planta a otra IrA Sería conceptualmente una función. Se nota que te cuesta mucho cambiar de mentalidad. ;-) > > * Planta (fuera del ascensor), para cuando los ascensores son llamados > desde una planta, desde fuera > - PuertaAbierta, por si el ascensor esta parado en esta planta o > no, y permite llamarlo El objeto sería Puerta. Tendría como mínimo un atributo de estado con dos valores. (cerrada, abierta). > - AscensorViniendoAPlanta, cuando el ascensor se mueve con destino > a una planta Esto parece un estado del objeto ascensor y su descripción es mejorable. Parece que hay mezcla de dos atributos en uno solo. MovimientoAscensor con tres posibles valores. (subiendo, bajando, parado) Y el destino. Lo del destino debe tener en cuenta que es algo que está en función de un algoritmo. Un ascensor puede tener diferentes peticiones pendientes. Unas son claramente para el. Otras podrían serlo y lo que estamos llamando ahora destino sería la orden que ha sido asignada a un ascensor y que se está ejecutando. > - DistanciaAscensorMasCercano, es el numero de plantas a recorrer > desde la planta al ascensor que se encuentre mas ceercano a la planta Distancia es un mal atributo cuando se piensa en terminos de objetos. La distancia sería elresultado de una evaluación en la cual hay implicados dos objetos. Ascensor y Planta. Los atributos serían posición para el ascensosr, y numero de planta para planta. > * Ascensor > - Botones, y un Objeto > - Planta (donde esta situado actualmente) Mejor que planta posición. > - EstadoPuerta: Abierta, parada en una planta; o Cerrada, es que > se esta moviendo. > * Edificio. es la estructura que alberga todo > - NumeroPlantas, plantas que tiene el edificio > - NumeroAscensores, que contiene el edificio El edificio será el objeto que contenga a los restantes objetos. > Creo que es una mejora, pero seguro que falta algo. Alguien me ayuda? > david No vas mal. No se cambia de mentalidad simplemente comprendiendo unos principios. Estás en el camino correcto. -- Un saludo Antonio Castro /\ /\ \\W// _|0 0|_ +-oOOO-(___o___)-OOOo---------------------+ | . . . . U U . Antonio Castro Snurmacher | | . . . . . . . acastro en ciberdroide.com | +()()()---------()()()--------------------+ From py en ch3m4.org Thu Dec 2 12:20:09 2004 From: py en ch3m4.org (Chema =?iso-8859-15?q?Cort=E9s?=) Date: Thu, 02 Dec 2004 12:20:09 +0100 Subject: CGI que devuelve contenido comprimido. In-Reply-To: <200412021013.14382.py@ch3m4.org> References: <200412012328.13191.pepe@diselpro.com> <200412021008.36553.py@ch3m4.org> <200412021013.14382.py@ch3m4.org> Message-ID: <200412021220.15000.py@ch3m4.org> El Jueves, 2 de Diciembre de 2004 10:13, Chema Cortés escribió: > Como el código tenía algunos fallos, lo reenvío corregido: Como no hay dos sin tres, hay todavía un fallo pequeño: > > import os,gzip,cStringIO > > def compressBuf(s): >   zbuf=cStringIO.StringIO() >   zfile=gzip.GzipFile(mode='wb', fileobj=zbuf, compresslevel=9) >   zfile.write(s) >   zfile.close() >   return zbuf.getvalue() > > body=make_the_body() > > if not "gzip" in os.environ["HTTP_ACCEPT_ENCODING"]: >   print "Content-Type: text/html" >   print >   print body > else: >   print "Content-Type: text/html" >   print "Content-Encoding: gzip" >   print "Content-Length: %d"%len(body) En el 'Content-Length' debería estar el tamaño de los datos que se envían, o sea, el tamaño del "body" comprimido. zBuf=compressBuf(body) ... print "Content-Length: %d"%len(zBuf) ... print zBuf ------------ 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 python en ammsoft.com Thu Dec 2 14:38:38 2004 From: python en ammsoft.com (Amm-Python) Date: Thu, 2 Dec 2004 14:38:38 +0100 Subject: =?iso-8859-1?q?Funci=F3n_UPPER?= Message-ID: <002101c4d874$3bbf8670$640010ac@nombref31twj9b> Al utilizar la función upper() me convierte los carateres de minúscular a mayúsculas, pero NO las vocales acentuadas. He de utilizar algún proceso especial? Mi código es el siguiente: # -*- coding: iso-8859-1 -*- f = open('paises-2.txt','r') for linea in f: print linea.upper() f.close() Un Saludo Toni Martínez From py en ch3m4.org Thu Dec 2 14:52:28 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Thu, 02 Dec 2004 14:52:28 +0100 Subject: =?iso-8859-1?q?Funci=F3n?= UPPER In-Reply-To: <002101c4d874$3bbf8670$640010ac@nombref31twj9b> References: <002101c4d874$3bbf8670$640010ac@nombref31twj9b> Message-ID: <200412021452.28904.py@ch3m4.org> El Jueves, 2 de Diciembre de 2004 14:38, Amm-Python escribió: > Al utilizar la función upper() me convierte los carateres de minúscular > a mayúsculas, pero NO las vocales acentuadas. > He de utilizar algún proceso especial? No, tan sólo debes utilizar unicodes ó usar alguna función que respete "locales". > > Mi código es el siguiente: > > # -*- coding: iso-8859-1 -*- > > f = open('paises-2.txt','r') Es mejor que abras el fichero al estilo "unicode": import codecs f=codes.open('paises-2.txt','r','iso8859-1') > > for linea in f: > print linea.upper() > > f.close() ------------ 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 pacochaves en iespana.es Thu Dec 2 14:47:30 2004 From: pacochaves en iespana.es (Paco Chaves) Date: Thu, 02 Dec 2004 14:47:30 +0100 Subject: 'str' object has no attribute 'insert' Message-ID: <41AF1CF2.5020108@iespana.es> 'str' object has no attribute 'insert', estoy buscando que motiva esta salida en la linea de comandos cuando teccleo cualquier ejecucion relativa a #emerge "opcion" (y/o) "objetivo" recurro a esta lista porque ya he recabado ayuda en casi todos los sitios posibles relativos a Gentoo y sus herramientas, forums, google, etc., etc., y como creo que esta herramienta "EMERGE" esta implementada en Python y que el codigo de salida debe estar referido a algun problema relacionado con esto. Si alguien sabe o conoce sobre esto, por favor publicar una respuesta o enviarme directamente al correo kanchata2004 en arsystel.com Gracias ---Publicidad-------------------------------------------------------- Alquila tu vehículo al mejor precio con HERTZ ¡ 60 euros por el fin de semana ! http://tracker.tradedoubler.com/click?p=20846&a=1037797 From dlopez en aditel.org Thu Dec 2 15:33:11 2004 From: dlopez en aditel.org (Darío López Llueca) Date: Thu, 2 Dec 2004 15:33:11 +0100 Subject: 'str' object has no attribute 'insert' In-Reply-To: <41AF1CF2.5020108@iespana.es> References: <41AF1CF2.5020108@iespana.es> Message-ID: <20041202143311.GA29952@aditel.org> On Thu, Dec 02, 2004 at 02:47:30PM +0100, Paco Chaves wrote: > 'str' object has no attribute 'insert', estoy buscando que motiva esta > salida en la linea de comandos cuando teccleo cualquier ejecucion > relativa a > #emerge "opcion" (y/o) "objetivo" > recurro a esta lista porque ya he recabado ayuda en casi todos los > sitios posibles relativos a Gentoo y sus herramientas, forums, google, > etc., etc., > y como creo que esta herramienta "EMERGE" esta implementada en Python y > que el codigo de salida debe estar referido a algun problema relacionado > con esto. > Si alguien sabe o conoce sobre esto, por favor publicar una respuesta o > enviarme directamente al correo > kanchata2004 en arsystel.com > Gracias Por la salida que dices que sale, pudiera ser que tú Gentoo usara una versión antigua de Python (muy anigua diría yo) o el Gentoo haya optado por poner una versión anterior de Python, y el emerge (que efectivamente, usa Python esté haciendo uso de características del lenguaje que en esa versión aún no estaban implementadas. Siempre puedes echar un vistazo a la herramienta qpkg (que es la que usa emerge para hacer sus cositas), y tal vez te pueda salvar del apuro. > > ---Publicidad-------------------------------------------------------- > Alquila tu vehículo al mejor precio con HERTZ > ¡ 60 euros por el fin de semana ! > http://tracker.tradedoubler.com/click?p=20846&a=1037797 > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es From morillas en posta.unizar.es Thu Dec 2 15:30:13 2004 From: morillas en posta.unizar.es (luis miguel morillas) Date: Thu, 2 Dec 2004 15:30:13 +0100 Subject: =?iso-8859-1?Q?Funci=F3?= =?iso-8859-1?Q?n?= UPPER In-Reply-To: <002101c4d874$3bbf8670$640010ac@nombref31twj9b> References: <002101c4d874$3bbf8670$640010ac@nombref31twj9b> Message-ID: <20041202143013.GA4293@marmota.unizar.es> Asunto: [Python-es] Función UPPER Fecha: jue, dic 02, 2004 at 02:38:38 +0100 Citando a Amm-Python (python en ammsoft.com): > Al utilizar la función upper() me convierte los carateres de minúscular > a mayúsculas, pero NO las vocales acentuadas. > He de utilizar algún proceso especial? El problema seguramente será el encoding del sistema. Puedes modificar el encoding por defecto de tu entorno, pero eso haría tu código menos portable. A mí la solución que más me gusta (aunque al principio parezca más farragosa) es la siguente: # -*- coding: iso-8859-1 -*- import codecs, sys micadena = 'áéíóúñ' enc, dec, rwrap, wwrap = codecs.lookup('latin1') output = wwrap(sys.stdout) u = micadena.decode('latin1') print >> output, u.upper() Si modificas el encoding, no haría falta nada, pero tú has comprobado que ya no se ejecutaría bien en todas las máquinas. Mira: >>> import sys >>> sys.getdefaultencoding() 'ISO8859-1' >>> print 'áéíóúñ'.upper() ÁÉÍÓÚÑ Espero haberme explicado :) > > > Mi código es el siguiente: > > # -*- coding: iso-8859-1 -*- > > f = open('paises-2.txt','r') > > for linea in f: > print linea.upper() > > f.close() > > > Un Saludo > Toni Martínez > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es -- Luis Miguel No a las patentes de software en Europa EuropeSwPatentFree http://EuropeSwPatentFree.hispalinux.es From sergio en s3r.com.ar Thu Dec 2 15:31:08 2004 From: sergio en s3r.com.ar (=?ISO-8859-1?Q?Sergio_G=F3mez?=) Date: Thu, 02 Dec 2004 11:31:08 -0300 Subject: =?ISO-8859-1?Q?Programaci=F3n_OO=2E_Un_eje?= =?ISO-8859-1?Q?mplo_con_ascensores?= In-Reply-To: References: <86b8f6b9041201235631351373@mail.gmail.com> Message-ID: <41AF272C.1030802@s3r.com.ar> Antonio Castro wrote: >>* Botones (desde dentro del ascensor) >> - Numero de Botones >> - IrA, es para marchar de una planta a otra > > > IrA Sería conceptualmente una función. Se nota que te cuesta > mucho cambiar de mentalidad. ;-) > En todo caso, sería conceptualmente un método, no una función. /sergio From minoztro en gmail.com Thu Dec 2 15:49:37 2004 From: minoztro en gmail.com (Milton inostroza) Date: Thu, 2 Dec 2004 11:49:37 -0300 Subject: (sin asunto) Message-ID: <172699c504120206496d2fcd64@mail.gmail.com> -- Milton Inostroza Aguilera Secretario Academico Ingenieria Civil en Computación e Informática Organizador 6to. Encuentro Nacional de Linux Integrante de GULIqq Universidad Arturo Prat Iquique - Chile From acastro en ciberdroide.com Thu Dec 2 15:52:01 2004 From: acastro en ciberdroide.com (Antonio Castro) Date: Thu, 2 Dec 2004 15:52:01 +0100 (CET) Subject: =?ISO-8859-1?Q?Programaci=F3n_OO=2E_Un_eje?= =?ISO-8859-1?Q?mplo_con_ascensores?= In-Reply-To: <41AF272C.1030802@s3r.com.ar> References: <86b8f6b9041201235631351373@mail.gmail.com> <41AF272C.1030802@s3r.com.ar> Message-ID: On Thu, 2 Dec 2004, Sergio Gómez wrote: > Antonio Castro wrote: > >>* Botones (desde dentro del ascensor) > >> - Numero de Botones > >> - IrA, es para marchar de una planta a otra > > > > > > IrA Sería conceptualmente una función. Se nota que te cuesta > > mucho cambiar de mentalidad. ;-) > > > > En todo caso, sería conceptualmente un método, no una función. > > /sergio También podría decirse que un método es una funcion que no de vuelve ningún valor. Nunca me ha gustado esa distinción. Las funciones no tienen porque limitarse a devolver valores. Pueden alterar variables globales y los métodos tambien. De hecho una función se puede usar como un método si no recogemos el valor devuelto. Tienen nombre distinto pero en esencia son lo mismo. Es como si a las funciones que devuelven más de un valor dejamos de llamarlas funciones y les damos otro nombre. -- Un saludo Antonio Castro /\ /\ \\W// _|0 0|_ +-oOOO-(___o___)-OOOo---------------------+ | . . . . U U . Antonio Castro Snurmacher | | . . . . . . . acastro en ciberdroide.com | +()()()---------()()()--------------------+ From sergio en s3r.com.ar Thu Dec 2 16:25:05 2004 From: sergio en s3r.com.ar (=?ISO-8859-1?Q?Sergio_G=F3mez?=) Date: Thu, 02 Dec 2004 12:25:05 -0300 Subject: =?ISO-8859-1?Q?Programaci=F3n_OO=2E_Un_eje?= =?ISO-8859-1?Q?mplo_con_ascensores?= In-Reply-To: References: <86b8f6b9041201235631351373@mail.gmail.com> <41AF272C.1030802@s3r.com.ar> Message-ID: <41AF33D1.3050802@s3r.com.ar> Antonio Castro wrote: > También podría decirse que un método es una funcion que no de vuelve > ningún valor. Nunca me ha gustado esa distinción. Las funciones no > tienen porque limitarse a devolver valores. Pueden alterar variables > globales y los métodos tambien. De hecho una función se puede usar > como un método si no recogemos el valor devuelto. Tienen nombre distinto > pero en esencia son lo mismo. Es como si a las funciones que devuelven > más de un valor dejamos de llamarlas funciones y les damos otro nombre. > Conceptualmente no se podría decir que un método es una función (y/o en otros lenguajes un procedimiento). No importa si devuelve un valor o no. Los objetos describen (o implementan) métodos. En algunos lenguajes es posible que la sintaxis sea similar o que los métodos se implementen como funciones (o procedimientos). Eso no quiere decir que un método sea una función. /sergio From py en ch3m4.org Thu Dec 2 17:32:41 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Thu, 02 Dec 2004 17:32:41 +0100 Subject: 'str' object has no attribute 'insert' In-Reply-To: <41AF1CF2.5020108@iespana.es> References: <41AF1CF2.5020108@iespana.es> Message-ID: <200412021732.46208.py@ch3m4.org> El Jueves, 2 de Diciembre de 2004 14:47, Paco Chaves escribió: > 'str' object has no attribute 'insert', estoy buscando que motiva esta > salida en la linea de comandos cuando teccleo cualquier ejecucion > relativa a > #emerge "opcion" (y/o) "objetivo" Casi con toda seguridad, es un error que debe provenir de alguna ruta de búsquedas o algo similar que aparece como una cadena de caracteres cuando debería ser una lista de cadenas. Puede ser por muchas cosas; si tuviera más detalles podría decírtelo mejor. Comprueba que las variables de entorno que tengan rutas bien construídas (separadas por ':') y que en el /etc/make.conf estén las variables correctamente encerradas entre comillas, con separación por espacios entre palabras. > recurro a esta lista porque ya he recabado ayuda en casi todos los > sitios posibles relativos a Gentoo y sus herramientas, forums, google, > etc., etc., No te he visto en la lista de correo "gentoo-user-es" X-D > y como creo que esta herramienta "EMERGE" esta implementada en Python y > que el codigo de salida debe estar referido a algun problema relacionado > con esto. ------------ 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 jasalgir en querysoft.es Thu Dec 2 17:55:45 2004 From: jasalgir en querysoft.es (Powerbook) Date: Thu, 2 Dec 2004 17:55:45 +0100 Subject: wxmenu en wxPython en Mac OSX Message-ID: <022CF116-4483-11D9-A822-000A95A852C4@querysoft.es> Hola a tod en s: Alguien ha experimentado que en wxPython(2.5.3), las clases concernientes a menús (wxMenu, wxMenuBar ...) no funcionen bajo Mac OSX. Ya se que es una pregunta rara, pero todo funciona normal menos lo que a menús se refiere. Todo el resto de wxWidgets van bien. He buscado información al respecto pero no doy con la tecla. La versión de python es 2.3. El S.O. es Mac OSX (10.3.6). Saludos! From minoztro en gmail.com Fri Dec 3 18:18:33 2004 From: minoztro en gmail.com (Milton inostroza) Date: Fri, 3 Dec 2004 14:18:33 -0300 Subject: hola Message-ID: <172699c504120309185cb951a8@mail.gmail.com> por qué no me llega ningun mail? -- Milton Inostroza Aguilera Secretario Academico Ingenieria Civil en Computación e Informática Organizador 6to. Encuentro Nacional de Linux Integrante de GULIqq Universidad Arturo Prat Iquique - Chile From jcea en argo.es Fri Dec 3 18:51:32 2004 From: jcea en argo.es (Jesus Cea) Date: Fri, 03 Dec 2004 18:51:32 +0100 Subject: CGI que devuelve contenido comprimido. In-Reply-To: <200412012328.13191.pepe@diselpro.com> References: <200412012328.13191.pepe@diselpro.com> Message-ID: <41B0A7A4.5060008@argo.es> http://www.argo.es/~jcea/artic/web.htm Si usas apache o similar, mírate el "mod_gzip". En Apache 2 ya va integrado, no sé si como "mod_deflate". -- Jesus Cea Avion _/_/ _/_/_/ _/_/_/ jcea en argo.es http://www.argo.es/~jcea/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/_/_/_/ PGP Key Available at KeyServ _/_/ _/_/ _/_/ _/_/ _/_/ "Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ "My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/ "El amor es poner tu felicidad en la felicidad de otro" - Leibniz From pedro.carrasco en iver.es Fri Dec 3 19:43:47 2004 From: pedro.carrasco en iver.es (Pedro A. Carrasco Ponce) Date: Fri, 03 Dec 2004 19:43:47 +0100 Subject: NUevo en Python In-Reply-To: <1102098528.41b0b06042f5e@correoweb.viabcp.com> References: <1102098528.41b0b06042f5e@correoweb.viabcp.com> Message-ID: <41B0B3E3.1080705@iver.es> jdltorre en viabcp.com wrote: > Una consulta > quisiera saber cuales son las herramientas minimas necesarias para hacer > aplicaciones con PYTHON Y POSTGRESQL, he leido por ahi que se usa GLADE, pero > tambien he visto que existe WINGLADE, WXGLADE, WXPYTHON, PYQT, Y varias cosas > mas que lo unico que hacen es marearme por la variedad, y no se que buscar. Por portabilidad te recomiento wxPython con wxGlade para crearte las ventanas y eclipse como IDE con el plugin de Trustudio. Para postgres tienes pypg. Salu2 -- Pedro From jdltorre en viabcp.com Fri Dec 3 19:28:48 2004 From: jdltorre en viabcp.com (jdltorre en viabcp.com) Date: Fri, 3 Dec 2004 13:28:48 -0500 Subject: NUevo en Python In-Reply-To: References: Message-ID: <1102098528.41b0b06042f5e@correoweb.viabcp.com> Una consulta quisiera saber cuales son las herramientas minimas necesarias para hacer aplicaciones con PYTHON Y POSTGRESQL, he leido por ahi que se usa GLADE, pero tambien he visto que existe WINGLADE, WXGLADE, WXPYTHON, PYQT, Y varias cosas mas que lo unico que hacen es marearme por la variedad, y no se que buscar. gracias --------------------------------------------------------------- Banco de Crédito BCP - Dedicados a hacerte la Banca más simple. Visita nuestra Banca por Internet http://www.viabcp.com --------------------------------------------------------------- From FBatista en uniFON.com.ar Fri Dec 3 19:52:19 2004 From: FBatista en uniFON.com.ar (Batista, Facundo) Date: Fri, 3 Dec 2004 15:52:19 -0300 Subject: NUevo en Python Message-ID: [jdltorre en viabcp.com] #- quisiera saber cuales son las herramientas minimas #- necesarias para hacer #- aplicaciones con PYTHON Y POSTGRESQL, he leido por ahi que #- se usa GLADE, pero #- tambien he visto que existe WINGLADE, WXGLADE, WXPYTHON, #- PYQT, Y varias cosas Si quieres usar PostgreSQL desde Python, no necesitas para nada hacer una interfaz gráfica, con lo que no necesitas ni winglade, ni wxglade, ni ... Para usar PostgreSQL desde Python necesitas, aparte de Python y el PostgreSQL, un conector entre ambos. Una búsqueda por "python postgresql" en google te traerá muchos links interesantes. Slds. . Facundo From pabloreysobral en gmail.com Fri Dec 3 21:39:07 2004 From: pabloreysobral en gmail.com (Pablo Rey Sobral) Date: Fri, 3 Dec 2004 21:39:07 +0100 Subject: NUevo en Python In-Reply-To: References: Message-ID: <4c01c85a041203123973e4d850@mail.gmail.com> Hola, Para conectarte a postgresql desde python pypgsql.sourceforge.net Aunque quizás te interesaría lo siguiente, con lo que podrías conectarte a muchas más pdo.neurokode.com Sobre la interface visual, no tienes que usarla aunque te recomiendo pygtk o wxwidgets, ambos portables Windows y Linux Un saludo. From lordzealon en ono.com Fri Dec 3 22:33:24 2004 From: lordzealon en ono.com (Lord_ZealoN) Date: Fri, 03 Dec 2004 22:33:24 +0100 Subject: Aprendiendo se entiende la gente Message-ID: <1102109604.11880.4.camel@localhost.localdomain> Bueno, como os comenté, ahora me encuentro con tiempo de aprender python. Sobre todo, gracias a a que puedo leerme los tutoriales y probar ejemplos en mi PDA mientras me tomo mi cafecito jejeje :P Así que, alguien podría decirme, cual está considerado como el mejor tutorial de python?(formatos que puedo leer, pdf,lit,docm etc...) Si incluye temas de TK mejor, puesto es la única manera de construir ventanas en el PDA de momento. GTK y todo eso ya vendrá después en el PC Otra cosa, cual es la codificación de la cuenta de la lista de correo de sourceforge? No me estoy enterando de nada del proyecto porque los correos los recibo así: Today's Topics: 1. Re: [PYPYME] =?ISO-8859-1?Q?Integraci=F3n?= y =?ISO-8859-1?Q?personalizaci=F3n?= (Jose) 2. Re: [PYPYME] =?ISO-8859-1?Q?Integraci=F3n?= y =?ISO-8859-1?Q?personalizaci=F3n?= (Jose) 3. Re: [PYPYME] =?ISO-8859-1?Q?Integraci=F3n?= y =?ISO-8859-1?Q?personalizaci=F3n?= (Jose) 4. Re: RE: [pyPYME-Giotto] [PYPYME] =?ISO-8859-1?Q?Integraci=F3n?= y =?ISO-8859-1?Q?personalizaci=F3n?= (Jose) 5. RE: [PYPYME] =?ISO-8859-1?Q?Integraci=F3n?= y =?ISO-8859-1?Q?personalizaci=F3n?= (Jose) 6. Re: [PYPYME] =?ISO-8859-15?Q?Integraci=F3n_y_?= =?ISO-8859-15?Q?personalizaci=F3n?= (Mariano Draghi) He probado poner la codificación ISO-8859 y los sigo recibiendo igual. Un saludo. -- Lord_ZealoN Linux User: #370919 http://www.ubuntu-es.org From danilistas en micorreo.cai.es Sat Dec 4 12:06:35 2004 From: danilistas en micorreo.cai.es (daniFerSer) Date: Sat, 04 Dec 2004 12:06:35 +0100 Subject: Aprendiendo se entiende la gente In-Reply-To: <1102109604.11880.4.camel@localhost.localdomain> References: <1102109604.11880.4.camel@localhost.localdomain> Message-ID: <41B19A3B.1060908@micorreo.cai.es> Hola, a mi me aparece este: charset=ISO-8859-15. Lord_ZealoN wrote: >Bueno, como os comenté, ahora me encuentro con tiempo de aprender >python. > >Sobre todo, gracias a a que puedo leerme los tutoriales y probar >ejemplos en mi PDA mientras me tomo mi cafecito jejeje :P > >Así que, alguien podría decirme, cual está considerado como el mejor >tutorial de python?(formatos que puedo leer, pdf,lit,docm etc...) Si >incluye temas de TK mejor, puesto es la única manera de construir >ventanas en el PDA de momento. GTK y todo eso ya vendrá después en el PC > >Otra cosa, cual es la codificación de la cuenta de la lista de correo de >sourceforge? > >No me estoy enterando de nada del proyecto porque los correos los recibo >así: > >Today's Topics: > > 1. Re: [PYPYME] =?ISO-8859-1?Q?Integraci=F3n?= y > =?ISO-8859-1?Q?personalizaci=F3n?= (Jose) > 2. Re: [PYPYME] =?ISO-8859-1?Q?Integraci=F3n?= y > =?ISO-8859-1?Q?personalizaci=F3n?= (Jose) > 3. Re: [PYPYME] =?ISO-8859-1?Q?Integraci=F3n?= y > =?ISO-8859-1?Q?personalizaci=F3n?= (Jose) > 4. Re: RE: [pyPYME-Giotto] [PYPYME] > =?ISO-8859-1?Q?Integraci=F3n?= y >=?ISO-8859-1?Q?personalizaci=F3n?= (Jose) > 5. RE: [PYPYME] =?ISO-8859-1?Q?Integraci=F3n?= y > =?ISO-8859-1?Q?personalizaci=F3n?= (Jose) > 6. Re: [PYPYME] =?ISO-8859-15?Q?Integraci=F3n_y_?= > =?ISO-8859-15?Q?personalizaci=F3n?= (Mariano Draghi) > >He probado poner la codificación ISO-8859 y los sigo recibiendo igual. > >Un saludo. > > From rapto en arrakis.es Sat Dec 4 12:58:23 2004 From: rapto en arrakis.es (Marcos =?ISO-8859-1?Q?S=E1nchez?= Provencio) Date: Sat, 04 Dec 2004 12:58:23 +0100 Subject: Aprendiendo se entiende la gente In-Reply-To: <1102109604.11880.4.camel@localhost.localdomain> References: <1102109604.11880.4.camel@localhost.localdomain> Message-ID: <1102161505.5144.8.camel@renata.macondo.pri> Parece un bug de mailman (no he tenido tiempo de mirar el código fuente, pero invito a todos a hacerlo. Debe de andar por Handlers/Decorate.py). Puedes intentar poner el resumen en mime (ve a tu página de opciones de usuario) o recibirlos sin agrupar. Igual esto último es lo más cómodo, ya que de todos modos puedes hacerte un filtro de correo que te los vaya agrupando en una carpeta. El vie, 03-12-2004 a las 22:33 +0100, Lord_ZealoN escribió: > Otra cosa, cual es la codificación de la cuenta de la lista de correo de > sourceforge? > > No me estoy enterando de nada del proyecto porque los correos los recibo > así: > > Today's Topics: > > 1. Re: [PYPYME] =?ISO-8859-1?Q?Integraci=F3n?= y > =?ISO-8859-1?Q?personalizaci=F3n?= (Jose) > 2. Re: [PYPYME] =?ISO-8859-1?Q?Integraci=F3n?= y > =?ISO-8859-1?Q?personalizaci=F3n?= (Jose) > 3. Re: [PYPYME] =?ISO-8859-1?Q?Integraci=F3n?= y > =?ISO-8859-1?Q?personalizaci=F3n?= (Jose) > 4. Re: RE: [pyPYME-Giotto] [PYPYME] > =?ISO-8859-1?Q?Integraci=F3n?= y > =?ISO-8859-1?Q?personalizaci=F3n?= (Jose) > 5. RE: [PYPYME] =?ISO-8859-1?Q?Integraci=F3n?= y > =?ISO-8859-1?Q?personalizaci=F3n?= (Jose) > 6. Re: [PYPYME] =?ISO-8859-15?Q?Integraci=F3n_y_?= > =?ISO-8859-15?Q?personalizaci=F3n?= (Mariano Draghi) > > He probado poner la codificación ISO-8859 y los sigo recibiendo igual. > > Un saludo. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From jimmsosa en yahoo.es Sat Dec 4 17:35:19 2004 From: jimmsosa en yahoo.es (jimmy sosa) Date: Sat, 4 Dec 2004 17:35:19 +0100 Subject: preguntas Message-ID: Hola a todos, Me acabo de inscribir en la lista y estoy dando mis primeros pasos por lo que quisiera preguntar algunas cosas: 1.- Existe un entorno de desarrollo para aplicaciones Windows. 2.- Es factible la utilización de python para aplicaciones windows que trabajen con BD. 3.- Existe algún libro de calidad en la red que me pueda bajar y preferiblemente en español. Muchas gracias, Jimmy From aragorn en pythonhispano.org Sat Dec 4 18:23:09 2004 From: aragorn en pythonhispano.org (Jose) Date: Sat, 04 Dec 2004 18:23:09 +0100 Subject: preguntas In-Reply-To: References: Message-ID: <1102180989.3603.264.camel@demeter.speriaitc.com> El sáb, 04-12-2004 a las 17:35, jimmy sosa escribió: > Hola a todos, > > Me acabo de inscribir en la lista y estoy dando mis primeros pasos por lo > que quisiera preguntar algunas cosas: > > 1.- Existe un entorno de desarrollo para aplicaciones Windows. Puedes usar la combinación Eclipse + pydev o SPE (http://spe.pycs.net/). > 2.- Es factible la utilización de python para aplicaciones windows que > trabajen con BD. De hecho Python te ofrece una de las mejores soluciones de programación de bases de datos. Consulta la información sobre el DB-API en el sitio www.python.org y la página del DB-SIG, donde se relacionan los principales 'drivers' de acceso a bases de datos. > 3.- Existe algún libro de calidad en la red que me pueda bajar y > preferiblemente en español. No que yo sepa, aunque la documentación del sitio web www.python.org y el texto de 'Dive into Python' son bastante buenos para empezar. Pero todo en inglés. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From csotelop en yahoo.es Sat Dec 4 18:29:29 2004 From: csotelop en yahoo.es (Carlos Eduardo Sotelo Pinto) Date: Sat, 04 Dec 2004 12:29:29 -0500 Subject: preguntas In-Reply-To: References: Message-ID: <41B1F3F9.3020203@yahoo.es> jimmy sosa wrote: >Hola a todos, > >Me acabo de inscribir en la lista y estoy dando mis primeros pasos por lo >que quisiera preguntar algunas cosas: > >1.- Existe un entorno de desarrollo para aplicaciones Windows. > > Tienes tinker, wxpython, QT, entre otrso con algunos IDEs Boa constuctor http://boa-constructor.sourceforge.net/ que integra el Python con el wxpython wxGlade http://wxglade.sourceforge.net/ tambien interado al wxPython que son los que conozco >2.- Es factible la utilización de python para aplicaciones windows que >trabajen con BD. > > SI tienes para esto modulos como MsSQLdb , pyPGSQL y otrso para poder acceder a las bases de datos >3.- Existe algún libro de calidad en la red que me pueda bajar y >preferiblemente en español. > > > haymuchos, pero te recomendaria usar el emule >Muchas gracias, > >Jimmy > >_______________________________________________ >Python-es mailing list >Python-es en aditel.org >http://listas.aditel.org/listinfo/python-es > > > From rapto en arrakis.es Sat Dec 4 21:54:15 2004 From: rapto en arrakis.es (Marcos =?ISO-8859-1?Q?S=E1nchez?= Provencio) Date: Sat, 04 Dec 2004 21:54:15 +0100 Subject: preguntas In-Reply-To: <1102180989.3603.264.camel@demeter.speriaitc.com> References: <1102180989.3603.264.camel@demeter.speriaitc.com> Message-ID: <1102193655.5522.4.camel@renata.macondo.pri> El sáb, 04-12-2004 a las 18:23 +0100, Jose escribió: > El sáb, 04-12-2004 a las 17:35, jimmy sosa escribió: > > Hola a todos, > > > > Me acabo de inscribir en la lista y estoy dando mis primeros pasos por lo > > que quisiera preguntar algunas cosas: > > > > 3.- Existe algún libro de calidad en la red que me pueda bajar y > > preferiblemente en español. > > No que yo sepa, aunque la documentación del sitio web www.python.org y > el texto de 'Dive into Python' son bastante buenos para empezar. Pero > todo en inglés. En espanis también, aunque no será la última versión: http://es.diveintopython.org/ http://pyspanishdoc.sourceforge.net/ Hay más referencias en: http://es.wikipedia.org/wiki/Python ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From apuntesus en yahoo.com Mon Dec 6 00:35:01 2004 From: apuntesus en yahoo.com (qqq qqqq) Date: Sun, 5 Dec 2004 15:35:01 -0800 (PST) Subject: Cual es la variable para win32 que devuelve Documents and Settings\usuario Message-ID: <20041205233501.92194.qmail@web50309.mail.yahoo.com> Hola a todos , Estoy haciendo una aplicacion en python y me gustaria que fuera multiplataforma. En esta aplicacion se escriben ciertos archivos en el home del usuario. En linux utilizo el siguiente comando para que me devuelva el home : os.environ.get("HOME") Pero en windows no me devuelve nada , he visto que programas migrados de linux a windows escriben en Documents and Settings\el_nombre_del_usuario. Un Saludo. __________________________________ Do you Yahoo!? Meet the all-new My Yahoo! - Try it today! http://my.yahoo.com ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From mlacunza en gmail.com Mon Dec 6 05:25:08 2004 From: mlacunza en gmail.com (Mario Lacunza) Date: Sun, 05 Dec 2004 23:25:08 -0500 Subject: Correos de la lista In-Reply-To: <20041205233501.92194.qmail@web50309.mail.yahoo.com> References: <20041205233501.92194.qmail@web50309.mail.yahoo.com> Message-ID: <41B3DF24.1000907@gmail.com> Hola amigos! Una consulta, en estos ultimos dias he recibido tal vez solo el 10% del volumen de mensajes habituales de esta lista, ha sido asi?? es decir no hemos escrito tanto o he tenido un problema en la recepcion?? Saludos / Best reagards Mario Lacunza Email: mlacunza en gmail.com Lima - Peru From jose.benito.gonzalez en cern.ch Mon Dec 6 09:51:08 2004 From: jose.benito.gonzalez en cern.ch (Jose Benito Gonzalez Lopez) Date: Mon, 06 Dec 2004 09:51:08 +0100 Subject: Contar numero de paginas de un PDF Message-ID: <41B41D7C.70605@cern.ch> Hola todos, Alguno de vosotros sabe como puedo hacer para contar el numero de páginas de un fichero PDF usando python? Muchas gracias de antemano. Jose -- Jose Benito Gonzalez Lopez CERN Document Server ** ** InDiCo Project ** ** CDSconv ** Room: Bldg 513-R-027 ** Voice: +41 22 76 78893 From rapto en arrakis.es Mon Dec 6 10:40:50 2004 From: rapto en arrakis.es (Marcos =?ISO-8859-1?Q?S=E1nchez?= Provencio) Date: Mon, 06 Dec 2004 10:40:50 +0100 Subject: Correos de la lista In-Reply-To: <41B3DF24.1000907@gmail.com> References: <20041205233501.92194.qmail@web50309.mail.yahoo.com> <41B3DF24.1000907@gmail.com> Message-ID: <1102326051.4921.0.camel@renata.macondo.pri> Podéis consultar todos los mensajes en: http://listas.aditel.org/archivos/python-es/ El dom, 05-12-2004 a las 23:25 -0500, Mario Lacunza escribió: > Hola amigos! > > Una consulta, en estos ultimos dias he recibido tal vez solo el 10% del > volumen de mensajes habituales de esta lista, ha sido asi?? es decir no > hemos escrito tanto o he tenido un problema en la recepcion?? > > Saludos / Best reagards > > Mario Lacunza > Email: mlacunza en gmail.com > Lima - Peru > > > _______________________________________________ > 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 lars en telefonica.net Mon Dec 6 12:31:00 2004 From: lars en telefonica.net (lars) Date: Mon, 06 Dec 2004 12:31:00 +0100 Subject: Cual es la variable para win32 que devuelve Documents and Settings\usuario In-Reply-To: <20041205233501.92194.qmail@web50309.mail.yahoo.com> References: <20041205233501.92194.qmail@web50309.mail.yahoo.com> Message-ID: <41B442F4.90007@telefonica.net> haciendo os.environ te muestra todas las variables de entorno a las que puedes llamar, si te fijas veras que lo que buscas es HOMEPATH (o quizas, APPDATA): >>> os.environ.get("HOMEPATH") '\\Documents and Settings\\lars' >>> os.environ.get("APPDATA") 'C:\\Documents and Settings\\lars\\Datos de programa' qqq qqqq wrote: >Hola a todos , > >Estoy haciendo una aplicacion en python y me gustaria >que fuera multiplataforma. > >En esta aplicacion se escriben ciertos archivos en el >home del usuario. > >En linux utilizo el siguiente comando para que me >devuelva el home : > >os.environ.get("HOME") > >Pero en windows no me devuelve nada , he visto que >programas migrados de linux a windows escriben en >Documents and Settings\el_nombre_del_usuario. > >Un Saludo. > > > > >__________________________________ >Do you Yahoo!? >Meet the all-new My Yahoo! - Try it today! >http://my.yahoo.com > > > > >------------------------------------------------------------------------ > >_______________________________________________ >Python-es mailing list >Python-es en aditel.org >http://listas.aditel.org/listinfo/python-es > > From FBatista en uniFON.com.ar Mon Dec 6 21:58:23 2004 From: FBatista en uniFON.com.ar (Batista, Facundo) Date: Mon, 6 Dec 2004 17:58:23 -0300 Subject: =?iso-8859-1?q?Cuarta_reuni=F3n_de_PyAr_-_Python_Arg?= =?iso-8859-1?q?entina=2C_Jueves_9_de_Diciembre?= Message-ID: El Grupo de Usuarios de Python en Argentina, PyAr, celebrará su cuarta reunión el Jueves 9 de Diciembre de 2004 a las 20:30 hs. Detalles en http://pyar.decode.com.ar/Members/pziliani/event.diciembre Agenda ------ Si bien nuestra agenda es bastante abierta, en esta oportunidad pretendemos conversar sobre los siguientes puntos: - Organización y contenido de nuestro portal http://pyar.decode.com.ar - Promoción de las actividades del grupo para aumentar nuestra cantidad de miembros. - Planificación de nuestro primer "sprint". Dónde ----- Nos reunimos en el bar Hip Hop, Hipólito Yirigoyen 640, Ciudad de Buenos Aires. Normalmente nos reunimos mas temprano, pero este mes por causas de fuerza mayor el horario de inicio se ha corrido a las 20:30 hs. Sobre PyAr ---------- Para saber mas sobre nosotros, te invitamos a visitar nuestro portal [http://pyar.decode.com.ar], y/o a suscribirte a nuestra lista de correo (instrucciones en http://pyar.decode.com.ar/Members/ltorre/listademail). Nos reunimos el segundo jueves de cada mes. . Facundo From csotelop en yahoo.es Mon Dec 6 22:37:25 2004 From: csotelop en yahoo.es (Carlos Eduardo Sotelo Pinto) Date: Mon, 06 Dec 2004 16:37:25 -0500 Subject: Programadores python Arequipa Message-ID: <41B4D115.90600@yahoo.es> Hola gente conocen programadores python en Arequipa, no se si dees participar en un encuentro aprovechando de que en la Catolica se realizara el Jinis Opinion . esto sera del 13 al 15 de diciembre ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From carlos en pemas.net Mon Dec 6 23:53:01 2004 From: carlos en pemas.net (Carlos Perello Marin) Date: Mon, 06 Dec 2004 23:53:01 +0100 Subject: =?iso-8859-1?q?Reuni=F3n?= de desarrolladores y usuarios de pygtk en =?iso-8859-1?q?Matar=F3?= (Barcelona) Message-ID: <1102373581.4531.11.camel@localhost.localdomain> Como parte de las actividades que se están desarrollando en el congreso sobre Ubuntu en Mataró (Barcelona), este fin de semana se celebrará una reunión de desarrolladores y usuarios de pygtk que estará accesible para todo el mundo así que si alguno se quiere pasar, es bienvenido. La conferencia es principalmente en Inglés aunque estamos por aquí algunos españoles. Para más información: http://www.ubuntulinux.org/wiki/Conference http://www.ubuntulinux.org/wiki/PyGTKMegaBOF Bye. -- Carlos Perelló Marín Ubuntu Warty (PowerPC) => http://www.ubuntulinux.org Linux Registered User #121232 mailto:carlos en pemas.net || mailto:carlos en gnome.org http://carlos.pemas.net Valencia - Spain ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: This is a digitally signed message part URL: ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From peralta en aditel.org Tue Dec 7 01:33:08 2004 From: peralta en aditel.org (Luis Peralta) Date: Tue, 7 Dec 2004 01:33:08 +0100 Subject: Correos de la lista In-Reply-To: <1102326051.4921.0.camel@renata.macondo.pri> References: <20041205233501.92194.qmail@web50309.mail.yahoo.com> <41B3DF24.1000907@gmail.com> <1102326051.4921.0.camel@renata.macondo.pri> Message-ID: <20041207003308.GA23620@spisa.uji.es> Hola Marcos! El lun, 06 dic 2004, Marcos Sánchez Provencio decía: > Podéis consultar todos los mensajes en: > http://listas.aditel.org/archivos/python-es/ Y de forma no oficial hay un feed RSS disponible en: http://listas.aditel.org/archivos/python-es/rss.xml Un saludo, -- Luis Peralta From lordzealon en ono.com Tue Dec 7 13:43:27 2004 From: lordzealon en ono.com (Lord ZealoN) Date: Tue, 07 Dec 2004 13:43:27 +0100 Subject: Programa de =?iso-8859-1?q?gesti=F3n_facturaci=F3n_en_python?= Message-ID: <41B5A56F.1000304@ono.com> Hola a todos. Recuerdo que hay un programa bastante bueno de facturación y gestión escrito en python, pero ahora no recuerdo el nombre ¿Alguien podría refrescarme la memoria? Un saludo. -- Lord_ZealoN (Project Leader) Fire&Ice Studios (http://www.fireicestudios.com) Don't dream, PLAY! From csotelop en yahoo.es Tue Dec 7 14:09:16 2004 From: csotelop en yahoo.es (Carlos Eduardo Sotelo Pinto) Date: Tue, 07 Dec 2004 08:09:16 -0500 Subject: Programa de =?ISO-8859-1?Q?gesti=F3n_facturaci?= =?ISO-8859-1?Q?=F3n_en_python?= In-Reply-To: <41B5A56F.1000304@ono.com> References: <41B5A56F.1000304@ono.com> Message-ID: <41B5AB7C.3030906@yahoo.es> tiene a luca y cimarron ...luca esta aqui http://papo.vialibre.org.ar/ pero cimarron no se donde esta Lord ZealoN wrote: > Hola a todos. > > Recuerdo que hay un programa bastante bueno de facturación y gestión > escrito en python, pero ahora no recuerdo el nombre > > ¿Alguien podría refrescarme la memoria? > > Un saludo. From fvillarroel en yahoo.com Tue Dec 7 14:28:09 2004 From: fvillarroel en yahoo.com (FERNANDO VILLARROEL) Date: Tue, 7 Dec 2004 05:28:09 -0800 (PST) Subject: Text Control Message-ID: <20041207132809.32474.qmail@web41206.mail.yahoo.com> Hola estoy desarrollando con wxGlade, pero no encuentro como definir la cantidad de caracteres que se pueden ingresar en un Text_Control, me explico quiero que solo el usuario pueda ingresar solo 5 caracteres en un text, como consio esto?. self.text_ctrl_1 = wx.TextCtrl(self, -1, "", style=wx.TE_PROCESS_ENTER) Fernando Villarroel N. __________________________________ Do you Yahoo!? Yahoo! Mail - Helps protect you from nasty viruses. http://promotions.yahoo.com/new_mail ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From javiercm en gmail.com Tue Dec 7 18:37:28 2004 From: javiercm en gmail.com (=?ISO-8859-1?Q?Javier_Crespo_Mart=EDn?=) Date: Tue, 7 Dec 2004 18:37:28 +0100 Subject: Modulo mailbox Message-ID: <3422c7b204120709374a0e29a0@mail.gmail.com> Estoy intentando usar el modulo mailbox, para obtener los mensajes de correo de archivos en formato mbox y no me aca de funcionar, el código que uso es el siguiente: def msgfactory(fp): try: return email.message_from_file(fp) except email.Errors.MessageParseError: # Don't return None since that will # stop the mailbox iterator return '' def analisis(archivo = ''): fp = open(archivo,'r') print 'Analizando el fichero '+ archivo mbox = mailbox.UnixMailbox(fp, msgfactory) msg = mbox.next() while msg is not None: id_RFC822 = msg.get('Message-ID') email = msg.get('from') nombre = email dominio = 'falta calcular' padre = msg.getheader('In-Reply-To') asunto = msg.getheader('subject') fecha = msg.getheader('date') msg = mbox.next() print (id_RFC822 +' '+ remitente +' '+ padre +' '+ asunto +' '+ fecha + '\n') sql.close() El error que me da es que el objeto msg esta vacio. Un saludo y gracias por adelantado From hsantos78 en yahoo.es Tue Dec 7 22:54:09 2004 From: hsantos78 en yahoo.es (Hector Santos) Date: Tue, 07 Dec 2004 15:54:09 -0600 Subject: Substituto para arhivos .bat Message-ID: <41B62681.60809@yahoo.es> Deseo utilizar el lenguaje python en vez de los archivos de lote .bat de windows pero no estoy seguro de como pasar comandos. Alguan idea de donde puedo encontrar esa informacion? From magmax9 en yahoo.es Wed Dec 8 04:44:12 2004 From: magmax9 en yahoo.es (Miguel Angel Garcia) Date: Wed, 08 Dec 2004 04:44:12 +0100 Subject: Substituto para arhivos .bat In-Reply-To: <41B62681.60809@yahoo.es> References: <41B62681.60809@yahoo.es> Message-ID: <1102477452.9493.2.camel@lobezno> Por "pasar" no entiendo si te refieres a ls parámetros del programa o a los programas a ejecutar. Por ello te respondo a los dos. Los parámetros se recogen mediante: -------------------- import sys if len(sys.argv)>0: print "los parámetros están en argv y son: ", sys.argv -------------------- Y para invocar órdenes, mírate la librería "commands" -------------------- import commands commands.getoutput("dir") -------------------- Suerte! El mar, 07-12-2004 a las 15:54 -0600, Hector Santos escribió: > Deseo utilizar el lenguaje python en vez de los archivos de lote .bat de > windows pero no estoy seguro de como pasar comandos. Alguan idea de > donde puedo encontrar esa informacion? > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es From acastro en ciberdroide.com Wed Dec 8 09:55:06 2004 From: acastro en ciberdroide.com (Antonio Castro) Date: Wed, 8 Dec 2004 09:55:06 +0100 (CET) Subject: Substituto para arhivos .bat In-Reply-To: <41B62681.60809@yahoo.es> References: <41B62681.60809@yahoo.es> Message-ID: On Tue, 7 Dec 2004, Hector Santos wrote: > Deseo utilizar el lenguaje python en vez de los archivos de lote .bat de > windows pero no estoy seguro de como pasar comandos. Alguan idea de > donde puedo encontrar esa informacion? Mirate los módulos 'os' y 'sys'. Quizás por pasar comando te refieras a esto. finp, fout, ferr= os.popen3(comando) -- Un saludo Antonio Castro /\ /\ \\W// _|0 0|_ +-oOOO-(___o___)-OOOo---------------------+ | . . . . U U . Antonio Castro Snurmacher | | . . . . . . . acastro en ciberdroide.com | +()()()---------()()()--------------------+ From jasalgir en querysoft.es Wed Dec 8 18:22:11 2004 From: jasalgir en querysoft.es (Powerbook) Date: Wed, 8 Dec 2004 18:22:11 +0100 Subject: wxPython y bases de datos Message-ID: Hola a Tod en s: Algun@ de vosotr en s ha podido compilar los wxWidgets con soporte ODBC para aprovechar las capacidades de sus clases bajo wxPython?. ¿Es mejor aprovechar las capacidades de conectividad a BD de los wxWidgets en wxPython o quizás sería mejor que el acceso a BD sea manejado mediante las DB-API de Python? Tengo que realizar una aplicación en wxPython y la verdad no tengo claro que es mejor. Apelo a vuestra sabiduría ya que como veis ando bastante pez. Saludos! From lcatalin en siadv.com Thu Dec 9 10:50:56 2004 From: lcatalin en siadv.com (Catalin Lungu) Date: Thu, 9 Dec 2004 10:50:56 +0100 Subject: Text Control References: <20041207132809.32474.qmail@web41206.mail.yahoo.com> Message-ID: <011d01c4ddd4$96b0f040$d900a8c0@catalin> Prueba con: .SetMaxLength(unsigned long len) ----- Original Message ----- From: "FERNANDO VILLARROEL" To: Sent: Tuesday, December 07, 2004 2:28 PM Subject: [Python-es] Text Control > Hola estoy desarrollando con wxGlade, pero no > encuentro como definir la cantidad de caracteres que > se pueden ingresar en un Text_Control, me explico > quiero que solo el usuario pueda ingresar solo 5 > caracteres en un text, como consio esto?. > > self.text_ctrl_1 = wx.TextCtrl(self, -1, "", > style=wx.TE_PROCESS_ENTER) > > Fernando Villarroel N. > > > > __________________________________ > Do you Yahoo!? > Yahoo! Mail - Helps protect you from nasty viruses. > http://promotions.yahoo.com/new_mail > -------------------------------------------------------------------------------- _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From py en topmusic.ch Thu Dec 9 13:45:55 2004 From: py en topmusic.ch (=?iso-8859-1?Q?Fran=E7ois?=) Date: Thu, 9 Dec 2004 13:45:55 +0100 Subject: Contar numero de paginas de un PDF In-Reply-To: <41B41D7C.70605@cern.ch> References: <41B41D7C.70605@cern.ch> Message-ID: Hola, > Alguno de vosotros sabe como puedo hacer para contar > el numero de páginas de un fichero PDF usando python? Usando python...no, pero quizas puedes usar una de la possibilidades de mbtPdfAsm : http://thierry.schmit.free.fr/dev/mbtPdfAsm/mbtPdfAsm2.html mbtPdfAsm -mFichero.pdf -gN 7; François From jdjg en ya.com Thu Dec 9 19:47:37 2004 From: jdjg en ya.com (jdjg) Date: Thu, 09 Dec 2004 19:47:37 +0100 Subject: =?iso-8859-1?q?Dise=F1ador_de_GUIs_para_wxwidgets_y_?= =?iso-8859-1?q?IDEs?= Message-ID: <41B89DC9.8030705@ya.com> Hola a todos! Sé que es un tema habitual pero me gustaría que me dierais vuestra opinión sobre la herramienta que veis más recomendable para hacer GUI con wxwidgets. Por lo que he leido, entiendo que tengo las siguientes opciones: BOA Por lo que he leido en esta lista, es la que más promete pero la que creo que tarda más en actualizar versiones y me ha dado algunos problemas de versiones. Poco documentada. WXGLADE (opcional SPE como IDE) Es un entorno que parece sencillo, cómodo y independiente del IDE con el que, por lo que he leido, se puede separar diseño de implementación. Además, opcionalmente se puede usar junto con SPE. ¿Que opinais de SPE? PYTHONCARD Parece el proyecto más trabajado y con mucha documentación pero ¿que limitaciones tiene? ¿el código resultante es wxpython? ¿qué limitaciones, ventajas e inconvenientes tienen cada uno de ellos? Gracias por adelantado por orientarme en este océano de posibilidades. Saludos, Javier From morillas en posta.unizar.es Thu Dec 9 21:11:03 2004 From: morillas en posta.unizar.es (luis miguel morillas) Date: Thu, 9 Dec 2004 21:11:03 +0100 Subject: Modificar archivos de configuracion In-Reply-To: <1102621340.1863.20.camel@darkstar.paradise_lost.net> References: <1102621340.1863.20.camel@darkstar.paradise_lost.net> Message-ID: <20041209201103.GA16634@marmota.unizar.es> Asunto: [Python-es] Modificar archivos de configuracion Fecha: jue, dic 09, 2004 at 01:42:20 -0600 Citando a Aldo Vargas (aldo en gmc.dynip.com): > Estoy realizando una aplicacion en donde tengo que cambiar ciertos > archivos de configuracion como por ejemplo el dhcpd.conf, exports, > fstab, hay alguna manera de poderlos cambiar mediante python? es decir > abrirlos modificar uno o dos valores o insertar texto dentro del el y > despues guardarlo? > Por qué no? Son ficheros de texto. Si tienes permiso, puedes cambiarlos. -- Luis Miguel No a las patentes de software en Europa EuropeSwPatentFree http://EuropeSwPatentFree.hispalinux.es From aldo en gmc.dynip.com Thu Dec 9 20:42:20 2004 From: aldo en gmc.dynip.com (Aldo Vargas) Date: Thu, 09 Dec 2004 13:42:20 -0600 Subject: Modificar archivos de configuracion Message-ID: <1102621340.1863.20.camel@darkstar.paradise_lost.net> Estoy realizando una aplicacion en donde tengo que cambiar ciertos archivos de configuracion como por ejemplo el dhcpd.conf, exports, fstab, hay alguna manera de poderlos cambiar mediante python? es decir abrirlos modificar uno o dos valores o insertar texto dentro del el y despues guardarlo? Gracias. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From maramsis en gmail.com Thu Dec 9 21:19:53 2004 From: maramsis en gmail.com (maram) Date: Thu, 9 Dec 2004 17:19:53 -0300 Subject: =?ISO-8859-1?Q?Re:__Programa_de_g?= =?ISO-8859-1?Q?esti=F3n_facturaci_=F3n_en_python?= In-Reply-To: <41B5AB7C.3030906@yahoo.es> References: <41B5A56F.1000304@ono.com> <41B5AB7C.3030906@yahoo.es> Message-ID: On Tue, 07 Dec 2004 08:09:16 -0500, Carlos Eduardo Sotelo Pinto wrote: > tiene a luca y cimarron ...luca esta aqui http://papo.vialibre.org.ar/ > pero cimarron no se donde esta la pagina oficial del proyecto es: http://savannah.nongnu.org/projects/papo/ y por cvs podes bajarlo o mirarlo de: http://savannah.nongnu.org/cgi-bin/viewcvs/papo/ les recuerdo que PAPO, era la primera version que utilizaba como framework a GNUe, posteriormente los desarrolladores decidieron cambiar el framework a CIMARRON, del que tambien son autores, y la nueva version se llama LUCA. CIMARRON por ahora trabaja con Gtk2 en la interfaz grafica (creo tienen pensado que contemple otras) enlazando con MODELING para la persistencia de objetos relacionales en varis bases de datos.(MySQL , PostgreSQL). Para la impresion estan desarrollando RUFF y para la logica de la base de datos XOT. Actualmente todavia no se migro de PAPO a LUCA la parte operativa del soft, ya que los desarrolladores estan concentrados en el "framework". > Lord ZealoN wrote: > > > Hola a todos. > > > > Recuerdo que hay un programa bastante bueno de facturación y gestión > > escrito en python, pero ahora no recuerdo el nombre > > > > ¿Alguien podría refrescarme la memoria? Marcelo Ametller ------------------------------------------------------------------------------- Maram Sistemas - Debian Sarge - Linux User: 354777 www.maramsis.com.ar www.aeroenlace.com.ar www.grulic.org.ar From n3t0_100f en yahoo.com.mx Thu Dec 9 22:14:56 2004 From: n3t0_100f en yahoo.com.mx (Neto .) Date: Thu, 9 Dec 2004 15:14:56 -0600 (CST) Subject: Duda sobre internacionalizacion... Message-ID: <20041209211456.98086.qmail@web52606.mail.yahoo.com> Hola lista: Para empesar soy un usuario de linux. Estoy empesando a trabajar con i18n y entonces me percate de que el archivo msgfmt.py usado para hacer los .mo (previamente habiendo utilizado gettext.py para el .po) no se encuentra en el directorio de python (/usr/lib/python), entonces verifico en el python de Windows y si aparece en la respectiva carpeta (\tools\i18n). Mi pregunta es la siguiente : es portable este archivo?, es decir, se puede usar este modulo de Windows en linux?? espero me ayuden, gracias.... --------------------------------- Do You Yahoo!? Yahoo! Net: La mejor conexión a internet y 25MB extra a tu correo por $100 al mes. From mauroka en gmail.com Thu Dec 9 22:22:36 2004 From: mauroka en gmail.com (=?ISO-8859-1?Q?Mauro_S=E1nchez?=) Date: Thu, 9 Dec 2004 18:22:36 -0300 Subject: Modificar archivos de configuracion In-Reply-To: <20041209201103.GA16634@marmota.unizar.es> References: <1102621340.1863.20.camel@darkstar.paradise_lost.net> <20041209201103.GA16634@marmota.unizar.es> Message-ID: <3c924a25041209132267701d76@mail.gmail.com> Tambien podes usar el modulo ConfigParser para trabajar con archivos de configuracion. http://www.python.org/doc/2.3.4/lib/module-ConfigParser.html a lo mejor te sirve. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From cgalisteo en k-rolus.net Fri Dec 10 01:11:41 2004 From: cgalisteo en k-rolus.net (Carlos Galisteo) Date: Fri, 10 Dec 2004 01:11:41 +0100 Subject: tabulaciones wxglade Message-ID: <200412100111.47422.cgalisteo@k-rolus.net> Hola, una pregunta que a lo mejor es muy tonta...¿Por qué el wxglade mete 4 espacios en vez de un tabulador? La verdad es que al ejecutar el código funciona sin problemas, pero al abrirlo luego en determinados editores se hacen un lío entre espacios y tabulaciones y me descuadra los niveles de identación (con fatales consecuencias claro). ¿Obedece ésto a alguna razón o norma de estilo que desconozco?¿ sólo me pasa a mi?¿Es problema de los editores y no de wxglade? ¿o soy el único tan inútil como para liarse con algo tan simple? (yo voto por ésta última) Gracias. -- --- Carlos Galisteo Jabber_Id::cgalisteo en jabber.org PGP_key::http://k-rolus.net/~cgalisteo/cgalisteo.gpg Key_Fingerprint::F888 6FBA 9145 B5A2 C187 66D6 5B8C 027A 69AD BE65 --- ------------ 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 ripolles en aditel.org Fri Dec 10 01:52:53 2004 From: ripolles en aditel.org (Daniel Ripolles) Date: Fri, 10 Dec 2004 01:52:53 +0100 Subject: tabulaciones wxglade In-Reply-To: <200412100111.47422.cgalisteo@k-rolus.net> References: <200412100111.47422.cgalisteo@k-rolus.net> Message-ID: <1102639973.6467.3.camel@turing> El vie, 10-12-2004 a las 01:11 +0100, Carlos Galisteo escribió: > Hola, una pregunta que a lo mejor es muy tonta...¿Por qué el wxglade mete 4 > espacios en vez de un tabulador? > La verdad es que al ejecutar el código funciona sin problemas, pero al abrirlo > luego en determinados editores se hacen un lío entre espacios y tabulaciones > y me descuadra los niveles de identación (con fatales consecuencias claro). > ¿Obedece ésto a alguna razón o norma de estilo que desconozco?¿ sólo me pasa a > mi?¿Es problema de los editores y no de wxglade? ¿o soy el único tan inútil > como para liarse con algo tan simple? (yo voto por ésta última) > A riesgo de entrar en algún tipo de «guerra santa», lo que creo que pasa es que en Python la convención (lo recomendado por Guido y compañía, vamos), es usar 4 espacios por nivel de indentación, y evitar el carácter tabulador. Así es como indenta el Emacs, y como deberías configurar cualquier editor que uses para python. Yo para el vim tengo algo así en el .vimrc: au BufRead,BufNewFile *.py set expandtab softtabstop=4 Y en otros se tiene que poder configurar también. Suerte! -- Daniel Ripolles ( Eru ) http://elrenglontorcido.blogspot.com/ There are only two things that smell like fish. One of them is fish. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From acastro en ciberdroide.com Fri Dec 10 07:18:39 2004 From: acastro en ciberdroide.com (Antonio Castro) Date: Fri, 10 Dec 2004 07:18:39 +0100 (CET) Subject: Modificar archivos de configuracion In-Reply-To: <3c924a25041209132267701d76@mail.gmail.com> References: <1102621340.1863.20.camel@darkstar.paradise_lost.net> <20041209201103.GA16634@marmota.unizar.es> <3c924a25041209132267701d76@mail.gmail.com> Message-ID: On Thu, 9 Dec 2004, Mauro Sánchez wrote: > Tambien podes usar el modulo ConfigParser para trabajar con archivos > de configuracion. > > http://www.python.org/doc/2.3.4/lib/module-ConfigParser.html > > a lo mejor te sirve. > Mirate el módulo picke. Ouedes guardar objetos en disco. Te evitará parsear ficheros. Lo suyo es hacerse un modulito para eso. Mas o menos podría ser algo similar a esto. class DummyRecord(): pass class Config: def __init__(self, ....): self.conf=DummyRecord() self.conf.campo1=... self.conf.campo2=... def SaveConf(self, ....): import pickle db=anydbm.open("Config.db" , 'c') db['config']=pickle.dumps(self.conf) db.close() def LoadConf(self, ....): import pickle try: db=anydbm.open("Config.db" , 'c') self.conf= pickle.loads(db['config']) db.close() except: print "Error" return Solo te guarda un registro porque usamos solo una clave, pero si necesitas manejar varias configuraciones para gestionar proyectos distintos desde la misma aplicacion, podrás ampliarlo muy facilmente. -- Un saludo Antonio Castro /\ /\ \\W// _|0 0|_ +-oOOO-(___o___)-OOOo---------------------+ | . . . . U U . Antonio Castro Snurmacher | | . . . . . . . acastro en ciberdroide.com | +()()()---------()()()--------------------+ From cgalisteo en k-rolus.net Fri Dec 10 07:37:55 2004 From: cgalisteo en k-rolus.net (Carlos Galisteo) Date: Fri, 10 Dec 2004 07:37:55 +0100 Subject: tabulaciones wxglade In-Reply-To: <1102639973.6467.3.camel@turing> References: <200412100111.47422.cgalisteo@k-rolus.net> <1102639973.6467.3.camel@turing> Message-ID: <20041210073755.ctcoos8kk8ck40ck@k-rolus.net> > A riesgo de entrar en algún tipo de «guerra santa», lo que creo que pasa > es que en Python la convención (lo recomendado por Guido y compañía, > vamos), es usar 4 espacios por nivel de indentación, y evitar el > carácter tabulador. Vale, eso lo explica todo :-D Muchas gracias. -- --- Carlos Galisteo Jabber_Id::cgalisteo en jabber.org PGP_key::http://k-rolus.net/~cgalisteo/cgalisteo.gpg Key_Fingerprint::F888 6FBA 9145 B5A2 C187 66D6 5B8C 027A 69AD BE65 --- ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From pedro.carrasco en iver.es Fri Dec 10 07:56:36 2004 From: pedro.carrasco en iver.es (Pedro A. Carrasco Ponce) Date: Fri, 10 Dec 2004 07:56:36 +0100 Subject: tabulaciones wxglade In-Reply-To: <1102639973.6467.3.camel@turing> References: <200412100111.47422.cgalisteo@k-rolus.net> <1102639973.6467.3.camel@turing> Message-ID: <41B948A4.80102@iver.es> Daniel Ripolles wrote: > A riesgo de entrar en algún tipo de «guerra santa», lo que creo que pasa > es que en Python la convención (lo recomendado por Guido y compañía, > vamos), es usar 4 espacios por nivel de indentación, y evitar el > carácter tabulador. Así es como indenta el Emacs, y como deberías > configurar cualquier editor que uses para python. Yo para el vim tengo > algo así en el .vimrc: > > au BufRead,BufNewFile *.py set expandtab softtabstop=4 > > Y en otros se tiene que poder configurar también. Yo prefiero identar a 2 espacios, queda más compacto el código a mi gusto. Por eso, cada vez que hago algo con wxGlade me toca reidentarlo a mi gusto. ¿Sabeis si se puede cambiar el número de espacios en el wxGlade? Gracias y un saludo. -- Pedro ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From o.merchan en bussitel.es Fri Dec 10 09:31:25 2004 From: o.merchan en bussitel.es (Oscar Merchan) Date: Fri, 10 Dec 2004 09:31:25 +0100 Subject: Tiempo Message-ID: <20041210093125.0d866db0.o.merchan@bussitel.es> Buenas a todos. Aunque el asunto parezca un poco filosofico, no lo es. Tan solo queria preguntar si alguien conoce algun modulo o tiene alguna receta para trabajar con horas y minutos, la idea es a partir de dos horas dadas por ejemplo 05:45:35 ( hh:mm:ss ) y por ejemplo 07:30:15 ( hh:mm:ss ), poder decir la duracion de algo en este caso la duracion seria de 1 hora y 45 minutos, estoy intentando hacer la logica, pero obtengo incluso valores negativos por mas que los intento evitar. Alguien ha hecho algo parecido o sabe de algun modulo que pueda ayudar a facilitar la cosa ??? Saludos, Oscar Merchan. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From faltet en carabos.com Fri Dec 10 09:45:12 2004 From: faltet en carabos.com (Francesc Altet) Date: Fri, 10 Dec 2004 09:45:12 +0100 Subject: Tiempo In-Reply-To: <20041210093125.0d866db0.o.merchan@bussitel.es> References: <20041210093125.0d866db0.o.merchan@bussitel.es> Message-ID: <200412100945.12255.faltet@carabos.com> Mirate el mxDateTime: http://www.egenix.com/files/python/eGenix-mx-Extensions.html#mxDateTime A Divendres 10 Desembre 2004 09:31, Oscar Merchan va escriure: > > Buenas a todos. > > Aunque el asunto parezca un poco filosofico, no lo es. > Tan solo queria preguntar si alguien conoce algun modulo o tiene alguna receta para trabajar con horas y minutos, la idea es a partir de > dos horas dadas por ejemplo 05:45:35 ( hh:mm:ss ) y por ejemplo 07:30:15 ( hh:mm:ss ), poder decir la duracion de algo en este caso > la duracion seria de 1 hora y 45 minutos, estoy intentando hacer la logica, pero obtengo incluso valores negativos por mas que los intento > evitar. > > Alguien ha hecho algo parecido o sabe de algun modulo que pueda ayudar a facilitar la cosa ??? > > > > > Saludos, Oscar Merchan. > -- Francesc Altet Who's your data daddy?  PyTables ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From theos en esdebian.org Fri Dec 10 09:49:41 2004 From: theos en esdebian.org (antonio diaz) Date: Fri, 10 Dec 2004 00:49:41 -0800 (PST) Subject: =?UTF-8?Q?Dise=C3=B1ador?= de GUIs para wxwidgets y IDEs Message-ID: <20041210084941.D274737CF3@sitemail.everyone.net> --- jdjg wrote: From: jdjg Date: Thu, 09 Dec 2004 19:47:37 +0100 To: python-es en aditel.org Subject: [Python-es] Diseñador de GUIs para wxwidgets y IDEs Hola a todos! Sé que es un tema habitual pero me gustaría que me dierais vuestra opinión sobre la herramienta que veis más recomendable para hacer GUI con wxwidgets. Por lo que he leido, entiendo que tengo las siguientes opciones: BOA Por lo que he leido en esta lista, es la que más promete pero la que creo que tarda más en actualizar versiones y me ha dado algunos problemas de versiones. Poco documentada. WXGLADE (opcional SPE como IDE) Es un entorno que parece sencillo, cómodo y independiente del IDE con el que, por lo que he leido, se puede separar diseño de implementación. Además, opcionalmente se puede usar junto con SPE. ¿Que opinais de SPE? PYTHONCARD Parece el proyecto más trabajado y con mucha documentación pero ¿que limitaciones tiene? ¿el código resultante es wxpython? ¿qué limitaciones, ventajas e inconvenientes tienen cada uno de ellos? Gracias por adelantado por orientarme en este océano de posibilidades. Saludos, Javier _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es Hola Javier, Yo utilizo el entorno WxGlade y SPE, para mi es lo mas hacertado sobre todo porque aveces trabajo con Blender y ademas yo estaba acostumbrado a trabajar con Glade. BOA no me acaba de convencer, es muy engorroso su manejo, no lo acabo de ver demasiado productivo (si lo que buscas es el diseño rapido de aplicaciones), supongo que sera hasta que te integras a fondo en el entorno. _____________________________________________________________ Create tu cuenta de email en www.esdebian.org ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From o.merchan en bussitel.es Fri Dec 10 11:27:24 2004 From: o.merchan en bussitel.es (Oscar Merchan) Date: Fri, 10 Dec 2004 11:27:24 +0100 Subject: Tiempo In-Reply-To: <200412100945.12255.faltet@carabos.com> References: <20041210093125.0d866db0.o.merchan@bussitel.es> <200412100945.12255.faltet@carabos.com> Message-ID: <20041210112724.2db1a19c.o.merchan@bussitel.es> On Fri, 10 Dec 2004 09:45:12 +0100 Francesc Altet wrote: > Mirate el mxDateTime: > > http://www.egenix.com/files/python/eGenix-mx-Extensions.html#mxDateTime > > -- > Francesc Altet > Who's your data daddy?  PyTables Gracias Francesc, justo lo que buscaba, metiendole las dos horas las puedo manejar como numeros normales, y el mismo ya hace el calculo en el caso de que sean dias distintos, si la suma de los minutos pasa a una hora mas, etc ... ... ... Saludos, Oscar Merchan. From fjrodriguez en redk.net Fri Dec 10 13:01:32 2004 From: fjrodriguez en redk.net (Francisco Javier =?ISO-8859-1?Q?Rodr=EDguez?=) Date: Fri, 10 Dec 2004 13:01:32 +0100 Subject: Grid en PyGTK Message-ID: <1102680092.3327.14.camel@localhost.localdomain> Buenos días, estoy usando GLADE para diseñar una pequeña GUI, pero me ha surgido la necesidad de insertar un Grid / Tabla para poder mostrar unos datos y editar directamente sobre el grid. Hasta ahora no he visto nada interesante, se puede hacer algo con el GTKTreeView, pero hay algo un poco más desarrollado y con más posibilidades. Un Saludo Fran ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From pachi en mmn-arquitectos.com Fri Dec 10 13:56:17 2004 From: pachi en mmn-arquitectos.com (Rafael Villar Burke) Date: Fri, 10 Dec 2004 13:56:17 +0100 Subject: Grid en PyGTK In-Reply-To: <1102680092.3327.14.camel@localhost.localdomain> References: <1102680092.3327.14.camel@localhost.localdomain> Message-ID: <41B99CF1.7030005@mmn-arquitectos.com> Francisco Javier Rodríguez wrote: >Buenos días, > >estoy usando GLADE para diseñar una pequeña GUI, pero me ha surgido la >necesidad de insertar un Grid / Tabla para poder mostrar unos datos y >editar directamente sobre el grid. Hasta ahora no he visto nada >interesante, se puede hacer algo con el GTKTreeView, pero hay algo un >poco más desarrollado y con más posibilidades. > > Para editar en el propio glade tienes una tabla con etiquetas, pero si realmente quieres algo potente el TreeView es lo que necesitas, aunque tendrás que utilizar código para introducir los datos puesto que no hay un editor incluido todavía ni soporte en libglade para ello. El modelo que utiliza es un poco complicado al principio, pero no deja de ser una serie de elementos tipo MVC con iteradores de filas y alguna lindeza más que, en cuanto te hagas con ellas, no tiene mayor misterio. El tutorial de PyGTK explica fenomenalmente su uso (aunque tendrás que arreglarte con la versión en inglés de pygtk.org hasta que salga la nueva traducción). Y ya sin soporte inmediato de serie en glade tienes: - El control que hizo Lorenzo Gil Sánchez (GtkGrid) [1] que tiene sus correspondientes enlaces con python [2]. Es un control al más puro estilo GTK+ y si te animas con nuevos parches hasta podría incorporarse a la distribución de GTK+ original. - Los controles de GtkExtra [3], que, según he leído, están portados a Gtk2 en su versión del CVS y en el que hay alguno que podría encajar con lo que quieres (GtkSheet). De paso, te recomendaría que echases un vistazo a Gazpacho [4], para usarlo en vez de glade, ya que tiene un editor de TreeViews, de UIManager (menús), hacer y deshacer... y otras cosas que te encantarán. Gazpacho es uno de los componentes de Gruppy [5], una plataforma y conjunto de herramientas para el desarrollo de programas de gestión. [1] http://www.sicem.biz/personal/lgs/projects/gtkgrid/view_project [2] http://www.sicem.biz/personal/lgs/projects/gtkgrid/projects/pygrid/view_project [3] http://gtkextra.sourceforge.net/ [4] http://gruppy.sicem.biz/descargas [5] http://gruppy.sicem.biz/pantallazos Un saludo, Pachi ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From python en ammsoft.com Fri Dec 10 16:04:10 2004 From: python en ammsoft.com (Amm-Python) Date: Fri, 10 Dec 2004 16:04:10 +0100 Subject: Tiempo In-Reply-To: <200412100945.12255.faltet@carabos.com> References: <200412100945.12255.faltet@carabos.com> Message-ID: <004901c4dec9$820bca20$640010ac@nombref31twj9b> Si ya utilizas la versión 2.3 creo que el módulo datetime ya te puede servir Ejemplo: >>> import datetime >>> a= datetime.datetime.now() >>> b= datetime.datetime.now() >>> print a 2004-12-10 14:29:46.296000 >>> print b 2004-12-10 14:29:54.530000 >>> print b - a 0:00:08.234000 Lo que no he encontrado es como convertir un string '10-12-2004 08:00:00' en un tipo datetime. Y mira que tiene que ser fácil. > -----Mensaje original----- > De: python-es-bounces en aditel.org > [mailto:python-es-bounces en aditel.org] En nombre de Francesc Altet > Enviado el: divendres, 10 / desembre / 2004 09:45 > Para: La lista de python en castellano > Asunto: Re: [Python-es] Tiempo > > > Mirate el mxDateTime: > > http://www.egenix.com/files/python/eGenix-mx-Extensions.html#m > xDateTime > > A Divendres 10 Desembre 2004 09:31, Oscar Merchan va escriure: > > > > Buenas a todos. > > > > Aunque el asunto parezca un poco filosofico, no lo es. > > Tan solo queria preguntar si alguien conoce algun modulo o tiene > > alguna receta para trabajar con horas y minutos, la idea es > a partir de > > dos horas dadas por ejemplo 05:45:35 ( hh:mm:ss ) y por > ejemplo 07:30:15 ( hh:mm:ss ), poder decir la duracion de > algo en este caso > > la duracion seria de 1 hora y 45 minutos, estoy intentando > hacer la logica, pero obtengo incluso valores negativos por > mas que los intento > > evitar. > > > > Alguien ha hecho algo parecido o sabe de algun modulo que pueda > > ayudar a facilitar la cosa ??? > > > > > > > > > > Saludos, Oscar Merchan. > > > > -- > Francesc Altet > Who's your data daddy?  PyTables > > From gumerco en yahoo.es Fri Dec 10 21:23:08 2004 From: gumerco en yahoo.es (Gumer Coronel =?ISO-8859-1?Q?P=E9rez?=) Date: Fri, 10 Dec 2004 21:23:08 +0100 Subject: Tiempo In-Reply-To: <004901c4dec9$820bca20$640010ac@nombref31twj9b> References: <004901c4dec9$820bca20$640010ac@nombref31twj9b> Message-ID: <1102710188.13109.3.camel@localhost.localdomain> El vie, 10-12-2004 a las 16:04 +0100, Amm-Python escribió: > Si ya utilizas la versión 2.3 creo que el módulo datetime ya te puede > servir > > Ejemplo: > >>> import datetime > >>> a= datetime.datetime.now() > >>> b= datetime.datetime.now() > >>> print a > 2004-12-10 14:29:46.296000 > >>> print b > 2004-12-10 14:29:54.530000 > >>> print b - a > 0:00:08.234000 > > Lo que no he encontrado es como convertir un string '10-12-2004 > 08:00:00' en un tipo datetime. > Y mira que tiene que ser fácil. La variable 'a' ya es un datetime, de la cual puedes obtener cualquier valor (minute, second,hour, year, etc etc). > > > -----Mensaje original----- > > De: python-es-bounces en aditel.org > > [mailto:python-es-bounces en aditel.org] En nombre de Francesc Altet > > Enviado el: divendres, 10 / desembre / 2004 09:45 > > Para: La lista de python en castellano > > Asunto: Re: [Python-es] Tiempo > > > > > > Mirate el mxDateTime: > > > > http://www.egenix.com/files/python/eGenix-mx-Extensions.html#m > > xDateTime > > > > A Divendres 10 Desembre 2004 09:31, Oscar Merchan va escriure: > > > > > > Buenas a todos. > > > > > > Aunque el asunto parezca un poco filosofico, no lo es. > > > Tan solo queria preguntar si alguien conoce algun modulo o tiene > > > alguna receta para trabajar con horas y minutos, la idea es > > a partir de > > > dos horas dadas por ejemplo 05:45:35 ( hh:mm:ss ) y por > > ejemplo 07:30:15 ( hh:mm:ss ), poder decir la duracion de > > algo en este caso > > > la duracion seria de 1 hora y 45 minutos, estoy intentando > > hacer la logica, pero obtengo incluso valores negativos por > > mas que los intento > > > evitar. > > > > > > Alguien ha hecho algo parecido o sabe de algun modulo que pueda > > > ayudar a facilitar la cosa ??? > > > > > > > > > > > > > > > Saludos, Oscar Merchan. > > > > > > > -- > > Francesc Altet > > Who's your data daddy? PyTables > > > > > > _______________________________________________ > 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 aleivag en spymac.com Sat Dec 11 14:12:16 2004 From: aleivag en spymac.com (Alvaro Leiva) Date: Sat, 11 Dec 2004 10:12:16 -0300 Subject: Buscar mas rapido In-Reply-To: <1102710188.13109.3.camel@localhost.localdomain> References: <004901c4dec9$820bca20$640010ac@nombref31twj9b> <1102710188.13109.3.camel@localhost.localdomain> Message-ID: <41BAF230.1080901@spymac.com> Hola a todos en la lista... Tengo otra consulta... miren, yo guardo en una variable llamada barra un numero que tiene 10**6 unidades... y lo guardo como string.. esto es barra="321458692132132157635465465....." print len(barra) 1000000 resulta que cada ves que quiero buscar un numero en esa cadena de numero se demora aprox 0.04 (no se que unidad usa el computador parece que son segundos). el punto es que por ejemplo tengo que buscar 806148 mil numeros dentro de este numero y solo se va a demorar 0.04*806148/60/60= 8.9 horas... entonces.. hay alguna forma de hacer esta busqueda mas rapida.. pasando esa variable a un archivo etc... el comando que yo uso para buscar es: "654" in barra ATTE Alvaro Leiva gracias ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From py en ch3m4.org Mon Dec 13 10:51:57 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Mon, 13 Dec 2004 10:51:57 +0100 Subject: wxPython y bases de datos In-Reply-To: References: Message-ID: <200412131052.00959.py@ch3m4.org> El Miércoles, 8 de Diciembre de 2004 18:22, Powerbook escribió: > Algun@ de vosotr en s ha podido compilar los wxWidgets con soporte ODBC > para aprovechar las capacidades de sus clases bajo wxPython?. ¿Es mejor > aprovechar las capacidades de conectividad a BD de los wxWidgets en > wxPython o quizás sería mejor que el acceso a BD sea manejado mediante > las DB-API de Python? Tengo que realizar una aplicación en wxPython y > la verdad no tengo claro que es mejor. Yo conseguí compilar las wx con soporte ODBC (en gentoo), pero no he conseguido saber cómo hacerlas funcionar. Yo que tú pasaría de ello y me iría a lo que es seguro que funciona. Siempre es más recomendable usar la DB-API, sobre todo si piensas que algún día va a funcionar tu código con otro gestor de base de datos. Aún así te queda salvar el escollo del SQL, que no es interpretado de igual forma por todos los gestores. Hay alguna ayuda como el SQLObject y similares que introducen una capa de abstracción a las sentencias SQL, pero personalmente no me resulta muy cómodo. En mi caso, después de evaluar las diversas opciones, he terminado por "especializar" el código para postgres. Las restricciones que me imponía la DB-API no se compensaban con la portabilidad que me daba. Tú tienes decides qué es lo que más te conviene. ------------ 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 py en ch3m4.org Mon Dec 13 11:20:32 2004 From: py en ch3m4.org (Chema =?iso-8859-15?q?Cort=E9s?=) Date: Mon, 13 Dec 2004 11:20:32 +0100 Subject: Buscar mas rapido In-Reply-To: <41BAF230.1080901@spymac.com> References: <004901c4dec9$820bca20$640010ac@nombref31twj9b> <1102710188.13109.3.camel@localhost.localdomain> <41BAF230.1080901@spymac.com> Message-ID: <200412131120.35694.py@ch3m4.org> El Sábado, 11 de Diciembre de 2004 14:12, Alvaro Leiva escribió: > Hola a todos en la lista... > > Tengo otra consulta... miren, yo guardo en una variable llamada barra un > numero que tiene 10**6 unidades... y lo guardo como string.. esto es > barra="321458692132132157635465465....." > print len(barra) > 1000000 > > resulta que cada ves que quiero buscar un numero en esa cadena de numero > se demora aprox 0.04 (no se que unidad usa el computador parece que son > segundos). el punto es que por ejemplo tengo que buscar 806148 mil > numeros dentro de este numero y solo se va a demorar > 0.04*806148/60/60= 8.9 horas... > > entonces.. hay alguna forma de hacer esta busqueda mas rapida.. pasando > esa variable a un archivo etc... el comando que yo uso para buscar es: > "654" in barra Con mi equipo (Athlon XP 2600+) me sale 0.000025 segundos por cálculo, o sea, unos 20 segundos el revisar todos los números. Me temo que tienes un equipo algo inadecuado para hacer estos cálculos. Es difícil conseguir mejorar estos tiempos de búsquedas en python. Se podría pensar en otras estrategias como programar las búsquedas en C ó utilizar algún tipo de algoritmo que se ajuste a la naturaleza de los datos como máquinas de estados finitos ó algoritmos genéticos. Tu problema es muy similar al que tienen los bioinformáticos en la búsqueda de proteínas en cadenas protéicas. Busca en www.biopython.org a ver si encuentras algo que pueda serte de utilidad. ------------ 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 luis.iglesias en vigo.org Mon Dec 13 10:06:10 2004 From: luis.iglesias en vigo.org (Luis Iglesias) Date: Mon, 13 Dec 2004 10:06:10 +0100 Subject: Tiempo In-Reply-To: <004901c4dec9$820bca20$640010ac@nombref31twj9b> References: <004901c4dec9$820bca20$640010ac@nombref31twj9b> Message-ID: <41BD5B82.3050809@vigo.org> Amm-Python escribió: > Si ya utilizas la versión 2.3 creo que el módulo datetime ya te puede > servir > > Ejemplo: > >>>>import datetime >>>>a= datetime.datetime.now() >>>>b= datetime.datetime.now() >>>>print a > > 2004-12-10 14:29:46.296000 > >>>>print b > > 2004-12-10 14:29:54.530000 > >>>>print b - a > > 0:00:08.234000 > > Lo que no he encontrado es como convertir un string '10-12-2004 > 08:00:00' en un tipo datetime. > Y mira que tiene que ser fácil. > Si no te he entendido mal, te debería valer esto: import time t=time.strptime('10-12-2004 08:00:00', '%m-%d-%Y %H:%M:%S') Y una forma realmente mala (que espero que alguien me corrija) de pasar esto a un datetime sería: dt=datetime.datetime(t[0],t[1],t[2],t[3],t[4],t[5]) From py en ch3m4.org Mon Dec 13 10:08:59 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Mon, 13 Dec 2004 10:08:59 +0100 Subject: Duda sobre internacionalizacion... In-Reply-To: <20041209211456.98086.qmail@web52606.mail.yahoo.com> References: <20041209211456.98086.qmail@web52606.mail.yahoo.com> Message-ID: <200412131008.59748.py@ch3m4.org> El Jueves, 9 de Diciembre de 2004 22:14, Neto . escribió: > Hola lista: > > Para empesar soy un usuario de linux. > > Estoy empesando a trabajar con i18n y entonces me percate de que el > archivo msgfmt.py usado para hacer los .mo (previamente habiendo utilizado > gettext.py para el .po) no se encuentra en el directorio de python > (/usr/lib/python), entonces verifico en el python de Windows y si aparece > en la respectiva carpeta (\tools\i18n). > > Mi pregunta es la siguiente : es portable este archivo?, es decir, se > puede usar este modulo de Windows en linux?? Portable, sí es portable. El que no lo tengas se debe a que en linux se suele poner en un paquete a parte del python. Mira a ver si en tu distribución viene dentro de algún paquete como "python-demo" ó "python-docs". ------------ 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 py en ch3m4.org Mon Dec 13 10:04:15 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Mon, 13 Dec 2004 10:04:15 +0100 Subject: Aprendiendo se entiende la gente In-Reply-To: <1102109604.11880.4.camel@localhost.localdomain> References: <1102109604.11880.4.camel@localhost.localdomain> Message-ID: <200412131004.19171.py@ch3m4.org> El Viernes, 3 de Diciembre de 2004 22:33, Lord_ZealoN escribió: > Otra cosa, cual es la codificación de la cuenta de la lista de correo de > sourceforge? Creo que es un problema de evolution, que sólo chequea la cabecera 'Content-Type', y pasa de mirar la cabecera 'MIME-Version' para saber si un mensaje está codificado en MIME. Lo más adecuado, tal y como manda la "netiqueta", es emplear sólo ascii 7bits para las cabeceras (eg: asunto, from, etc). ------------ 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 pepe en diselpro.com Sun Dec 12 15:27:07 2004 From: pepe en diselpro.com (Pepe Aracil) Date: Sun, 12 Dec 2004 15:27:07 +0100 Subject: Buscar mas rapido In-Reply-To: <41BAF230.1080901@spymac.com> References: <004901c4dec9$820bca20$640010ac@nombref31twj9b> <1102710188.13109.3.camel@localhost.localdomain> <41BAF230.1080901@spymac.com> Message-ID: <200412121527.08129.pepe@diselpro.com> Hola. Te puedes crear una estructura tipo árbol con todas las ocurrencias de 1 a n dígitos. Lo puedes hacer con listas, de forma que para comprobar si el numero 11789 existe en el árbol, solo tendrías que comprobar si existe la entrada: try: arbol[1][1][7][8][9] except IndexError: print "No existe ese numero en la secuencia" Pero seguro que hay algún módulo como NumArray para hacer esto de una forma más óptima. Saludos. El Sábado, 11 de Diciembre de 2004 14:12, Alvaro Leiva escribió: > Hola a todos en la lista... > > Tengo otra consulta... miren, yo guardo en una variable llamada barra un > numero que tiene 10**6 unidades... y lo guardo como string.. esto es > barra="321458692132132157635465465....." > print len(barra) > 1000000 > > resulta que cada ves que quiero buscar un numero en esa cadena de numero > se demora aprox 0.04 (no se que unidad usa el computador parece que son > segundos). el punto es que por ejemplo tengo que buscar 806148 mil > numeros dentro de este numero y solo se va a demorar > 0.04*806148/60/60= 8.9 horas... > > entonces.. hay alguna forma de hacer esta busqueda mas rapida.. pasando > esa variable a un archivo etc... el comando que yo uso para buscar es: > "654" in barra > > ATTE > > Alvaro Leiva > > gracias ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From luis.iglesias en vigo.org Mon Dec 13 09:01:44 2004 From: luis.iglesias en vigo.org (Luis Iglesias) Date: Mon, 13 Dec 2004 09:01:44 +0100 Subject: Tiempo In-Reply-To: <004901c4dec9$820bca20$640010ac@nombref31twj9b> References: <004901c4dec9$820bca20$640010ac@nombref31twj9b> Message-ID: <41BD4C68.50105@vigo.org> Amm-Python escribió: > Si ya utilizas la versión 2.3 creo que el módulo datetime ya te puede > servir > > Ejemplo: > >>>>import datetime >>>>a= datetime.datetime.now() >>>>b= datetime.datetime.now() >>>>print a > > 2004-12-10 14:29:46.296000 > >>>>print b > > 2004-12-10 14:29:54.530000 > >>>>print b - a > > 0:00:08.234000 > > Lo que no he encontrado es como convertir un string '10-12-2004 > 08:00:00' en un tipo datetime. > Y mira que tiene que ser fácil. > Si no te he entendido mal, te debería valer esto: import time dt=time.strptime('10-12-2004 08:00:00', '%m-%d-%Y %H:%M:%S') From pepe en diselpro.com Sun Dec 12 03:28:53 2004 From: pepe en diselpro.com (Pepe Aracil) Date: Sun, 12 Dec 2004 03:28:53 +0100 Subject: Buscar mas rapido In-Reply-To: <41BAF230.1080901@spymac.com> References: <004901c4dec9$820bca20$640010ac@nombref31twj9b> <1102710188.13109.3.camel@localhost.localdomain> <41BAF230.1080901@spymac.com> Message-ID: <200412120328.53975.pepe@diselpro.com> Hola. Te puedes crear una estructura tipo árbol con todas las ocurrencias de 1 a n dígitos. Lo puedes hacer con listas, de forma que para comprobar si el numero 11789 existe en el árbol, solo tendrías que comprobar si existe la entrada: try: arbol[1][1][7][8][9] except IndexError: print "No existe ese numero en la secuencia" Pero seguro que hay algún módulo como NumArray para hacer esto de una forma más óptima. Saludos. El Sábado, 11 de Diciembre de 2004 14:12, Alvaro Leiva escribió: > Hola a todos en la lista... > > Tengo otra consulta... miren, yo guardo en una variable llamada barra un > numero que tiene 10**6 unidades... y lo guardo como string.. esto es > barra="321458692132132157635465465....." > print len(barra) > 1000000 > > resulta que cada ves que quiero buscar un numero en esa cadena de numero > se demora aprox 0.04 (no se que unidad usa el computador parece que son > segundos). el punto es que por ejemplo tengo que buscar 806148 mil > numeros dentro de este numero y solo se va a demorar > 0.04*806148/60/60= 8.9 horas... > > entonces.. hay alguna forma de hacer esta busqueda mas rapida.. pasando > esa variable a un archivo etc... el comando que yo uso para buscar es: > "654" in barra > > ATTE > > Alvaro Leiva > > gracias ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From magmax9 en yahoo.es Sat Dec 11 18:51:56 2004 From: magmax9 en yahoo.es (Miguel Angel Garcia) Date: Sat, 11 Dec 2004 18:51:56 +0100 Subject: Buscar mas rapido In-Reply-To: <41BAF230.1080901@spymac.com> References: <004901c4dec9$820bca20$640010ac@nombref31twj9b> <1102710188.13109.3.camel@localhost.localdomain> <41BAF230.1080901@spymac.com> Message-ID: <1102787517.15461.4.camel@localhost> La verdad es que le veo poca utilidad, pero a mí se me ocurre lo siguiente: Preprocesa la cadena generando una estructura en forma de lista de lista. En cada posición de este vector (P) almacena la posición en la que aparece el número en la cadena original. Algo así: P = [] for i in range(len(barra)): val = int(i) P[val].append(i) Ahora para buscar, basta con que mires en el vector del valor; por ejemplo, si queremos saber en qué posiciones aparece el 1, basta ver los valores que aparecen en P[1]. A esto se le llama "Fichero invertido" :-D El sáb, 11-12-2004 a las 10:12 -0300, Alvaro Leiva escribió: > Hola a todos en la lista... > > Tengo otra consulta... miren, yo guardo en una variable llamada barra un > numero que tiene 10**6 unidades... y lo guardo como string.. esto es > barra="321458692132132157635465465....." > print len(barra) > 1000000 > > resulta que cada ves que quiero buscar un numero en esa cadena de numero > se demora aprox 0.04 (no se que unidad usa el computador parece que son > segundos). el punto es que por ejemplo tengo que buscar 806148 mil > numeros dentro de este numero y solo se va a demorar > 0.04*806148/60/60= 8.9 horas... > > entonces.. hay alguna forma de hacer esta busqueda mas rapida.. pasando > esa variable a un archivo etc... el comando que yo uso para buscar es: > "654" in barra > > ATTE > > Alvaro Leiva > > gracias > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: Esta parte del mensaje está firmada digitalmente URL: ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From py en ch3m4.org Mon Dec 13 13:23:38 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Mon, 13 Dec 2004 13:23:38 +0100 Subject: Tiempo In-Reply-To: <41BD5B82.3050809@vigo.org> References: <004901c4dec9$820bca20$640010ac@nombref31twj9b> <41BD5B82.3050809@vigo.org> Message-ID: <200412131323.43864.py@ch3m4.org> El Lunes, 13 de Diciembre de 2004 10:06, Luis Iglesias escribió: > import time > t=time.strptime('10-12-2004 08:00:00', '%m-%d-%Y %H:%M:%S') > > Y una forma realmente mala (que espero que alguien me corrija) de pasar > esto a un datetime sería: > > dt=datetime.datetime(t[0],t[1],t[2],t[3],t[4],t[5]) from datetime import datetime dt=datetime.fromtimestamp(time.mktime(t)) ------------ 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 susi.toci en nodo50.org Mon Dec 13 13:41:13 2004 From: susi.toci en nodo50.org (David Asorey Álvarez) Date: Mon, 13 Dec 2004 12:41:13 -0000 Subject: Cual es la variable para win32 que devuelve Documents and Settings\usuario Message-ID: Prueba lo siguiente: os.getenv('USERPROFILE') Yo tengo un programa en el que utilizo ésto, y si falla (algún win98 o similar), utilizo C: por defecto: import sys, os if sys.platform == 'win32': profile = os.getenv('USERPROFILE') if profile: DIR = profile else: DIR = "C:\\" else: DIR = os.path.expanduser('~') -- David Asorey Álvarez ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From py en ch3m4.org Mon Dec 13 15:20:32 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Mon, 13 Dec 2004 15:20:32 +0100 Subject: Fondos europeos para PyPy Message-ID: <200412131520.36483.py@ch3m4.org> Me acabo de enterar que la Unión Europea subvencionará durante dos años los trabajos del proyecto PyPy. Creo que es una noticia estupenda que habría que comentar por aquí. Es una posibilidad para conseguir un python más rápido y más portable, sin las ataduras del CPython y el GIL, y que incorpore nuevas características como el JIT ("psyco") o los "continuadores". ¡Un gran paso hacia el Python3000! :-P PyPy: http://codespeak.net/pypy/ Por ejemplo, una consecuencia de este proyecto es que se minimizarán las diferencias entre plataformas (python, jython e ironpython podrían compartir el mismo desarrollo) y que será más sencillo usar python en sistemas empotrados (eg: móviles y PDAs). Pero el objetivo que más puede sorprender de todo este proyecto es el profundizar en las posibilidades "reales" de obtener un lenguaje de alto nivel (python) que sea más rápido que el propio C. ------------ 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 jcanto en hispasec.com Mon Dec 13 15:35:30 2004 From: jcanto en hispasec.com (Julio Canto) Date: Mon, 13 Dec 2004 15:35:30 +0100 Subject: Fondos europeos para PyPy In-Reply-To: <200412131520.36483.py@ch3m4.org> References: <200412131520.36483.py@ch3m4.org> Message-ID: <41BDA8B2.1070104@hispasec.com> Chema Cortés wrote: >Me acabo de enterar que la Unión Europea subvencionará durante dos años los >trabajos del proyecto PyPy. Creo que es una noticia estupenda que habría que >comentar por aquí. Es una posibilidad para conseguir un python más rápido y >más portable, sin las ataduras del CPython y el GIL, y que incorpore nuevas >características como el JIT ("psyco") o los "continuadores". ¡Un gran paso >hacia el Python3000! :-P > > >PyPy: http://codespeak.net/pypy/ > > >Por ejemplo, una consecuencia de este proyecto es que se minimizarán las >diferencias entre plataformas (python, jython e ironpython podrían compartir >el mismo desarrollo) y que será más sencillo usar python en sistemas >empotrados (eg: móviles y PDAs). > > >Pero el objetivo que más puede sorprender de todo este proyecto es el >profundizar en las posibilidades "reales" de obtener un lenguaje de alto >nivel (python) que sea más rápido que el propio C. > > Excelente noticia :) Un saludo, JC From jasalgir en querysoft.es Tue Dec 14 15:57:06 2004 From: jasalgir en querysoft.es (Powerbook) Date: Tue, 14 Dec 2004 15:57:06 +0100 Subject: wxPython y bases de datos In-Reply-To: <200412131052.00959.py@ch3m4.org> References: <200412131052.00959.py@ch3m4.org> Message-ID: <6C40E48A-4DE0-11D9-941A-000A95A852C4@querysoft.es> El 13/12/2004, a las 10:51, Chema Cortés escribió: > El Miércoles, 8 de Diciembre de 2004 18:22, Powerbook escribió: > >> Algun@ de vosotr en s ha podido compilar los wxWidgets con soporte ODBC >> para aprovechar las capacidades de sus clases bajo wxPython?. ¿Es >> mejor >> aprovechar las capacidades de conectividad a BD de los wxWidgets en >> wxPython o quizás sería mejor que el acceso a BD sea manejado mediante >> las DB-API de Python? Tengo que realizar una aplicación en wxPython y >> la verdad no tengo claro que es mejor. > > Yo conseguí compilar las wx con soporte ODBC (en gentoo), pero no he > conseguido saber cómo hacerlas funcionar. Yo que tú pasaría de ello y > me iría > a lo que es seguro que funciona. > > Siempre es más recomendable usar la DB-API, sobre todo si piensas que > algún > día va a funcionar tu código con otro gestor de base de datos. Aún así > te > queda salvar el escollo del SQL, que no es interpretado de igual forma > por > todos los gestores. Hay alguna ayuda como el SQLObject y similares que > introducen una capa de abstracción a las sentencias SQL, pero > personalmente > no me resulta muy cómodo. > > En mi caso, después de evaluar las diversas opciones, he terminado por > "especializar" el código para postgres. Las restricciones que me > imponía la > DB-API no se compensaban con la portabilidad que me daba. > > Tú tienes decides qué es lo que más te conviene. > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es Gracias por todo. Ya tengo un poco de luz para continuar el camino! From bris en cimex.com.cu Tue Dec 14 22:50:06 2004 From: bris en cimex.com.cu (bris en cimex.com.cu) Date: Tue, 14 Dec 2004 16:50:06 -0500 Subject: =?iso-8859-1?q?C=A2mo_manejo_las_sesiones?= Message-ID: <0412141103.AA1103061494@ws3.cimex.com.cu> Hola,,, En caso que desee autenticar usuarios, y mantener una sesi¢n de cierto tiempo, c¢mo me entiendo con las sesiones? salu2 enrique From pepe en diselpro.com Tue Dec 14 23:59:59 2004 From: pepe en diselpro.com (Pepe Aracil) Date: Tue, 14 Dec 2004 23:59:59 +0100 Subject: =?iso-8859-1?q?C=A2mo_manejo_las?= sesiones In-Reply-To: <0412141103.AA1103061494@ws3.cimex.com.cu> References: <0412141103.AA1103061494@ws3.cimex.com.cu> Message-ID: <200412142359.59054.pepe@diselpro.com> El Martes, 14 de Diciembre de 2004 22:50, bris en cimex.com.cu escribió: > Hola,,, > > En caso que desee autenticar usuarios, y mantener una sesi¢n de cierto > tiempo, c¢mo me entiendo con las sesiones? > > salu2 > enrique > Mirate este link: http://www.cs.virginia.edu/~lab2q/lesson_7/ Saludos. From pepe en diselpro.com Tue Dec 14 23:56:13 2004 From: pepe en diselpro.com (Pepe Aracil) Date: Tue, 14 Dec 2004 23:56:13 +0100 Subject: Fondos europeos para PyPy In-Reply-To: <200412131520.36483.py@ch3m4.org> References: <200412131520.36483.py@ch3m4.org> Message-ID: <200412142356.14160.pepe@diselpro.com> El Lunes, 13 de Diciembre de 2004 15:20, Chema Cortés escribió: > > > Por ejemplo, una consecuencia de este proyecto es que se minimizarán las > diferencias entre plataformas (python, jython e ironpython podrían > compartir el mismo desarrollo) y que será más sencillo usar python en > sistemas empotrados (eg: móviles y PDAs). ¿Por que? > > > Pero el objetivo que más puede sorprender de todo este proyecto es el > profundizar en las posibilidades "reales" de obtener un lenguaje de alto > nivel (python) que sea más rápido que el propio C. Un interprete de python desarrollado en python ¿como puede ser más rápido que el C? en teoría debería ser mas lento que CPython ¿No? Gracias. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From hernan en orgmf.com.ar Wed Dec 15 11:14:40 2004 From: hernan en orgmf.com.ar (=?iso-8859-15?Q?Hern=E1n_Mart=EDnez_Foffani?=) Date: Wed, 15 Dec 2004 11:14:40 +0100 Subject: Fondos europeos para PyPy In-Reply-To: <200412142356.14160.pepe@diselpro.com> References: <200412142356.14160.pepe@diselpro.com> Message-ID: >> Por ejemplo, una consecuencia de este proyecto es que se minimizarán >> las diferencias entre plataformas (python, jython e ironpython >> podrían compartir el mismo desarrollo) y que será más sencillo usar >> python en sistemas empotrados (eg: móviles y PDAs). > > ¿Por que? CPython asume que la plataforma destino dispone *como mínimo* de un compilador ANSI C con stdio, sistema de archivos tipo posix, variables de entorno y quizás varias cosillas mas. No es problema para los SO de propósito general pero limita bastante la portabilidad a los sistemas empotrados (Python para Palm OS es el ejemplo paradigmático.) >> Pero el objetivo que más puede sorprender de todo este proyecto es el >> profundizar en las posibilidades "reales" de obtener un lenguaje de >> alto nivel (python) que sea más rápido que el propio C. > > Un interprete de python desarrollado en python ¿como puede ser más > rápido que el C? en teoría debería ser mas lento que CPython ¿No? No si dicho intérprete utilizara tecnologías tipo compilación JIT y similares. Se entiende que si hubiera una implementación del lenguaje en Python puro se facilitaría la experimentación de alternativas tipo generación de código ensamblado, compilación en tiempo de ejecución, tipado de objetos estáticos, etc... -H. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From py en ch3m4.org Wed Dec 15 13:02:03 2004 From: py en ch3m4.org (Chema =?iso-8859-15?q?Cort=E9s?=) Date: Wed, 15 Dec 2004 13:02:03 +0100 Subject: Fondos europeos para PyPy In-Reply-To: <200412142356.14160.pepe@diselpro.com> References: <200412131520.36483.py@ch3m4.org> <200412142356.14160.pepe@diselpro.com> Message-ID: <200412151302.07973.py@ch3m4.org> El Martes, 14 de Diciembre de 2004 23:56, Pepe Aracil escribió: > El Lunes, 13 de Diciembre de 2004 15:20, Chema Cortés escribió: > > Por ejemplo, una consecuencia de este proyecto es que se minimizarán las > > diferencias entre plataformas (python, jython e ironpython podrían > > compartir el mismo desarrollo) y que será más sencillo usar python en > > sistemas empotrados (eg: móviles y PDAs). > > ¿Por que? Ya te ha respondido Hernán a ésto perfectamente. Los requisitos actuales del python son demasiado elevados para los sistemas empotrados. El proyecto PyPy pretende conseguir más simplicidad, un núcleo funcional al que luego puedas arropar con las particularidades del entorno donde se ejecute. > > Pero el objetivo que más puede sorprender de todo este proyecto es el > > profundizar en las posibilidades "reales" de obtener un lenguaje de alto > > nivel (python) que sea más rápido que el propio C. > > Un interprete de python desarrollado en python ¿como puede ser más rápido > que el C? en teoría debería ser mas lento que CPython ¿No? No quise decir lo contrario. El C, en potencia, es el lenguaje con el que se puede escribir el código más rápido. La tecnología de compiladores es capaz de optimizar "estáticamente" el código para que sea aún más rápido (o más compacto, según necesidades). Pero cuando se habla de programación orientada a objetos la cosa cambia. Los objetos necesitan enlazado dinámico, lo que dificulta cualquier optimización estática. Si fuera posible contar con un buen JIT para python que optimizara el código en tiempo de ejecución podría llegar a mejorar los tiempos conseguidos por el C. Si álguien quiere profundizar en éste tema, aquí hay un par de artículos técnicos de HP: http://www.hpl.hp.com/techreports/1999/HPL-1999-77.pdf http://www.hpl.hp.com/techreports/1999/HPL-1999-78.pdf ------------ 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 jcea en argo.es Wed Dec 15 13:48:44 2004 From: jcea en argo.es (Jesus Cea) Date: Wed, 15 Dec 2004 13:48:44 +0100 Subject: Fondos europeos para PyPy In-Reply-To: <200412151302.07973.py@ch3m4.org> References: <200412131520.36483.py@ch3m4.org> <200412142356.14160.pepe@diselpro.com> <200412151302.07973.py@ch3m4.org> Message-ID: <41C032AC.80305@argo.es> Chema Cortés wrote: > No quise decir lo contrario. El C, en potencia, es el lenguaje con el que se > puede escribir el código más rápido. La tecnología de compiladores es capaz > de optimizar "estáticamente" el código para que sea aún más rápido (o más > compacto, según necesidades). Esto es una falacia común. C es un lenguaje fácil de optimizar hasta cierto punto. Pero hay detalles del lenguaje que hacen que los niveles avanzados de optimización sean muy complicados o, en ciertos casos, inabordables. Por ejemplo, el tema del "aliasing" de punteros, que inhibe ciertas optimizaciones comunes en otros lenguajes aparentemente más "complicados". Es decir, un buen compilador de C genera mejor código que un buen compilador de fortran, pero un excelente compilador de fortran pulveriza cualquier excelente compilador de C, precisamente porque ciertas optimizaciones complejas simplemente no se pueden hacer con la semántica de C. O solo hay que ver las maravillas de código ensamblador generado por lenguajes funcionales como ocaml o haskell. En C sería imposible, por propio diseño del lenguaje. -- Jesus Cea Avion _/_/ _/_/_/ _/_/_/ jcea en argo.es http://www.argo.es/~jcea/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/_/_/_/ PGP Key Available at KeyServ _/_/ _/_/ _/_/ _/_/ _/_/ "Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ "My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/ "El amor es poner tu felicidad en la felicidad de otro" - Leibniz From jcea en argo.es Wed Dec 15 13:16:00 2004 From: jcea en argo.es (Jesus Cea) Date: Wed, 15 Dec 2004 13:16:00 +0100 Subject: Fondos europeos para PyPy In-Reply-To: <200412142356.14160.pepe@diselpro.com> References: <200412131520.36483.py@ch3m4.org> <200412142356.14160.pepe@diselpro.com> Message-ID: <41C02B00.2030404@argo.es> Pepe Aracil wrote: > Un interprete de python desarrollado en python ¿como puede ser más rápido que > el C? en teoría debería ser mas lento que CPython ¿No? Es que el resultado final no es un "intérprete" de python, sino un metacompilador. Podría ser bastante más rápido que C. Baste ver cosas como Psyco. Aunque no sea enteramente comparable, piensa en un compilador de basic escrito en basic... pero cuya salida no es basic sino ensamblador puro. -- Jesus Cea Avion _/_/ _/_/_/ _/_/_/ jcea en argo.es http://www.argo.es/~jcea/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/_/_/_/ PGP Key Available at KeyServ _/_/ _/_/ _/_/ _/_/ _/_/ "Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ "My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/ "El amor es poner tu felicidad en la felicidad de otro" - Leibniz From csotelop en yahoo.es Wed Dec 15 19:03:44 2004 From: csotelop en yahoo.es (Carlos Eduardo Sotelo Pinto) Date: Wed, 15 Dec 2004 13:03:44 -0500 Subject: Dif Message-ID: <41C07C80.4030004@yahoo.es> hola gente que diferencia en rendiemiento me da lo siguiente from time import * y from time import localtime, strftime, etc, etc ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From c_visual2000 en hotmail.com Wed Dec 15 19:12:48 2004 From: c_visual2000 en hotmail.com (Fernando Carlini) Date: Wed, 15 Dec 2004 15:12:48 -0300 Subject: Dif In-Reply-To: <41C07C80.4030004@yahoo.es> References: <41C07C80.4030004@yahoo.es> Message-ID: Buenas: Segun lo que he leido en los manuales, la diferencia es que no ejecuta todo el codigo cuando importas sino solo las funciones que importas o clases, nunca es recomendable importar todo salvo en los casos que estes usando TkInter o alguno de esos, pero nada mas. >From: Carlos Eduardo Sotelo Pinto >Reply-To: La lista de python en castellano >To: python-es en aditel.org >Subject: [Python-es] Dif >Date: Wed, 15 Dec 2004 13:03:44 -0500 > >hola gente que diferencia en rendiemiento me da lo siguiente >from time import * >y >from time import localtime, strftime, etc, etc > >_______________________________________________ >Python-es mailing list >Python-es en aditel.org >http://listas.aditel.org/listinfo/python-es _________________________________________________________________ MSN Amor: busca tu ½ naranja http://latam.msn.com/amor/ From Andres.Moya en hispalinux.es Thu Dec 16 10:49:30 2004 From: Andres.Moya en hispalinux.es (Andres Moya) Date: Thu, 16 Dec 2004 10:49:30 +0100 Subject: Como saber si un parametro es una secuencia Message-ID: <41C15A2A.30305@hispalinux.es> Hola a todo el mundo. Esto lo he visto resuelto alguna vez, pero ahora no soy capaz de encontrarlo. ¿Cuál es la mejor manera de saber si una variable contiene una secuencia o un valor escalar? O sea, saber si tengo que iterar sobre ella o simplemente coger su valor. Teniendo en cuenta que la variable puede ser un objeto que emula una secuencia definiendo __getitem__, y cualquier cosa rara de éstas. Gracias. --- Andres.Moya en hispalinux.es From py en ch3m4.org Thu Dec 16 11:12:50 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Thu, 16 Dec 2004 11:12:50 +0100 Subject: Crear extensiones con MingW Message-ID: <200412161112.53855.py@ch3m4.org> Estoy viendo algunas cosas relacionadas con la compilación del python 2.4 y extensiones con el "MS Visual C++ Toolkit 2003", una herramienta gratuita para windows. La pruebas que hice en su día con MingW funcionaron muy bien para python 2.3, aunque no he vuelto sobre el tema desde entonces. ¿Qué razones recomiendan el uso de la herramienta privativa de Microsoft en lugar del MingW para python 2.4? Con respecto a ésto, me preguntaron la semana pasada sobre la compilación de extensiones con MingW. Estaba pensando en juntar y publicar todo el "knowhow" que tengo acumulado sobre el tema, pero no poseo suficiente experiencia con la programación de extensiones. ¿Álguien tiene alguna experiencia o ejemplos de compilación de extensiones python con MingW? ------------ 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 jcanto en hispasec.com Thu Dec 16 11:21:43 2004 From: jcanto en hispasec.com (Julio Canto) Date: Thu, 16 Dec 2004 11:21:43 +0100 Subject: Como saber si un parametro es una secuencia In-Reply-To: <41C15A2A.30305@hispalinux.es> References: <41C15A2A.30305@hispalinux.es> Message-ID: <41C161B7.5090606@hispasec.com> Andres Moya wrote: > Hola a todo el mundo. > > Esto lo he visto resuelto alguna vez, pero ahora no soy capaz de > encontrarlo. ¿Cuál es la mejor manera de saber si una variable contiene > una secuencia o un valor escalar? O sea, saber si tengo que iterar sobre > ella o simplemente coger su valor. > > Teniendo en cuenta que la variable puede ser un objeto que emula una > secuencia definiendo __getitem__, y cualquier cosa rara de éstas. > > Gracias. No se, quiza sea una solucion un poco 'cateta' por mi parte, pero ¿que tal iria un len(variable)? Un saludo, JC From pabloreysobral en gmail.com Thu Dec 16 11:24:56 2004 From: pabloreysobral en gmail.com (Pablo Rey Sobral) Date: Thu, 16 Dec 2004 11:24:56 +0100 Subject: Como saber si un parametro es una secuencia In-Reply-To: <41C15A2A.30305@hispalinux.es> References: <41C15A2A.30305@hispalinux.es> Message-ID: <4c01c85a0412160224680e52f6@mail.gmail.com> On Thu, 16 Dec 2004 10:49:30 +0100, Andres Moya wrote: > Hola a todo el mundo. > > Esto lo he visto resuelto alguna vez, pero ahora no soy capaz de > encontrarlo. ¿Cuál es la mejor manera de saber si una variable contiene > una secuencia o un valor escalar? O sea, saber si tengo que iterar sobre > ella o simplemente coger su valor. La mejor es preguntar de que tipo es la variable: >>> x = 2 >>> type (x) >>> x = [2] >>> type (x) >>> x = (2,) >>> type (x) >>> x = {'2':2} >>> type (x) para saber si la tienes que iterar if (type(x) == list) or (type(x) == (tuple) or type(x) == dict): Un saludo. > > Teniendo en cuenta que la variable puede ser un objeto que emula una > secuencia definiendo __getitem__, y cualquier cosa rara de éstas. > > Gracias. > --- > > Andres.Moya en hispalinux.es > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From hernan en orgmf.com.ar Thu Dec 16 11:29:25 2004 From: hernan en orgmf.com.ar (=?iso-8859-1?Q?Hern=E1n_Mart=EDnez_Foffani?=) Date: Thu, 16 Dec 2004 11:29:25 +0100 Subject: Crear extensiones con MingW In-Reply-To: <200412161112.53855.py@ch3m4.org> References: <200412161112.53855.py@ch3m4.org> Message-ID: > La pruebas que hice en su día con MingW funcionaron muy bien para > python 2.3, aunque no he vuelto sobre el tema desde entonces. ¿Qué > razones recomiendan el uso de la herramienta privativa de Microsoft > en lugar del MingW para python 2.4? Visual Studio fue siempre la plataforma estándar del port para Windows de Python. Durante años usaron la versión 6 y este año MS donó 5 o 10 paquetes de la 7.1 a los principales desarrolladores. La ausencia de soporte oficial para MingW supongo que solo es por falta de interés del grupo. -H From josu en ubera.net Thu Dec 16 15:30:53 2004 From: josu en ubera.net (Josu Oyanguren) Date: Thu, 16 Dec 2004 15:30:53 +0100 Subject: Como saber si un parametro es una secuencia In-Reply-To: <41C15A2A.30305@hispalinux.es> References: <41C15A2A.30305@hispalinux.es> Message-ID: <41C19C1D.9050502@ubera.net> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Andres Moya escribió: | Hola a todo el mundo. | | Esto lo he visto resuelto alguna vez, pero ahora no soy capaz de | encontrarlo. ¿Cuál es la mejor manera de saber si una variable contiene | una secuencia o un valor escalar? O sea, saber si tengo que iterar sobre | ella o simplemente coger su valor. | | Teniendo en cuenta que la variable puede ser un objeto que emula una | secuencia definiendo __getitem__, y cualquier cosa rara de éstas. | como pone en http://dbforums.com/t716314.html puedes hacerte una función que detecte si un objeto puede iterarse, algo así def issequence(item): ~ try: ~ for x in item: ~ break ~ except TypeError: ~ return False ~ else: ~ return True (código no testado) Josu. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org iD8DBQFBwZwd5ju4HVxhuqQRAkHzAJ0cW1O4klM3OErPFqAChvsKT1tTWQCeJZM6 iRvIkFcexUQwPDzlvbzzUHE= =Vy7l -----END PGP SIGNATURE----- ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From Andres.Moya en hispalinux.es Thu Dec 16 11:41:51 2004 From: Andres.Moya en hispalinux.es (Andres Moya) Date: Thu, 16 Dec 2004 11:41:51 +0100 Subject: Como saber si un parametro es una secuencia In-Reply-To: <41C161B7.5090606@hispasec.com> References: <41C15A2A.30305@hispalinux.es> <41C161B7.5090606@hispasec.com> Message-ID: <41C1666F.9090904@hispalinux.es> Julio Canto wrote: > No se, quiza sea una solucion un poco 'cateta' por mi parte, pero ¿que > tal iria un len(variable)? > Un saludo, >>> len(3) Traceback (most recent call last): File "", line 1, in ? len(3) TypeError: len() of unsized object Si la variable no es una secuencia, el len da error porque no tiene sentido. Yo he pensado preguntar por hasattr(var, "__getitem__"), pero no estoy seguro de si forzosamente todas las secuencias tienen ese método, o si hay otra forma más elegante. From ftricas en gmail.com Thu Dec 16 11:50:32 2004 From: ftricas en gmail.com (=?ISO-8859-1?Q?Fernando_Tricas_Garc=EDa?=) Date: Thu, 16 Dec 2004 11:50:32 +0100 Subject: =?iso-8859-1?q?V=EDdeo_sobre_Python_y_desarrollo_de_?= =?iso-8859-1?q?aplicaciones_web?= Message-ID: Hola, no se si se ha dicho en esta lista. Si ya se dijo, disculpad la repetición. Un co-listero dió hace un par de meses una charla sobre Creación de aplicaciones web con Python (Chema Cortés). Ahora esa charla se puede descargar porque la grabaron en vídeo (eso si, son 225 Mb de nada). La charla: http://pulsar.unizar.es/~bencer/partyzipa/2004/conferencias/python.mkv Más charlas de la feria: http://pulsar.unizar.es/~bencer/partyzipa/ Saludos, -- Fernando Tricas From Andres.Moya en hispalinux.es Thu Dec 16 12:15:40 2004 From: Andres.Moya en hispalinux.es (Andres Moya) Date: Thu, 16 Dec 2004 12:15:40 +0100 Subject: Como saber si un parametro es una secuencia In-Reply-To: <41C19C1D.9050502@ubera.net> References: <41C15A2A.30305@hispalinux.es> <41C19C1D.9050502@ubera.net> Message-ID: <41C16E5C.8090106@hispalinux.es> Josu Oyanguren wrote: > como pone en http://dbforums.com/t716314.html > Ajá: en ese thread de comp.lang.python hay una conversación bastante ilustrativa del asunto. El caso más curioso es cuando la variable es un string. Resulta que un string *es* una secuencia, porque se puede iterar, pero para el caso que nos ocupa yo quiero tratarlo como un escalar. La solución más adecuada que he visto es esta, aunque es un poco fea: def issequence(item): try: item + '' return False except TypeError: try: for x in item: break return True except TypeError: return False -- Andrés Moya ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From hernan en orgmf.com.ar Thu Dec 16 12:17:54 2004 From: hernan en orgmf.com.ar (=?iso-8859-1?Q?Hern=E1n_Mart=EDnez_Foffani?=) Date: Thu, 16 Dec 2004 12:17:54 +0100 Subject: Como saber si un parametro es una secuencia In-Reply-To: <41C1666F.9090904@hispalinux.es> References: <41C1666F.9090904@hispalinux.es> Message-ID: >> No se, quiza sea una solucion un poco 'cateta' por mi parte, pero >> ¿que tal iria un len(variable)? Un saludo, > >>>> len(3) > Traceback (most recent call last): > File "", line 1, in ? > len(3) > TypeError: len() of unsized object > > Si la variable no es una secuencia, el len da error porque no tiene > sentido. Yo he pensado preguntar por hasattr(var, "__getitem__"), pero > no estoy seguro de si forzosamente todas las secuencias tienen ese > método, o si hay otra forma más elegante. Depende lo que llames secuencia. No hay una definición exacta. Yo seguiría la línea que recomendó Josu pero sin función, directamente intentaría con secuencia y ante la excepción procesaría como escalar. Eso sí, ojo con lo strings. -H. From alexis.roda en urv.net Thu Dec 16 12:32:12 2004 From: alexis.roda en urv.net (Alexis Roda) Date: Thu, 16 Dec 2004 12:32:12 +0100 Subject: Como saber si un parametro es una secuencia In-Reply-To: <41C15A2A.30305@hispalinux.es> References: <41C15A2A.30305@hispalinux.es> Message-ID: <41C1723C.6020806@urv.net> Andres Moya wrote: > Hola a todo el mundo. > > Esto lo he visto resuelto alguna vez, pero ahora no soy capaz de > encontrarlo. ¿Cuál es la mejor manera de saber si una variable contiene > una secuencia o un valor escalar? O sea, saber si tengo que iterar sobre > ella o simplemente coger su valor. Si quieres saber si puedes iterar sobre ella supongo que deberias comprobar si define el metodo __iter__, hasattr(objeto, '__iter__'). Esto te valdria para tuplas, listas y cualquier objeto que emule secuencias. Si solo te interesa comprobar si es una lista o una tupla usa isinstance(objeto, (list, tuple)) Saludos -- //// (@ @) ----------------------------oOO----(_)----OOo-------------------------- <> Ojo por ojo y el mundo acabara ciego /\ Alexis Roda - Universitat Rovira i Virgili - Reus, Tarragona (Spain) ----------------------------------------------------------------------- From py en ch3m4.org Thu Dec 16 11:46:18 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Thu, 16 Dec 2004 11:46:18 +0100 Subject: Como saber si un parametro es una secuencia In-Reply-To: <4c01c85a0412160224680e52f6@mail.gmail.com> References: <41C15A2A.30305@hispalinux.es> <4c01c85a0412160224680e52f6@mail.gmail.com> Message-ID: <200412161146.18784.py@ch3m4.org> El Jueves, 16 de Diciembre de 2004 11:24, Pablo Rey Sobral escribió: > On Thu, 16 Dec 2004 10:49:30 +0100, Andres Moya > > wrote: > > Hola a todo el mundo. > > > > Esto lo he visto resuelto alguna vez, pero ahora no soy capaz de > > encontrarlo. ¿Cuál es la mejor manera de saber si una variable contiene > > una secuencia o un valor escalar? O sea, saber si tengo que iterar sobre > > ella o simplemente coger su valor. > > La mejor es preguntar de que tipo es la variable: > >>> x = 2 > >>> type (x) > > > > >>> x = [2] > >>> type (x) > > > > >>> x = (2,) > >>> type (x) > > > > >>> x = {'2':2} > >>> type (x) > > > > para saber si la tienes que iterar > > if (type(x) == list) or (type(x) == (tuple) or type(x) == dict): No es ésta la mejor forma de comprobar el tipo, ya que fallaría si el tipo de 'x' fuera un tipo derivado de estas clases. Para comprobar tipos hay que utilizar siempre 'issubclass': if issubclass(x, (list, tuple, dict) ): ... ------------ 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 py en ch3m4.org Thu Dec 16 11:42:49 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Thu, 16 Dec 2004 11:42:49 +0100 Subject: Como saber si un parametro es una secuencia In-Reply-To: <41C15A2A.30305@hispalinux.es> References: <41C15A2A.30305@hispalinux.es> Message-ID: <200412161142.52484.py@ch3m4.org> El Jueves, 16 de Diciembre de 2004 10:49, Andres Moya escribió: > Hola a todo el mundo. > > Esto lo he visto resuelto alguna vez, pero ahora no soy capaz de > encontrarlo. ¿Cuál es la mejor manera de saber si una variable contiene > una secuencia o un valor escalar? O sea, saber si tengo que iterar sobre > ella o simplemente coger su valor. > > Teniendo en cuenta que la variable puede ser un objeto que emula una > secuencia definiendo __getitem__, y cualquier cosa rara de éstas. Tu mismo tienes la respuesta: a.hasattr("__getitem__") ------------ 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 jeremiasc en gmail.com Thu Dec 16 14:48:30 2004 From: jeremiasc en gmail.com (Jeremias) Date: Thu, 16 Dec 2004 10:48:30 -0300 Subject: Como saber si un parametro es una secuencia In-Reply-To: <200412161142.52484.py@ch3m4.org> References: <41C15A2A.30305@hispalinux.es> <200412161142.52484.py@ch3m4.org> Message-ID: Podrias, tambien, ver el valor del atributo .__class__ del objeto. On Thu, 16 Dec 2004 11:42:49 +0100, Chema Cortés wrote: > El Jueves, 16 de Diciembre de 2004 10:49, Andres Moya escribió: > > Hola a todo el mundo. > > > > Esto lo he visto resuelto alguna vez, pero ahora no soy capaz de > > encontrarlo. ¿Cuál es la mejor manera de saber si una variable contiene > > una secuencia o un valor escalar? O sea, saber si tengo que iterar sobre > > ella o simplemente coger su valor. > > > > Teniendo en cuenta que la variable puede ser un objeto que emula una > > secuencia definiendo __getitem__, y cualquier cosa rara de éstas. > > Tu mismo tienes la respuesta: > > a.hasattr("__getitem__") > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > > > > From py en ch3m4.org Thu Dec 16 15:01:16 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Thu, 16 Dec 2004 15:01:16 +0100 Subject: =?iso-8859-1?q?V=EDdeo_sobre_Python_y_desarrollo_de_aplicaciones?= web In-Reply-To: References: Message-ID: <200412161501.23416.py@ch3m4.org> El Jueves, 16 de Diciembre de 2004 11:50, Fernando Tricas García escribió: > Hola, > > no se si se ha dicho en esta lista. Si ya se dijo, disculpad la > repetición. Un co-listero dió hace un par de meses una charla sobre > Creación de aplicaciones web con Python (Chema Cortés). > > Ahora esa charla se puede descargar porque la grabaron en vídeo (eso > si, son 225 Mb de nada). > La charla: > http://pulsar.unizar.es/~bencer/partyzipa/2004/conferencias/python.mkv > Más charlas de la feria: > http://pulsar.unizar.es/~bencer/partyzipa/ La verdad es que no estoy muy contento de esta charla. A los imprevistos iniciales que mermaron la asistencia, empecé a sufrír una afonía que me duró todas las vacaciones. Para la gente de la UJI, esta conferencia es casi idéntica a la que di en la iParty5 (2003). Devolviendo el cumplido, no os perdáis la conferencia de Fernando Tricas, toda una eminencia en temas de Bitácoras (blogs) :-) , o la de programación con SDL de Isaac Clerencia, integrante del equipo de desarrollado del juego "La Batalla de Wesnoth". PD: a ver si tenemos hoy suerte con la Expo :-P ------------ 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 py en ch3m4.org Thu Dec 16 15:10:00 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Thu, 16 Dec 2004 15:10:00 +0100 Subject: Como saber si un parametro es una secuencia In-Reply-To: References: <41C15A2A.30305@hispalinux.es> <200412161142.52484.py@ch3m4.org> Message-ID: <200412161510.00518.py@ch3m4.org> El Jueves, 16 de Diciembre de 2004 14:48, Jeremias escribió: > Podrias, tambien, ver el valor del atributo .__class__ del objeto. No. Eso sería equivalente a comprobar el tipo con type(). Tal como dije en otro comentario, no funcionaría con tipos derivados. Lo más adecuado para comprobar el tipo de un objeto es usar 'issubclass'. ------------ 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 jeremiasc en gmail.com Thu Dec 16 15:15:52 2004 From: jeremiasc en gmail.com (Jeremias) Date: Thu, 16 Dec 2004 11:15:52 -0300 Subject: Como saber si un parametro es una secuencia In-Reply-To: <200412161510.00518.py@ch3m4.org> References: <41C15A2A.30305@hispalinux.es> <200412161142.52484.py@ch3m4.org> <200412161510.00518.py@ch3m4.org> Message-ID: Perfecto, gracias por la aclaracion. On Thu, 16 Dec 2004 15:10:00 +0100, Chema Cortés wrote: > El Jueves, 16 de Diciembre de 2004 14:48, Jeremias escribió: > > Podrias, tambien, ver el valor del atributo .__class__ del objeto. > > No. Eso sería equivalente a comprobar el tipo con type(). Tal como dije en > otro comentario, no funcionaría con tipos derivados. Lo más adecuado para > comprobar el tipo de un objeto es usar 'issubclass'. > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > > > > From ftricas en gmail.com Thu Dec 16 15:20:24 2004 From: ftricas en gmail.com (=?ISO-8859-1?Q?Fernando_Tricas_Garc=EDa?=) Date: Thu, 16 Dec 2004 15:20:24 +0100 Subject: =?ISO-8859-1?Q?Re:__V=EDdeo_sobre_Pytho?= =?ISO-8859-1?Q?n_y_desarrollo_de_aplicaciones_web?= In-Reply-To: <200412161501.23416.py@ch3m4.org> References: <200412161501.23416.py@ch3m4.org> Message-ID: On Thu, 16 Dec 2004 15:01:16 +0100, Chema Cortés wrote: > El Jueves, 16 de Diciembre de 2004 11:50, Fernando Tricas García escribió: > > Hola, > > > > no se si se ha dicho en esta lista. Si ya se dijo, disculpad la > > repetición. Un co-listero dió hace un par de meses una charla sobre > > Creación de aplicaciones web con Python (Chema Cortés). > > > > Ahora esa charla se puede descargar porque la grabaron en vídeo (eso > > si, son 225 Mb de nada). > > La charla: > > http://pulsar.unizar.es/~bencer/partyzipa/2004/conferencias/python.mkv > > Más charlas de la feria: > > http://pulsar.unizar.es/~bencer/partyzipa/ > > La verdad es que no estoy muy contento de esta charla. A los imprevistos > iniciales que mermaron la asistencia, empecé a sufrír una afonía que me duró > todas las vacaciones. Para la gente de la UJI, esta conferencia es casi > idéntica a la que di en la iParty5 (2003). La asistencia en el vídeo no se nota y lo de la voz tampoco. Lo malo es que son muy gordos. > Devolviendo el cumplido, no os perdáis la conferencia de Fernando Tricas, toda > una eminencia en temas de Bitácoras (blogs) :-) , o la de programación con > SDL de Isaac Clerencia, integrante del equipo de desarrollado del juego "La > Batalla de Wesnoth". Gracias por el off-tocic ;) > > PD: a ver si tenemos hoy suerte con la Expo :-P > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > > > > -- Fernando Tricas From morillas en posta.unizar.es Thu Dec 16 15:20:30 2004 From: morillas en posta.unizar.es (luis miguel morillas) Date: Thu, 16 Dec 2004 15:20:30 +0100 Subject: Crear extensiones con MingW In-Reply-To: <200412161112.53855.py@ch3m4.org> References: <200412161112.53855.py@ch3m4.org> Message-ID: <20041216142029.GA7293@marmota.unizar.es> Asunto: [Python-es] Crear extensiones con MingW Fecha: Thu, Dec 16, 2004 at 11:12:50AM +0100 Citando a Chema Cortés (py en ch3m4.org): > Estoy viendo algunas cosas relacionadas con la compilación del python 2.4 y > extensiones con el "MS Visual C++ Toolkit 2003", una herramienta gratuita > para windows. > > La pruebas que hice en su día con MingW funcionaron muy bien para python 2.3, > aunque no he vuelto sobre el tema desde entonces. ¿Qué razones recomiendan el > uso de la herramienta privativa de Microsoft en lugar del MingW para python > 2.4? > > > Con respecto a ésto, me preguntaron la semana pasada sobre la compilación de > extensiones con MingW. Estaba pensando en juntar y publicar todo el "knowhow" > que tengo acumulado sobre el tema, pero no poseo suficiente experiencia con > la programación de extensiones. ¿Álguien tiene alguna experiencia o ejemplos > de compilación de extensiones python con MingW? Yo he tenido que compilar estas semanas alguna extensión y me ha llamado la atención lo que tú dices: por defecto te exige el Visual Studio 7.1, aunque tú a las distutils puedas pasarle como parámetro otro compilador. No me ha gustado el procedimiento. Empecé a recopilar la documentación aquí [1] (ahora sólo hay unos links). Si estos días saco un rato, describiré el proceso. Si te animas, organizamos una party compiladora ;-) [1] http://155.210.85.193:8080/ccia/nodes/2004-12-10/compilar?xslt=/akara/akara.xslt Saludos, -- Luis Miguel No a las patentes de software en Europa EuropeSwPatentFree http://EuropeSwPatentFree.hispalinux.es From py en topmusic.ch Thu Dec 16 16:32:06 2004 From: py en topmusic.ch (=?iso-8859-1?Q?Fran=E7ois?=) Date: Thu, 16 Dec 2004 16:32:06 +0100 Subject: =?iso-8859-1?Q?RE:_=5BPython-es=5DV=EDdeo_sobre_Python_y_desarrollo_de_ap?= =?iso-8859-1?Q?licaciones_web?= In-Reply-To: <200412161501.23416.py@ch3m4.org> References: <200412161501.23416.py@ch3m4.org> Message-ID: > Ahora esa charla se puede descargar porque la grabaron en vídeo (eso > si, son 225 Mb de nada). La charla: > http://pulsar.unizar.es/~bencer/partyzipa/2004/conferencias/python.mkv Usando windows (si, si) con que puedo leer el formato mkv? François From ftricas en gmail.com Thu Dec 16 16:46:32 2004 From: ftricas en gmail.com (=?ISO-8859-1?Q?Fernando_Tricas_Garc=EDa?=) Date: Thu, 16 Dec 2004 16:46:32 +0100 Subject: =?ISO-8859-1?Q?Re:_V=EDdeo_sobre_Python?= =?ISO-8859-1?Q?_y_desarrollo_de_ap_licaciones_web?= In-Reply-To: References: <200412161501.23416.py@ch3m4.org> Message-ID: On Thu, 16 Dec 2004 16:32:06 +0100, François wrote: > > Ahora esa charla se puede descargar porque la grabaron en vídeo (eso > > si, son 225 Mb de nada). La charla: > > http://pulsar.unizar.es/~bencer/partyzipa/2004/conferencias/python.mkv > > Usando windows (si, si) con que puedo leer el formato mkv? Alguien me dijo que con bsplayer. Creo que también se puede usar el mplayer en Windows, pero no lo se. > > François > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > -- Fernando Tricas From acastro en ciberdroide.com Thu Dec 16 17:21:57 2004 From: acastro en ciberdroide.com (Antonio Castro) Date: Thu, 16 Dec 2004 16:21:57 +0000 (UTC) Subject: Como saber si un parametro es una secuencia In-Reply-To: <200412161146.18784.py@ch3m4.org> References: <41C15A2A.30305@hispalinux.es> <4c01c85a0412160224680e52f6@mail.gmail.com> <200412161146.18784.py@ch3m4.org> Message-ID: On Thu, 16 Dec 2004, Chema Cortés wrote: > El Jueves, 16 de Diciembre de 2004 11:24, Pablo Rey Sobral escribió: > > On Thu, 16 Dec 2004 10:49:30 +0100, Andres Moya > > > > wrote: > > > Hola a todo el mundo. > > > > > > Esto lo he visto resuelto alguna vez, pero ahora no soy capaz de > > > encontrarlo. ¿Cuál es la mejor manera de saber si una variable contiene > > > una secuencia o un valor escalar? O sea, saber si tengo que iterar sobre > > > ella o simplemente coger su valor. > > > > La mejor es preguntar de que tipo es la variable: > > >>> x = 2 > > >>> type (x) > > > > > > > > >>> x = [2] > > >>> type (x) > > > > > > > > >>> x = (2,) > > >>> type (x) > > > > > > > > >>> x = {'2':2} > > >>> type (x) > > > > > > > > para saber si la tienes que iterar > > > > if (type(x) == list) or (type(x) == (tuple) or type(x) == dict): > > No es ésta la mejor forma de comprobar el tipo, ya que fallaría si el tipo de > 'x' fuera un tipo derivado de estas clases. Para comprobar tipos hay que > utilizar siempre 'issubclass': > > if issubclass(x, (list, tuple, dict) ): > ... Yo creo que pregurtar por el tipo es una mala solución. Siempre se puede olvidar alguno. En este caso 'string'. :-) Aunque no se olvide ninguno depende demasiado de la implementación actual del lenguaje. En realidad yo creo que es una pregunta con trampa. No creo que sea correcto decir que el contenido de una variable sea o no una secuencia. Me parece más correcto plantearlo en términos de si un determinado identificador esta asociando o no a algún dado secuenciable. Los datos secuenciables creo que son los únicos que admiten la función len(). Por lo tanto yo creo que podría servir una funcion tal que. def Secuenciable(dat): try: return len(dat) except: return -1 -- Un saludo Antonio Castro /\ /\ \\W// _|0 0|_ +-oOOO-(___o___)-OOOo---------------------+ | . . . . U U . Antonio Castro Snurmacher | | . . . . . . . acastro en ciberdroide.com | +()()()---------()()()--------------------+ From pachi en mmn-arquitectos.com Thu Dec 16 17:21:25 2004 From: pachi en mmn-arquitectos.com (Rafael Villar Burke) Date: Thu, 16 Dec 2004 17:21:25 +0100 Subject: Como saber si un parametro es una secuencia In-Reply-To: <200412161146.18784.py@ch3m4.org> References: <41C15A2A.30305@hispalinux.es> <4c01c85a0412160224680e52f6@mail.gmail.com> <200412161146.18784.py@ch3m4.org> Message-ID: <41C1B605.8050204@mmn-arquitectos.com> Chema Cortés wrote: >No es ésta la mejor forma de comprobar el tipo, ya que fallaría si el tipo de >'x' fuera un tipo derivado de estas clases. Para comprobar tipos hay que >utilizar siempre 'issubclass': > >if issubclass(x, (list, tuple, dict) ): > ... > > o if isinstance(x, (list, tuple, dict)): print "es secuencia" Pachi ------------ 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 Dec 16 18:37:34 2004 From: jcea en argo.es (Jesus Cea) Date: Thu, 16 Dec 2004 18:37:34 +0100 Subject: Como saber si un parametro es una secuencia In-Reply-To: <41C16E5C.8090106@hispalinux.es> References: <41C15A2A.30305@hispalinux.es> <41C19C1D.9050502@ubera.net> <41C16E5C.8090106@hispalinux.es> Message-ID: <41C1C7DE.30404@argo.es> Andres Moya wrote: > for x in item: > break Si el parámetro que te pasan es un iterador, te estás cargando el primer valor. -- Jesus Cea Avion _/_/ _/_/_/ _/_/_/ jcea en argo.es http://www.argo.es/~jcea/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/_/_/_/ PGP Key Available at KeyServ _/_/ _/_/ _/_/ _/_/ _/_/ "Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ "My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/ "El amor es poner tu felicidad en la felicidad de otro" - Leibniz From Andres.Moya en hispalinux.es Thu Dec 16 18:46:18 2004 From: Andres.Moya en hispalinux.es (Andres Moya) Date: Thu, 16 Dec 2004 18:46:18 +0100 Subject: Como saber si un parametro es una secuencia In-Reply-To: <41C1C7DE.30404@argo.es> References: <41C15A2A.30305@hispalinux.es> <41C19C1D.9050502@ubera.net> <41C16E5C.8090106@hispalinux.es> <41C1C7DE.30404@argo.es> Message-ID: <41C1C9EA.1070407@hispalinux.es> Jesus Cea wrote: > Andres Moya wrote: > >> for x in item: >> break > > > Si el parámetro que te pasan es un iterador, te estás cargando el > primer valor. > Pues es totalmente cherto, estaba dandole vueltas a esto precisamente. Casi mejor llamar al len(), como dice Antonio Castro. Pero comprobando lo del string, porque en mi caso no me interesa considerar que un string es una secuencia. O sea, algo tal que así: def issequence(item): try: item + '' return False except TypeError: try: len(item) return True except TypeError: return False -- Andrés Moya From jcea en argo.es Thu Dec 16 19:03:52 2004 From: jcea en argo.es (Jesus Cea) Date: Thu, 16 Dec 2004 19:03:52 +0100 Subject: Como saber si un parametro es una secuencia In-Reply-To: <41C1C9EA.1070407@hispalinux.es> References: <41C15A2A.30305@hispalinux.es> <41C19C1D.9050502@ubera.net> <41C16E5C.8090106@hispalinux.es> <41C1C7DE.30404@argo.es> <41C1C9EA.1070407@hispalinux.es> Message-ID: <41C1CE08.7080902@argo.es> >> Si el parámetro que te pasan es un iterador, te estás cargando el >> primer valor. >> > Pues es totalmente cherto, estaba dandole vueltas a esto precisamente. > Casi mejor llamar al len(), como dice Antonio Castro. Hay iteradores que no tienen "len()". Por ejemplo, leer las lineas de un fichero. Creo que el problema está mal enfocado. Si la rutina requiere de un "contrato" de uso, ese contrato debe indicar con detalle cómo ser invocada. -- Jesus Cea Avion _/_/ _/_/_/ _/_/_/ jcea en argo.es http://www.argo.es/~jcea/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ _/_/_/_/_/ PGP Key Available at KeyServ _/_/ _/_/ _/_/ _/_/ _/_/ "Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/ "My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/ "El amor es poner tu felicidad en la felicidad de otro" - Leibniz From Andres.Moya en hispalinux.es Thu Dec 16 19:13:24 2004 From: Andres.Moya en hispalinux.es (Andres Moya) Date: Thu, 16 Dec 2004 19:13:24 +0100 Subject: Como saber si un parametro es una secuencia In-Reply-To: <41C1CE08.7080902@argo.es> References: <41C15A2A.30305@hispalinux.es> <41C19C1D.9050502@ubera.net> <41C16E5C.8090106@hispalinux.es> <41C1C7DE.30404@argo.es> <41C1C9EA.1070407@hispalinux.es> <41C1CE08.7080902@argo.es> Message-ID: <41C1D044.505@hispalinux.es> Jesus Cea wrote: > Hay iteradores que no tienen "len()". Por ejemplo, leer las lineas de > un fichero. > > Creo que el problema está mal enfocado. Si la rutina requiere de un > "contrato" de uso, ese contrato debe indicar con detalle cómo ser > invocada. No, si ya. De lo que se trata es de hacer ese contrato lo más abierto posible. En realidad mi caso es más sencillo y varias de estas soluciones me valen. Pero ya puestos, me ha entrado la curiosidad de ver hasta dónde se puede llegar en la teoría. :D From faltet en carabos.com Thu Dec 16 19:38:57 2004 From: faltet en carabos.com (Francesc Altet) Date: Thu, 16 Dec 2004 19:38:57 +0100 Subject: Crear extensiones con MingW In-Reply-To: <200412161112.53855.py@ch3m4.org> References: <200412161112.53855.py@ch3m4.org> Message-ID: <200412161938.58284.faltet@carabos.com> Hace poco tuve que compilar una extensión sobre plataforma Windows e intenté directamente el "MS Visual C++ Toolkit 2003" siguiendo las instrucciones en: http://www.vrplumber.com/programming/mstoolkit/index.html Funcionó bien. Eso sí, me tuve que bajar tropecientos MB de la web de M$ y estuve una tarde entera con el tema, y tuve que liberar casi 2 GB (!!!) de disco duro para instalar el toolkit de marras [Qué coño meterá M$ en el toolkit???]. En fin, lo importante es que las instrucciones de arriba son muy completitas y la instalación no tiene mayor dificultad técnica que tener una buena ADSL y *mucho* espacio libre en tu disco duro. Pero tienes razón, se echa de menos un mayor compromiso por parte de la gente de Python con el soft libre, sobre todo en plataformas Win. No sé sinceramente porqué se continúa eligiendo el compilador de M$ para compilar el CPython (y con ello arrastrar a muchos autores de extensiones a usar el mismo). En fin, siento no poder ir más al grano de lo que pides, pero esa es mi experiencia, Francesc A Dijous 16 Desembre 2004 11:12, Chema Cortés va escriure: > Estoy viendo algunas cosas relacionadas con la compilación del python 2.4 y > extensiones con el "MS Visual C++ Toolkit 2003", una herramienta gratuita > para windows. > > La pruebas que hice en su día con MingW funcionaron muy bien para python 2.3, > aunque no he vuelto sobre el tema desde entonces. ¿Qué razones recomiendan el > uso de la herramienta privativa de Microsoft en lugar del MingW para python > 2.4? > > > Con respecto a ésto, me preguntaron la semana pasada sobre la compilación de > extensiones con MingW. Estaba pensando en juntar y publicar todo el "knowhow" > que tengo acumulado sobre el tema, pero no poseo suficiente experiencia con > la programación de extensiones. ¿Álguien tiene alguna experiencia o ejemplos > de compilación de extensiones python con MingW? > -- Francesc Altet Who's your data daddy?  PyTables ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From ypf en lilit.be Thu Dec 16 23:51:47 2004 From: ypf en lilit.be (Yves Philippart de Foy) Date: Thu, 16 Dec 2004 23:51:47 +0100 Subject: =?ISO-8859-1?Q?V=EDdeo_sobre_Python_y_de?= =?ISO-8859-1?Q?sarrollo_de_aplicaciones_web?= In-Reply-To: References: Message-ID: <41C21183.50109@lilit.be> > > >Ahora esa charla se puede descargar porque la grabaron en vídeo (eso >si, son 225 Mb de nada). >La charla: >http://pulsar.unizar.es/~bencer/partyzipa/2004/conferencias/python.mkv >Más charlas de la feria: >http://pulsar.unizar.es/~bencer/partyzipa/ > > Me interesa mucho esa charla, he empezado a mirarla pero a partir del HolaMundo.cpy se hace muy dificil ver lo que pone en la pantalla, alguien sabe si se pueden bajar las presentaciones? En el sitio de partizip@ por lo menos no encontré nada. Muchas gracias. -- Yves Philippart de Foy From visuallinux en hotmail.com Fri Dec 17 01:08:30 2004 From: visuallinux en hotmail.com (fernando miguel villarroel noriel) Date: Fri, 17 Dec 2004 00:08:30 +0000 Subject: Cerrar Formulario Message-ID: Hola como se controla en wxPython para que un usuario no pueda cerrar un formulario desde la x que aparece en el extremo superior derecho de una ventana. La idea es que solo lo pueda hacer usando algun boton para ello "Salir". Fernando Villarroel N. _________________________________________________________________ MSN Amor: busca tu ½ naranja http://latam.msn.com/amor/ From malotor en telefonica.net Fri Dec 17 01:11:59 2004 From: malotor en telefonica.net (Manuel =?ISO-8859-1?Q?L=F3pez?= Torrent) Date: Fri, 17 Dec 2004 01:11:59 +0100 Subject: Buscando consejo sobre desarrollo de aplicacion cliente-servidor Message-ID: <1103242319.3409.11.camel@Zeus> Saludo a todos, hace ya un tiempo que no escribo nada en la lista ( cuestiones de trabajo y tiempo, que os voy a contar ), y ahora me remito a todos vosotros buscando vuestro sabio consejo ( buff que poético me ha quedado ). El tema es el siguiente, voy a empezar a desarrollar una pequeña aplicación cliente/servidor, concretamente es una aplicación para "jugar a rol" online, con una mapa, un chat, inventario, etc. La cuestión es que no he desarrollado ninguna de este tipo todavía y la primera duda que tengo es la comunicación entre el cliente y el servidor. Como lo hago ? sockets ? RPC ?. A ver si alguien con experiencia en este tema podría darme algún consejo. Cambiando de tema, llevo a medias un "projectillo" de un motor gráfico 3D ( rollo quake ) para python. No es gran cosa pero he aprendido mogollón de cosas. Espero poder publicar pronto algunos artículos para comentar mi trabajo y que sirva de ayuda a otros que empiezen con la programación gráfica y python ( al igual que el trabajo de otros me sirvió a mi ). Saludos a todos, Soul Soul ************************************************* ( soulkiller en teleline.es ) ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From Andres.Moya en hispalinux.es Fri Dec 17 09:04:34 2004 From: Andres.Moya en hispalinux.es (Andres Moya) Date: Fri, 17 Dec 2004 09:04:34 +0100 Subject: Buscando consejo sobre desarrollo de aplicacion cliente-servidor In-Reply-To: <1103242319.3409.11.camel@Zeus> References: <1103242319.3409.11.camel@Zeus> Message-ID: <41C29312.5000908@hispalinux.es> Manuel López Torrent wrote: >Saludo a todos, hace ya un tiempo que no escribo nada en la lista >( cuestiones de trabajo y tiempo, que os voy a contar ), y ahora me >remito a todos vosotros buscando vuestro sabio consejo ( buff que >poético me ha quedado ). El tema es el siguiente, voy a empezar a >desarrollar una pequeña aplicación cliente/servidor, concretamente es >una aplicación para "jugar a rol" online, con una mapa, un chat, >inventario, etc. > >La cuestión es que no he desarrollado ninguna de este tipo todavía y la >primera duda que tengo es la comunicación entre el cliente y el >servidor. Como lo hago ? sockets ? RPC ?. > > Bueno, yo estoy escribiendo un programa de rol online en python. Quizá te sirva de algo. Lo que pasa es que el nuestro es tipo MUD, o sea, sólo texto y nada de gráficos, pero aún así a lo mejor te da algunas ideas. Ahora mismo el proyecto está un poco parado, pero es funcional. Si te digo la verdad, nuestro interés ha sido casi más trastear con la programación en python que el jugar en sí, pero en tu caso te viene bien, porque a tí lo que te interesa es ver cómo está hecho. Para la comunicación usamos sockets. http://www.nongnu.org/ambar --- Andres.Moya en hispalinux.es ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From py en ch3m4.org Fri Dec 17 10:57:06 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Fri, 17 Dec 2004 10:57:06 +0100 Subject: =?iso-8859-1?q?=5BPython-es=5DV=EDdeo_sobre_Python_y_desarrollo_de?= =?iso-8859-1?q?_aplicaciones?= web In-Reply-To: References: Message-ID: <200412171057.09956.py@ch3m4.org> El Jueves, 16 de Diciembre de 2004 16:32, François escribió: > > Ahora esa charla se puede descargar porque la grabaron en vídeo (eso > > si, son 225 Mb de nada). La charla: > > http://pulsar.unizar.es/~bencer/partyzipa/2004/conferencias/python.mkv > > Usando windows (si, si) con que puedo leer el formato mkv? En la web oficial de Matroska tienes reproductores y utilidades para windows y otros sistemas: http://www.matroska.org/index.html.es ------------ 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 py en ch3m4.org Fri Dec 17 12:01:37 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Fri, 17 Dec 2004 12:01:37 +0100 Subject: =?iso-8859-1?q?V=EDdeo_sobre_Python_y_desarrollo_de_aplicaciones?= web In-Reply-To: <41C21183.50109@lilit.be> References: <41C21183.50109@lilit.be> Message-ID: <200412171201.40792.py@ch3m4.org> El Jueves, 16 de Diciembre de 2004 23:51, Yves Philippart de Foy escribió: > >Ahora esa charla se puede descargar porque la grabaron en vídeo (eso > >si, son 225 Mb de nada). > >La charla: > >http://pulsar.unizar.es/~bencer/partyzipa/2004/conferencias/python.mkv > >Más charlas de la feria: > >http://pulsar.unizar.es/~bencer/partyzipa/ > > Me interesa mucho esa charla, he empezado a mirarla pero a partir del > HolaMundo.cpy se hace muy dificil ver lo que pone en la pantalla, > alguien sabe si se pueden bajar las presentaciones? En el sitio de > partizip@ por lo menos no encontré nada. El problema es que no es una presentación normal. Toda la presentación es, en sí misma, un demostración de una web hecha en CherryPy y requiere tener instalados algunos módulos de python para que funcionen algunas secciones (PIL, MySQLdb, etc). En realidad es una aplicación más general para hacer presentaciones llamada "pyshow" que me hize en una tarde y que no volví a revisar. No tiene documentación, pero es muy simple de usar y entender. Quería traducirla al inglés y añadir alguna documentación; pero con la recreación de CherryPy a la versión 2 quedó algo obsoleto. Resumiendo, podéis bajar la presentación desde aquí: http://ch3m4.org/pystore/pyshow-0.4.1.tar.bz2 Está creado con cherrypy-0.10, aunque sólo se necesita si se quiere recompilar el fuente. Se ejecuta desde dentro de la carpeta con 'python pyShowServer.py' y se visualiza en un navegador en la dirección 'http://localhost:8888'. La presentación utiliza el fichero 'cherrypy.psw' cuya estructura es bastante sencilla de entender. Los ejemplos se deben ir ejecutando a parte. ------------ 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 lcatalin en siadv.com Fri Dec 17 12:23:15 2004 From: lcatalin en siadv.com (Catalin Lungu) Date: Fri, 17 Dec 2004 12:23:15 +0100 Subject: Sobrecargar __delitem__ Message-ID: <000a01c4e42a$d2bfa1b0$d900a8c0@catalin> Hola, Como puedo sobrecargar el método __delitem__. Yo lo estoy haciendo de la siguiente forma pero se mete en un bucle infinito. def __delitem__(self, key): self.__delitem__(k) #aqui sigo con mis cosas Gracias. From Andres.Moya en hispalinux.es Fri Dec 17 12:37:47 2004 From: Andres.Moya en hispalinux.es (Andres Moya) Date: Fri, 17 Dec 2004 12:37:47 +0100 Subject: Sobrecargar __delitem__ In-Reply-To: <000a01c4e42a$d2bfa1b0$d900a8c0@catalin> References: <000a01c4e42a$d2bfa1b0$d900a8c0@catalin> Message-ID: <41C2C50B.9010107@hispalinux.es> Catalin Lungu wrote: >Hola, >Como puedo sobrecargar el método __delitem__. Yo lo estoy haciendo de la siguiente forma pero se mete en un bucle infinito. > >def __delitem__(self, key): > self.__delitem__(k) > #aqui sigo con mis cosas > > Tienes que llamar al __delitem__ de la superclase. Por ejemplo, si tu clase deriva de object: def __delitem__(self, key): object.__delitem__(self, key) #aqui sigo con mis cosas -- Andres.Moya en hispalinux.es From lcatalin en siadv.com Fri Dec 17 12:40:51 2004 From: lcatalin en siadv.com (Catalin Lungu) Date: Fri, 17 Dec 2004 12:40:51 +0100 Subject: Sobrecargar __delitem__ References: <000a01c4e42a$d2bfa1b0$d900a8c0@catalin> Message-ID: <000501c4e42d$44ae4770$d900a8c0@catalin> Al final lo he arreglado: def __delitem__(self, key): dict.__delitem__(self, key) Saludos. ----- Original Message ----- From: "Catalin Lungu" To: "La lista de python en castellano" Sent: Friday, December 17, 2004 12:23 PM Subject: [Python-es] Sobrecargar __delitem__ Hola, Como puedo sobrecargar el método __delitem__. Yo lo estoy haciendo de la siguiente forma pero se mete en un bucle infinito. def __delitem__(self, key): self.__delitem__(k) #aqui sigo con mis cosas Gracias. _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From pedro.carrasco en iver.es Fri Dec 17 12:43:12 2004 From: pedro.carrasco en iver.es (Pedro A. Carrasco Ponce) Date: Fri, 17 Dec 2004 12:43:12 +0100 Subject: Sobrecargar __delitem__ In-Reply-To: <000a01c4e42a$d2bfa1b0$d900a8c0@catalin> References: <000a01c4e42a$d2bfa1b0$d900a8c0@catalin> Message-ID: <41C2C650.7020008@iver.es> Catalin Lungu wrote: > Hola, > Como puedo sobrecargar el método __delitem__. Yo lo estoy haciendo de la siguiente forma pero se mete en un bucle infinito. > > def __delitem__(self, key): > self.__delitem__(k) > #aqui sigo con mis cosas > Me suena algo del método super(clase,objeto), míralo en la documentación a ver si te sirve. Salu2 -- Pedro From magmax9 en yahoo.es Fri Dec 17 12:45:20 2004 From: magmax9 en yahoo.es (Miguel Angel Garcia) Date: Fri, 17 Dec 2004 12:45:20 +0100 Subject: Sobrecargar __delitem__ In-Reply-To: <000a01c4e42a$d2bfa1b0$d900a8c0@catalin> References: <000a01c4e42a$d2bfa1b0$d900a8c0@catalin> Message-ID: <1103283921.5770.1.camel@localhost> Claro que se te mete en un bucle infinito, al fin y al cabo es recursiva. Creo que lo que quieres es esto: def __delitem__(self, key): self.VARIABLE.__delitem__(k) #aqui sigo con mis cosas Lo otro no tiene mucho sentido (no lo borres y punto). ¿Qué es exactamente lo que quieres hacer? El vie, 17-12-2004 a las 12:23 +0100, Catalin Lungu escribió: > Hola, > Como puedo sobrecargar el método __delitem__. Yo lo estoy haciendo de la siguiente forma pero se mete en un bucle infinito. > > def __delitem__(self, key): > self.__delitem__(k) > #aqui sigo con mis cosas > > Gracias. > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: Esta parte del mensaje está firmada digitalmente URL: ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From susi.toci en nodo50.org Fri Dec 17 13:29:44 2004 From: susi.toci en nodo50.org (David Asorey Álvarez) Date: Fri, 17 Dec 2004 12:29:44 -0000 Subject: Cerrar Formulario Message-ID: Tienes que definir una función que "intercepte" el evento "Close" que se genera al tratar de cerrar la ventana. Hay dos formas de hacerlo: a) self.Bind(wx.EVT_CLOSE, self.CierraVentana) b) wx.EVT_CLOSE(self, self.CierraVentana) y defines la función CierraVentana def CierraVentana(self, evento): # comprobaciones, y si procede: self.Close() # y si no, pass En la documentación de wxWidgets viene bastante bien documentado. Échale un vistazo al apartado "Window deletion overview" (Estoy escribiendo de memoria, no estoy seguro de la sintaxis precisa). Saludos. -- David Asorey Álvarez ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From lcatalin en siadv.com Fri Dec 17 14:15:56 2004 From: lcatalin en siadv.com (Catalin Lungu) Date: Fri, 17 Dec 2004 14:15:56 +0100 Subject: Cerrar Formulario References: Message-ID: <002801c4e43a$8b6e3c30$d900a8c0@catalin> O mas sencillo: EVT_CLOSE(self, self.OnFrmPantallaClose) def OnFrmPantallaClose(self, event): if PulsadoBoton: event.Skip() ----- Original Message ----- From: "David Asorey Xlvarez" To: Sent: Friday, December 17, 2004 1:29 PM Subject: [Python-es] Re: Cerrar Formulario > > Tienes que definir una función que "intercepte" el evento "Close" que > se genera al tratar de cerrar la ventana. Hay dos formas de hacerlo: > > a) > self.Bind(wx.EVT_CLOSE, self.CierraVentana) > > b) > wx.EVT_CLOSE(self, self.CierraVentana) > > y defines la función CierraVentana > > def CierraVentana(self, evento): > # comprobaciones, y si procede: > self.Close() > # y si no, > pass > > En la documentación de wxWidgets viene bastante bien documentado. > Échale un vistazo al apartado "Window deletion overview" > > (Estoy escribiendo de memoria, no estoy seguro de la sintaxis precisa). > > Saludos. > > -- > David Asorey Álvarez > -------------------------------------------------------------------------------- _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From "juan:_carbajal_paxi" en yahoo.es Fri Dec 17 02:25:17 2004 From: "juan:_carbajal_paxi" en yahoo.es (Juan Carbajal) Date: Thu, 16 Dec 2004 20:25:17 -0500 Subject: Bases en Memoria References: Message-ID: <008401c4e440$f206fa80$9201a8c0@pc75> Hola a todos. Bueno si alguien a podido hacer esto por favor si me puede ayudar a terminarlo. Lo que intento hacer es una aplicacion para cada uno de las sucursales, la cual extrae ciertas tablas de una base en DB2 guardandolas en una base SQLite, la base SQLite es enviada a la central donde las trabajo. El problema es el proceso de exportacion, el tiempo que demora en hacerlo es bastante entre 5 y 7 minutos por tabla (son tablas con mucha cantidad de datos). Pero lo que he visto es que cuando lo hago con Visual FoxPro se demora de 1 a 3 segundos por tabla. esto porque cuando realiza la consulta para sacar las tablas las pone en memoria y de ahi las guarda en el Disco. Bueno quisiera hacer este proceso con SQLite, pero no funciona, mas q todo por la forma en que Sqlite crea tablas en memoria, estas no se pueden pasar a tablas fisicas. Si alguien de Ud. conoce una clase para crear tablas en memoria y que pueda guardarlas fisicamente despues. O quiza un gestor de base de datos que haga esto, se lo agradeceria.. Gracias. From py en ch3m4.org Fri Dec 17 15:34:23 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Fri, 17 Dec 2004 15:34:23 +0100 Subject: Bases en Memoria In-Reply-To: <008401c4e440$f206fa80$9201a8c0@pc75> References: <008401c4e440$f206fa80$9201a8c0@pc75> Message-ID: <200412171534.27103.py@ch3m4.org> El Viernes, 17 de Diciembre de 2004 02:25, Juan Carbajal escribió: > Hola a todos. > Bueno si alguien a podido hacer esto por favor si me puede ayudar a > terminarlo. Lo que intento hacer es una aplicacion para cada uno de las > sucursales, la cual extrae ciertas tablas de una base en DB2 guardandolas > en una base SQLite, la base SQLite es enviada a la central donde las > trabajo. El problema es el proceso de exportacion, el tiempo que demora en > hacerlo es bastante entre 5 y 7 minutos por tabla (son tablas con mucha > cantidad de datos). Pero lo que he visto es que cuando lo hago con Visual > FoxPro se demora de 1 a 3 segundos por tabla. esto porque cuando realiza la > consulta para sacar las tablas las pone en memoria y de ahi las guarda en > el Disco. > > Bueno quisiera hacer este proceso con SQLite, pero no funciona, mas q todo > por la forma en que Sqlite crea tablas en memoria, estas no se pueden pasar > a tablas fisicas. Si alguien de Ud. conoce una clase para crear tablas en > memoria y que pueda guardarlas fisicamente despues. O quiza un gestor de > base de datos que haga esto, se lo agradeceria.. Podría servir la Berkeley ('bsddb'). Viene con python y no necesitas instalar nada más. Para crear una tabla en memoria basta con abrir la base sin darle nombre. Pero antes de renunciar al SQLite, echa un vistazo a esta FAQ: http://web.utk.edu/~jplyon/sqlite/SQLite_optimization_FAQ.html http://web.utk.edu/~jplyon/sqlite/SQLite_optimization_FAQ.html#transactions ------------ 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 FBatista en uniFON.com.ar Fri Dec 17 15:35:18 2004 From: FBatista en uniFON.com.ar (Batista, Facundo) Date: Fri, 17 Dec 2004 11:35:18 -0300 Subject: Bases en Memoria Message-ID: [Juan Carbajal] #- Hola a todos. #- Bueno si alguien a podido hacer esto por favor si me puede ayudar a #- terminarlo. Lo que intento hacer es una aplicacion para cada #- uno de las #- sucursales, la cual extrae ciertas tablas de una base en DB2 #- guardandolas en #- una base SQLite, la base SQLite es enviada a la central #- donde las trabajo. ¿Sí o sí tienes que guardar los datos en SQLite? #- El problema es el proceso de exportacion, el tiempo que #- demora en hacerlo es #- bastante entre 5 y 7 minutos por tabla (son tablas con mucha #- cantidad de #- datos). Pero lo que he visto es que cuando lo hago con #- Visual FoxPro se #- demora de 1 a 3 segundos por tabla. esto porque cuando #- realiza la consulta #- para sacar las tablas las pone en memoria y de ahi las #- guarda en el Disco. ¿Pero Visual FoxPro guarda los datos en SQLite? Si no, creo que no puedes comparar las dos cosas. Por lo que si bajar los datos a SQLite es mandatorio, VFP aunque rápido no te sirve. Si no es mandatorio, podemos intentar otra cosa en Python. #- Bueno quisiera hacer este proceso con SQLite, pero no #- funciona, mas q todo #- por la forma en que Sqlite crea tablas en memoria, estas no #- se pueden pasar #- a tablas fisicas. Si alguien de Ud. conoce una clase para #- crear tablas en #- memoria y que pueda guardarlas fisicamente despues. O quiza #- un gestor de #- base de datos que haga esto, se lo agradeceria.. Realmente no me queda claro si debes o no usar SQLite. Slds. . Facundo Bitácora De Vuelo: http://www.taniquetil.com.ar/plog PyAr - Python Argentina: http://pyar.decode.com.ar/ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ADVERTENCIA. La información contenida en este mensaje y cualquier archivo anexo al mismo, son para uso exclusivo del destinatario y pueden contener información confidencial o propietaria, cuya divulgación es sancionada por la ley. Si Ud. No es uno de los destinatarios consignados o la persona responsable de hacer llegar este mensaje a los destinatarios consignados, no está autorizado a divulgar, copiar, distribuir o retener información (o parte de ella) contenida en este mensaje. Por favor notifíquenos respondiendo al remitente, borre el mensaje original y borre las copias (impresas o grabadas en cualquier medio magnético) que pueda haber realizado del mismo. Todas las opiniones contenidas en este mail son propias del autor del mensaje y no necesariamente coinciden con las de Telefónica Comunicaciones Personales S.A. o alguna empresa asociada. Los mensajes electrónicos pueden ser alterados, motivo por el cual Telefónica Comunicaciones Personales S.A. no aceptará ninguna obligación cualquiera sea el resultante de este mensaje. Muchas Gracias. From erny en sicem.biz Fri Dec 17 15:59:47 2004 From: erny en sicem.biz (Ernesto Revilla) Date: Fri, 17 Dec 2004 15:59:47 +0100 Subject: Buscando consejo sobre desarrollo de aplicacion cliente-servidor In-Reply-To: <1103242319.3409.11.camel@Zeus> References: <1103242319.3409.11.camel@Zeus> Message-ID: <41C2F463.7010300@sicem.biz> Hola, el tema del cliente-servidor depende si puedes tener python en ambos extremos o no. En todo caso te recomiendo que eches un vistazo a Twisted [1] y a PyRo [2]. Por supuesto, también puedes usar la xmlrpclib [3] y SimpleXMLRPCServer [4] que viene con Python, sockets directamente o algún protocolo más estructurado como HTTP (servidor básico viene con Python [5]). Ventajas: * socket: rápido * http: traspasa proxies, firewalls, etc. * xmlrpc: datos estructurados con tipos (algo más lento por tener que analizar los mensajes xml) Erny [1] http://twistedmatrix.com/products/twisted [2] http://pyro.sourceforge.net/ [3] http://docs.python.org/lib/module-xmlrpclib.html [4] http://docs.python.org/lib/module-SimpleXMLRPCServer.html [5] http://docs.python.org/lib/module-SimpleHTTPServer.html Manuel López Torrent escribió: >Saludo a todos, hace ya un tiempo que no escribo nada en la lista >( cuestiones de trabajo y tiempo, que os voy a contar ), y ahora me >remito a todos vosotros buscando vuestro sabio consejo ( buff que >poético me ha quedado ). El tema es el siguiente, voy a empezar a >desarrollar una pequeña aplicación cliente/servidor, concretamente es >una aplicación para "jugar a rol" online, con una mapa, un chat, >inventario, etc. > >La cuestión es que no he desarrollado ninguna de este tipo todavía y la >primera duda que tengo es la comunicación entre el cliente y el >servidor. Como lo hago ? sockets ? RPC ?. > >A ver si alguien con experiencia en este tema podría darme algún >consejo. > >Cambiando de tema, llevo a medias un "projectillo" de un motor gráfico >3D ( rollo quake ) para python. No es gran cosa pero he aprendido >mogollón de cosas. Espero poder publicar pronto algunos artículos para >comentar mi trabajo y que sirva de ayuda a otros que empiezen con la >programación gráfica y python ( al igual que el trabajo de otros me >sirvió a mi ). > >Saludos a todos, >Soul > > > > > >Soul >************************************************* >( soulkiller en teleline.es ) > > >------------------------------------------------------------------------ > >_______________________________________________ >Python-es mailing list >Python-es en aditel.org >http://listas.aditel.org/listinfo/python-es > > -- Ernesto Revilla sicem sl Pol. Ind. Juncaril, c/ Loja Parc. 7 Local 13 18220 Albolote http://www.sicem.biz Tel: 958 468773 - 637 716189 MSN: aerd en mx3.redestb.es ICQ: 163888521 --- avast! Antivirus: Saliente mensaje limpio. Base de datos de Virus (VPS): 0451-1, 14/12/2004 Comprobado en: 17/12/2004 15:59:49 avast! tiene los derechos reservados (c) 2000-2004 ALWIL Software. http://www.avast.com ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From magmax9 en yahoo.es Fri Dec 17 16:21:21 2004 From: magmax9 en yahoo.es (Miguel Angel Garcia) Date: Fri, 17 Dec 2004 16:21:21 +0100 Subject: Buscando consejo sobre desarrollo de aplicacion cliente-servidor In-Reply-To: <41C2F463.7010300@sicem.biz> References: <1103242319.3409.11.camel@Zeus> <41C2F463.7010300@sicem.biz> Message-ID: <1103296882.5770.10.camel@localhost> Siempre puedes utilizar arquitecturas de red que soporten multilenguaje. Yo he trabajado con CORBA[1] y con ICE[2]. .NET también es una buena posibilidad. ICE se creó para hacer un videojuego de rol (qué casualidad, ¿eh?). [1] http://www.omg.org/gettingstarted/corbafaq.htm [2] http://www.zeroc.com El vie, 17-12-2004 a las 15:59 +0100, Ernesto Revilla escribió: > Hola, > > el tema del cliente-servidor depende si puedes tener python en ambos > extremos o no. > > En todo caso te recomiendo que eches un vistazo a Twisted [1] y a PyRo > [2]. Por supuesto, también puedes usar la xmlrpclib [3] y > SimpleXMLRPCServer [4] que viene con Python, sockets directamente o > algún protocolo más estructurado como HTTP (servidor básico viene con > Python [5]). > Ventajas: > * socket: rápido > * http: traspasa proxies, firewalls, etc. > * xmlrpc: datos estructurados con tipos (algo más lento por tener que > analizar los mensajes xml) > > Erny > > [1] http://twistedmatrix.com/products/twisted > [2] http://pyro.sourceforge.net/ > [3] http://docs.python.org/lib/module-xmlrpclib.html > [4] http://docs.python.org/lib/module-SimpleXMLRPCServer.html > [5] http://docs.python.org/lib/module-SimpleHTTPServer.html > > Manuel López Torrent escribió: > > >Saludo a todos, hace ya un tiempo que no escribo nada en la lista > >( cuestiones de trabajo y tiempo, que os voy a contar ), y ahora me > >remito a todos vosotros buscando vuestro sabio consejo ( buff que > >poético me ha quedado ). El tema es el siguiente, voy a empezar a > >desarrollar una pequeña aplicación cliente/servidor, concretamente es > >una aplicación para "jugar a rol" online, con una mapa, un chat, > >inventario, etc. > > > >La cuestión es que no he desarrollado ninguna de este tipo todavía y la > >primera duda que tengo es la comunicación entre el cliente y el > >servidor. Como lo hago ? sockets ? RPC ?. > > > >A ver si alguien con experiencia en este tema podría darme algún > >consejo. > > > >Cambiando de tema, llevo a medias un "projectillo" de un motor gráfico > >3D ( rollo quake ) para python. No es gran cosa pero he aprendido > >mogollón de cosas. Espero poder publicar pronto algunos artículos para > >comentar mi trabajo y que sirva de ayuda a otros que empiezen con la > >programación gráfica y python ( al igual que el trabajo de otros me > >sirvió a mi ). > > > >Saludos a todos, > >Soul > > > > > > > > > > > >Soul > >************************************************* > >( soulkiller en teleline.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 ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: Esta parte del mensaje está firmada digitalmente URL: ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From aragorn en pythonhispano.org Fri Dec 17 16:46:21 2004 From: aragorn en pythonhispano.org (Jose) Date: Fri, 17 Dec 2004 16:46:21 +0100 Subject: Buscando consejo sobre desarrollo de aplicacion cliente-servidor In-Reply-To: <1103296882.5770.10.camel@localhost> References: <1103242319.3409.11.camel@Zeus> <41C2F463.7010300@sicem.biz> <1103296882.5770.10.camel@localhost> Message-ID: <1103298381.6075.0.camel@demeter.speriaitc.com> ¿Puedes comentarnos qué tal es tu valoración de ICE? El vie, 17-12-2004 a las 16:21, Miguel Angel Garcia escribió: > Siempre puedes utilizar arquitecturas de red que soporten multilenguaje. > Yo he trabajado con CORBA[1] y con ICE[2]. .NET también es una buena > posibilidad. ICE se creó para hacer un videojuego de rol (qué > casualidad, ¿eh?). > > [1] http://www.omg.org/gettingstarted/corbafaq.htm > [2] http://www.zeroc.com ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From magmax9 en yahoo.es Fri Dec 17 17:43:35 2004 From: magmax9 en yahoo.es (Miguel Angel Garcia) Date: Fri, 17 Dec 2004 17:43:35 +0100 Subject: Buscando consejo sobre desarrollo de aplicacion cliente-servidor In-Reply-To: <1103298381.6075.0.camel@demeter.speriaitc.com> References: <1103242319.3409.11.camel@Zeus> <41C2F463.7010300@sicem.biz> <1103296882.5770.10.camel@localhost> <1103298381.6075.0.camel@demeter.speriaitc.com> Message-ID: <1103301815.5770.13.camel@localhost> Ejem... puede ser un poquito "extraña" al principio, y su "pequeño" manual de 1400 páginas echa para atrás. Pero sus características son muy chulas y luego es más fácil de usar de lo que parece ;) El vie, 17-12-2004 a las 16:46 +0100, Jose escribió: > ¿Puedes comentarnos qué tal es tu valoración de ICE? > > El vie, 17-12-2004 a las 16:21, Miguel Angel Garcia escribió: > > Siempre puedes utilizar arquitecturas de red que soporten multilenguaje. > > Yo he trabajado con CORBA[1] y con ICE[2]. .NET también es una buena > > posibilidad. ICE se creó para hacer un videojuego de rol (qué > > casualidad, ¿eh?). > > > > [1] http://www.omg.org/gettingstarted/corbafaq.htm > > [2] http://www.zeroc.com > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: Esta parte del mensaje está firmada digitalmente URL: ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From soulkiller en teleline.es Fri Dec 17 19:39:21 2004 From: soulkiller en teleline.es (soul) Date: Fri, 17 Dec 2004 19:39:21 +0100 Subject: Buscando consejo sobre desarrollo de aplicacion cliente-servidor In-Reply-To: <1103301815.5770.13.camel@localhost> References: <1103242319.3409.11.camel@Zeus> <41C2F463.7010300@sicem.biz> <1103296882.5770.10.camel@localhost> <1103298381.6075.0.camel@demeter.speriaitc.com> <1103301815.5770.13.camel@localhost> Message-ID: <1103308761.3145.5.camel@Zeus> Gracias a todos por vuestras respuestas, que han sido amplias y claras. Muchas gracias Saludos, Soul Soul ************************************************* ( soulkiller en teleline.es ) ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From nivel-13 en ya.com Sat Dec 18 02:04:27 2004 From: nivel-13 en ya.com (=?ISO-8859-1?Q?Jos=E9_Reina_Le=F3n?=) Date: Sat, 18 Dec 2004 02:04:27 +0100 Subject: Problemas con cadenas Message-ID: <41C3821B.9000208@ya.com> Tengo el siguiente problema: Yo obtengo una cadena de caracteres como resultado de una consulta a una base de datos, y cuando intento imprimirla por pantalla me encuentro en que Python no interpreta los saltos de línea y me muestra \n como cualquier otro caracter sin más. O sea, "Hola, \n mundo" me lo muestra literalmente. Haciendo pruebas es como si hiciese lo siguiente: cadena = "Hola, \nmundo!" cadena = repr(cadena) cadena = str(cadena) pues sorprendentemente para mi, cuando imprimo esto obtengo una sola línea de texto en la que aparece \n. Me gustaría saber el porqué de este comportamiento y su solución para que Python interprete \n como lo que es, un salto de linia. From pabloreysobral en gmail.com Sat Dec 18 02:22:33 2004 From: pabloreysobral en gmail.com (Pablo Rey Sobral) Date: Sat, 18 Dec 2004 02:22:33 +0100 Subject: =?iso-8859-1?q?Modificaci=F3n_de_pyContainer?= Message-ID: <4c01c85a041217172276b9bb66@mail.gmail.com> Hola, He estado dando vueltas con pyContainer y me parece muy interesante, pero me he encontrado con una limitación que me parece salvable y me gustaría que me dierais vuestra opinión sobre la solución y los posibles efectos colaterales. Estoy rehaciendo una aplicación que ya tenía en VB6. En VB6 tenía una serie de variables globales(del tipo subcuentas, productos, etc...) que se cargaban mediante otra variable global de conexión con la base de datos. No quería adoptar esa chapuza en Python Cuando he ido a implementarlo en pyContainer hago algo así, no puedo cargar los datos en el __init__ de la clase debido a que a esas alturas pyContainer no ha "inyectado" las dependencias correspondientes. Por otra parte, con la factoría estandar de pyContainer no puedo pasar argumentos al init, y aunque se los pase, no me sirven de nada debido a que no puedo acceder a la base de datos. He pensado en la siguiente solución: Crear la siguiente factoría: class ArgsFactory (Factory): def getInstance (self, classpath, *args, **kwargs): return utils.getClass(classpath)() Y modificar pyContainer de la siguiente forma: def getInstance (self, id_, *args, **kwargs): ''' Returns an instance of a component. This method performs lazy instantiation - only components required for this component to be initialized properly are instantinated. @type id_: String @param id_: same thing as the 'id' attribute in the XML config file. @rtype: user-specified @return: an object of a class specified in config ''' if self.classes.has_key(id_): if self.descriptions[id_].type_ == _Component.PROTOTYPE: if not self.instances.has_key(id_): self.instances[id_] = _Instance() instance = self.factories[self.descriptions[id_].factoryId].getInstance(self.classes[id_], *args, **kwargs) if self.descriptions[id_].interceptors: instance = _Invocation(self, id_, instance) # Wrap the instance self.instances[id_].private.append(instance) self.__updateInstanceProperties(id_) if hasattr(instance, '__init2__'): # SEGUNDO INIT PARA TENER LAS DEPENDENCIAS CARGADAS instance.__init2__ (args, kwargs) return instance else: if not self.instances.has_key(id_): self.instances[id_] = _Instance() instance = self.factories[self.descriptions[id_].factoryId].getInstance(self.classes[id_], *args, **kwargs) # !!! if self.descriptions[id_].interceptors: instance = _Invocation(self, id_, instance) # Wrap the instance self.instances[id_].singleton = instance self.__updateInstanceProperties(id_) if hasattr(instance, '__init2__'): # SEGUNDO INIT PARA TENER LAS DEPENDENCIAS CARGADAS instance.__init2__ (args, kwargs) return instance else: return self.instances[id_].singleton elif self.parent: return self.parent.getInstance(id_, *args, **kwargs) else: return None # raise an exception? Es decir al instanciar el componente por primera vez llamar a __init2__ pasándole los argumentos correspondientes para que pueda usar las dependencias inyectadas. Sería util en los casos que he comentado como un componente que tiene que acceder a otro componente al iniciarse y en el caso de que queramos pasarle argumentos al init, por ejemplo: Para tener una venta en blanco : x = pycontainer.getInstance("venta") Para tener una venta desde la base de datos: x = pycontainer.getInstance("venta", id="VENTA5889587") ¿Qué os parece la solución? ¿Habeis tenido algún problema similar? ¿Cómo lo habeis solucionado? Un saludo. From gaba en riseup.net Sat Dec 18 02:58:23 2004 From: gaba en riseup.net (gaba) Date: Fri, 17 Dec 2004 17:58:23 -0800 Subject: =?ISO-8859-1?Q?V=EDdeo_sobre_Python_y_de?= =?ISO-8859-1?Q?sarrollo_de_aplicaciones_web?= In-Reply-To: <200412171201.40792.py@ch3m4.org> References: <41C21183.50109@lilit.be> <200412171201.40792.py@ch3m4.org> Message-ID: <41C38EBF.50108@riseup.net> En base a este video intente utilizar cherrpy (lo instale desde el apt-get en debian) pero siguiendo las instrucciondes del tutorial en cherrypy.org no encuentro ningun cherrypy.py que sirva para probar ninguna demo ni continuar en la creacion de un sitio web con cherrypy. Tengo la version 0.10 de CherryPy. Hay algun lugar actualizado sobre esta version? Chema Cortés wrote: > El Jueves, 16 de Diciembre de 2004 23:51, Yves Philippart de Foy escribió: > >>>Ahora esa charla se puede descargar porque la grabaron en vídeo (eso >>>si, son 225 Mb de nada). >>>La charla: >>>http://pulsar.unizar.es/~bencer/partyzipa/2004/conferencias/python.mkv >>>Más charlas de la feria: >>>http://pulsar.unizar.es/~bencer/partyzipa/ >> >>Me interesa mucho esa charla, he empezado a mirarla pero a partir del >>HolaMundo.cpy se hace muy dificil ver lo que pone en la pantalla, >>alguien sabe si se pueden bajar las presentaciones? En el sitio de >>partizip@ por lo menos no encontré nada. > > > El problema es que no es una presentación normal. Toda la presentación es, en > sí misma, un demostración de una web hecha en CherryPy y requiere tener > instalados algunos módulos de python para que funcionen algunas secciones > (PIL, MySQLdb, etc). > > En realidad es una aplicación más general para hacer presentaciones llamada > "pyshow" que me hize en una tarde y que no volví a revisar. No tiene > documentación, pero es muy simple de usar y entender. Quería traducirla al > inglés y añadir alguna documentación; pero con la recreación de CherryPy a la > versión 2 quedó algo obsoleto. > > > Resumiendo, podéis bajar la presentación desde aquí: > > http://ch3m4.org/pystore/pyshow-0.4.1.tar.bz2 > > > Está creado con cherrypy-0.10, aunque sólo se necesita si se quiere recompilar > el fuente. Se ejecuta desde dentro de la carpeta con 'python pyShowServer.py' > y se visualiza en un navegador en la dirección 'http://localhost:8888'. La > presentación utiliza el fichero 'cherrypy.psw' cuya estructura es bastante > sencilla de entender. Los ejemplos se deben ir ejecutando a parte. > > > > ------------------------------------------------------------------------ > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es From gaba en riseup.net Sat Dec 18 03:01:06 2004 From: gaba en riseup.net (gaba) Date: Fri, 17 Dec 2004 18:01:06 -0800 Subject: =?ISO-8859-1?Q?V=EDdeo_sobre_Python_y_de?= =?ISO-8859-1?Q?sarrollo_de_aplicaciones_web?= In-Reply-To: <41C38EBF.50108@riseup.net> References: <41C21183.50109@lilit.be> <200412171201.40792.py@ch3m4.org> <41C38EBF.50108@riseup.net> Message-ID: <41C38F62.2090503@riseup.net> Disculpen este mail. Ya lo solucione 5 segundos despues que envie el mail. Tengo un comando cherrypy y mas o menos con el tutorial pude llegar a ver la demo. gaba wrote: > En base a este video intente utilizar cherrpy (lo instale desde el > apt-get en debian) pero siguiendo las instrucciondes del tutorial en > cherrypy.org no encuentro ningun cherrypy.py que sirva para probar > ninguna demo ni continuar en la creacion de un sitio web con cherrypy. > Tengo la version 0.10 de CherryPy. Hay algun lugar actualizado sobre > esta version? > > Chema Cortés wrote: > >> El Jueves, 16 de Diciembre de 2004 23:51, Yves Philippart de Foy >> escribió: >> >>>> Ahora esa charla se puede descargar porque la grabaron en vídeo (eso >>>> si, son 225 Mb de nada). >>>> La charla: >>>> http://pulsar.unizar.es/~bencer/partyzipa/2004/conferencias/python.mkv >>>> Más charlas de la feria: >>>> http://pulsar.unizar.es/~bencer/partyzipa/ >>> >>> >>> Me interesa mucho esa charla, he empezado a mirarla pero a partir del >>> HolaMundo.cpy se hace muy dificil ver lo que pone en la pantalla, >>> alguien sabe si se pueden bajar las presentaciones? En el sitio de >>> partizip@ por lo menos no encontré nada. >> >> >> >> El problema es que no es una presentación normal. Toda la presentación >> es, en sí misma, un demostración de una web hecha en CherryPy y >> requiere tener instalados algunos módulos de python para que funcionen >> algunas secciones (PIL, MySQLdb, etc). >> >> En realidad es una aplicación más general para hacer presentaciones >> llamada "pyshow" que me hize en una tarde y que no volví a revisar. No >> tiene documentación, pero es muy simple de usar y entender. Quería >> traducirla al inglés y añadir alguna documentación; pero con la >> recreación de CherryPy a la versión 2 quedó algo obsoleto. >> >> >> Resumiendo, podéis bajar la presentación desde aquí: >> >> http://ch3m4.org/pystore/pyshow-0.4.1.tar.bz2 >> >> >> Está creado con cherrypy-0.10, aunque sólo se necesita si se quiere >> recompilar el fuente. Se ejecuta desde dentro de la carpeta con >> 'python pyShowServer.py' y se visualiza en un navegador en la >> dirección 'http://localhost:8888'. La presentación utiliza el fichero >> 'cherrypy.psw' cuya estructura es bastante sencilla de entender. Los >> ejemplos se deben ir ejecutando a parte. >> >> >> >> ------------------------------------------------------------------------ >> >> _______________________________________________ >> 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 "juan:_carbajal_paxi" en yahoo.es Fri Dec 17 15:54:10 2004 From: "juan:_carbajal_paxi" en yahoo.es (Juan Carbajal) Date: Fri, 17 Dec 2004 09:54:10 -0500 Subject: Bases en Memoria References: Message-ID: <00fe01c4e448$456d8480$9201a8c0@pc75> #¿Sí o sí tienes que guardar los datos en SQLite? Bueno. Facundo, no es necesario q use SQLite, pero la uso por ser rapida y ser facil de transportar. Pero no es necesario. #¿Pero Visual FoxPro guarda los datos en SQLite? Si no, creo que no puedes #comparar las dos cosas. Por lo que si bajar los datos a SQLite es #mandatorio, VFP aunque rápido no te sirve. Si no es mandatorio, podemos #intentar otra cosa en Python. Ahora sobre la comparación con VFP, es mas que todo para hacer ver como lo trabaja Visual FoxPro, lo pone en memoria con la misma estructura que lo pone en modo fisico. Por tanto es mas facil pasarlo de memoria a Fisico, con bastante rapidez.Bueno con la idea de q "VFP aunque mas rápido no te sirve"; yo pienso que no es malo, solo es mal Usado. Pero no toda la vida uno se la va ha pasar en Windows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Gracias. From rapto en arrakis.es Sat Dec 18 10:57:00 2004 From: rapto en arrakis.es (Marcos =?ISO-8859-1?Q?S=E1nchez?= Provencio) Date: Sat, 18 Dec 2004 10:57:00 +0100 Subject: Problemas con cadenas In-Reply-To: <41C3821B.9000208@ya.com> References: <41C3821B.9000208@ya.com> Message-ID: <1103363820.4131.5.camel@localhost.localdomain> Es que igual en la bd lo que hay es un carácter \ y otro n. Si lo que quieres es sustituir esta secuencia por un salto de línea, tendrás que hacer algo como s=s.replace(r'\n', '\n') Como decía Santiago Segura en 'El día de la bestia' al hablar de Heavy y Death Metal, 'no es lo mismo'. El sáb, 18-12-2004 a las 02:04 +0100, José Reina León escribió: > Tengo el siguiente problema: Yo obtengo una cadena de caracteres como > resultado de una consulta a una base de datos, y cuando intento > imprimirla por pantalla me encuentro en que Python no interpreta los > saltos de línea y me muestra \n como cualquier otro caracter sin más. O > sea, "Hola, \n mundo" me lo muestra literalmente. Haciendo pruebas es > como si hiciese lo siguiente: > > cadena = "Hola, \nmundo!" > cadena = repr(cadena) > cadena = str(cadena) > > pues sorprendentemente para mi, cuando imprimo esto obtengo una sola > línea de texto en la que aparece \n. Me gustaría saber el porqué de este > comportamiento y su solución para que Python interprete \n como lo que > es, un salto de linia. > _______________________________________________ > 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 faltet en carabos.com Sat Dec 18 12:08:58 2004 From: faltet en carabos.com (Francesc Altet) Date: Sat, 18 Dec 2004 12:08:58 +0100 Subject: Bases en Memoria In-Reply-To: <00fe01c4e448$456d8480$9201a8c0@pc75> References: <00fe01c4e448$456d8480$9201a8c0@pc75> Message-ID: <200412181208.58929.faltet@carabos.com> A Divendres 17 Desembre 2004 15:54, Juan Carbajal va escriure: > #¿Sí o sí tienes que guardar los datos en SQLite? > > Bueno. Facundo, no es necesario q use SQLite, pero la uso por ser rapida y > ser facil de transportar. Pero no es necesario. Pues si no es necesario y tus datos son básicamente tablas con pocas relaciones entre ellas, puedes echar un vistazo a PyTables (www.pytables.org) que está pensada para trabajar con grandes cantidades de datos. PyTables puede crear tablas completas en memoria, guardarlas en disco y despues leerlas fila a fila (o de golpe, como te interese). Es muy rápida, sobretodo para hacer inserciones (mira http://pytables.sourceforge.net/doc/SciPy04.pdf) y además soporta búsquedas indexadas. También soporta compresion transparente de los datos y las bases de datos se consolidan en un único fichero por lo que son ideales para trajinar con ellas de un sitio a otro. El rango de tipos de datos que soporta va desde cadenas de texto (de longitud fija o variable y con codificación ASCII o UNICODE), enteros en 8,16,32 y 64 bits, números reales de 32 y 64 bits y ahora mismo estamos trabajando en implentar fechas de manera nativa (aunque usando los floats de 64 bits que genera time.time() las puedes manejar perfectamente), del que ya tenemos un soporte parcial en el CVS. Como siempre voy buscando cosas para hacer comparaciones y como parece que tus tablas son realmente grandes, te podria ayudar haciendo un script para tratar tus datos y que vieras si es competitivo o no con VFP. -- Francesc Altet   >qo<   http://www.carabos.com/ Cárabos Coop. V.   V  V   Enjoy Data                     "" From fvillarroel en yahoo.com Sat Dec 18 14:29:43 2004 From: fvillarroel en yahoo.com (FERNANDO VILLARROEL) Date: Sat, 18 Dec 2004 05:29:43 -0800 (PST) Subject: Archivos *.pyc Message-ID: <20041218132943.91482.qmail@web41214.mail.yahoo.com> Hola mi pregunta es la siguiente, haber estoy desarrollando una aplicacion con wxPython, para ello uso wxGlade, hasta el minuto todo bien, finalmente esta aplicacion debo instalarla en estaciones con windows, pero no me gustaria instalar los paquetes fuentes para que algun inescrupuloso me robe el codigo. Que puedo hacer, he visto que al probar mis modulos se generan los respectivos modulos con extension *.pyc, los que por lo que he leido contienen una version compilada del fuente *.py. Es posible instalar solo los archivos *.pyc o debo seguir otro camino. Que me recomiendan a la hora de instalar alguna version de mi codigo donde el cliente. No quiero comprometer mis fuentes. Ojala se entienda y me puedan aconsejar. Fernando Villarroel N. __________________________________ Do you Yahoo!? Send a seasonal email greeting and help others. Do good. http://celebrity.mail.yahoo.com ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From ftricas en gmail.com Sat Dec 18 16:50:21 2004 From: ftricas en gmail.com (=?ISO-8859-1?Q?Fernando_Tricas_Garc=EDa?=) Date: Sat, 18 Dec 2004 16:50:21 +0100 Subject: umeet 2004. Hoy Python. In-Reply-To: References: Message-ID: Hola, os redirijo esto porque hoy tenemos una charla que tal vez pueda interesar a alguno de vosotros. "18 GMT. Jose Nazario. Ann Arbor. USA. "Sniffing network traffic in python"" Los detalles de como conectarse a la red y 'asistir' están en el resto del mensaje. Perdón si os ha llegado mas veces. ---------- Forwarded message ---------- From: Fernando Tricas Date: Sat, 18 Dec 2004 15:41:06 +0100 (CET) Subject: [Umeet2004] 2004-12-18 To: umeet2004 en listas.uninet.edu Hola/hello, (English version below) Hoy hay prevista dos conferencias: 18 GMT. Jose Nazario. Ann Arbor. USA. "Sniffing network traffic in python" 21 GMT. Alejandro Sánchez Acosta. Spain. Freedesktop: integración entre escritorios. En la dirección http://umeet.uninet.edu/umeet2004/spanish/prog.html está el programa completo. También desde allí se pueden ver las 'grabaciones' de las conferencias que ya ha tenido lugar (algunas de ellas traducidas por nuestro equipo de voluntarios. Pueden ver sus nombres en http://umeet.uninet.edu/umeet2004/spanish/trans.html). Todas las actividades tienen lugar en el canal #linux de la red de IRC de UniNet, a la que se puede entrar por el servidor irc.uninet.edu, con cualquier cliente de IRC o, vía web, en http://irc.fr.uninet.edu o en http://webchat.uninet.edu --------- Talks for today: 18 GMT. Jose Nazario. Ann Arbor. USA. "Sniffing network traffic in python" 21 GMT. Alejandro Sánchez Acosta. Spain. Freedesktop: integración entre escritorios. At http://umeet.uninet.edu/umeet2004/english/prog.html you can check the program for this conference. There you can access too to past talks, that have been logged (some of them have been translated by our translators team. Check their names at http://umeet.uninet.edu/umeet2004/english/trans.html English and Spanish, by now) All the activities will take place in #linux channel of the UniNet IRC network. You can access there using irc.uninet.edu server or via web-chat at: http://irc.fr.uninet.edu http://webchat.uninet.edu Saludos/Best regards, -- Organizing Comittee _______________________________________________ Umeet2004 mailing list Umeet2004 en listas.uninet.edu http://listas.uninet.edu/mailman/listinfo/umeet2004 -- Fernando Tricas From horaciod en gmail.com Sun Dec 19 00:02:27 2004 From: horaciod en gmail.com (Horacio Degiorgi) Date: Sat, 18 Dec 2004 20:02:27 -0300 Subject: pygtk en win32 Message-ID: hola a todos he instalado gtk-win32-devel-2.4-rc24.exe en windows XP y pygtk pero no logro ejecutar ni siquiera el ejemplo más básico. El error que me da es "no se encuentra el punto de entrada del procedimiento g_bsearch_array_destroy en la biblioteca de vinculos dinámicos libglib-2.0.0.dll. Lo más trágico que tampoco funciona el ejemplo helloworld.exe de la pagina de pygtk para win32. si no está en el mismo directorio de la librería. Es sin dudas algun problema con los paths de las librerías pero no logro dar con la solucion existe algo de documentacion o a alguien le ha pasado algo similar ? saludos -- Horacio Degiorgi http://blog.codigophp.com04 From DrBobus en gulic.org Sun Dec 19 11:32:45 2004 From: DrBobus en gulic.org (Dr Bobus) Date: Sun, 19 Dec 2004 10:32:45 +0000 Subject: Archivos *.pyc In-Reply-To: <20041218132943.91482.qmail@web41214.mail.yahoo.com> References: <20041218132943.91482.qmail@web41214.mail.yahoo.com> Message-ID: <20041219103245.50f8f72d@casiopea.mariaonline.org> El Sat, 18 Dec 2004 05:29:43 -0800 (PST) FERNANDO VILLARROEL dijo: > esta aplicacion debo instalarla en estaciones con > windows, pero no me gustaria instalar los paquetes > fuentes para que algun inescrupuloso me robe el el uso de .pyc sólo dificulta, no grantiza la ingienería inversa (por lo menos eso es lo que tengo entendido, no me he metido con ello nunca) Lo que si puedes ahorrarte es tener que instalar la distribución entera de python en cada uno de los equipos donde quieras que tu programa funcione. Yo te recomiendo que mires http://starship.python.net/crew/theller/py2exe/ Que permite distribuir programas de forma fácil y sencilla y ahorrándote de tener que instalar todo python en cada una de las estaciones. Tiene el inconveniente de que sólo puedes crear distribuciones de tus programas desde windows y para windows, pero quizá sirva para lo que te propones. Saludos Dr. Bobus ------------ 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 rapto en arrakis.es Sun Dec 19 12:10:05 2004 From: rapto en arrakis.es (Marcos =?ISO-8859-1?Q?S=E1nchez?= Provencio) Date: Sun, 19 Dec 2004 12:10:05 +0100 Subject: pygtk en win32 In-Reply-To: References: Message-ID: <1103454605.4013.8.camel@localhost.localdomain> Normalmente se debe a versiones antiguas de las dll en el PATH. Verifica el valor del PATH de windows; te puede ayudar una herramienta llamada dependency walker: http://www.dependencywalker.com/ O, simplemente, busca en todos los discos locales ficheros llamados libglib-2.0.0.dll y quedate con el más bonito (y todos los asociados). El sáb, 18-12-2004 a las 20:02 -0300, Horacio Degiorgi escribió: > hola a todos > he instalado gtk-win32-devel-2.4-rc24.exe en windows XP y pygtk pero > no logro ejecutar ni siquiera el ejemplo más básico. > El error que me da es "no se encuentra el punto de entrada del > procedimiento g_bsearch_array_destroy en la biblioteca de vinculos > dinámicos libglib-2.0.0.dll. > > Lo más trágico que tampoco funciona el ejemplo helloworld.exe de la > pagina de pygtk para win32. si no está en el mismo directorio de la > librería. > Es sin dudas algun problema con los paths de las librerías pero no > logro dar con la solucion existe algo de documentacion o a alguien le > ha pasado algo similar ? > > saludos > ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From horaciod en gmail.com Sun Dec 19 15:35:59 2004 From: horaciod en gmail.com (Horacio Degiorgi) Date: Sun, 19 Dec 2004 11:35:59 -0300 Subject: pygtk en win32 In-Reply-To: <1103454605.4013.8.camel@localhost.localdomain> References: <1103454605.4013.8.camel@localhost.localdomain> Message-ID: muchas gracias ya habia buscado los archivos libglib y borrado y movido todos a un zip para evitar problemas pero el problema seguía despues se me ocurrio buscar todos las otras posibles librerías, libobj , libxml , zlib etc etc etc etc borré todas de los directorios system32 y el PROBLEMA SE SOLUCIONÓ. Puede que la librería libglib llame a otra librería donde se producía el problema . Puede que alguna de estas librería la haya instalado un glade viejo que tenía instalado. gracias por la respuesta saludos Horaciod On Sun, 19 Dec 2004 12:10:05 +0100, Marcos Sánchez Provencio wrote: > Normalmente se debe a versiones antiguas de las dll en el PATH. Verifica > el valor del PATH de windows; te puede ayudar una herramienta llamada > dependency walker: > > http://www.dependencywalker.com/ > > O, simplemente, busca en todos los discos locales ficheros llamados > libglib-2.0.0.dll y quedate con el más bonito (y todos los asociados). > > El sáb, 18-12-2004 a las 20:02 -0300, Horacio Degiorgi escribió: > > hola a todos > > he instalado gtk-win32-devel-2.4-rc24.exe en windows XP y pygtk pero > > no logro ejecutar ni siquiera el ejemplo más básico. > > El error que me da es "no se encuentra el punto de entrada del > > procedimiento g_bsearch_array_destroy en la biblioteca de vinculos > > dinámicos libglib-2.0.0.dll. > > > > Lo más trágico que tampoco funciona el ejemplo helloworld.exe de la > > pagina de pygtk para win32. si no está en el mismo directorio de la > > librería. > > Es sin dudas algun problema con los paths de las librerías pero no > > logro dar con la solucion existe algo de documentacion o a alguien le > > ha pasado algo similar ? > > > > saludos > > > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > > > -- Horacio Degiorgi http://blog.codigophp.com From mgutierrez en gmail.com Mon Dec 20 11:17:18 2004 From: mgutierrez en gmail.com (=?ISO-8859-1?Q?Miguel_Guti=E9rrez?=) Date: Mon, 20 Dec 2004 11:17:18 +0100 Subject: Hola a todos Message-ID: <3de6427b0412200217c90a802@mail.gmail.com> Bueno lo primero quisiera presentarme. Soy un miembro nuevo de la lista y acabo de empezar en el mundillo Python, así que soy novatillo. Tratadme bien :-) Estoy buscando algún GUI Builder para python. He visto el Glade, pero no es exactamente lo q busco. Lo que quiero es como el boa-constructor pero para gtk, no para wxwindow. Lo que me disgusta del Glade es q no puedes editar el fuente al mismo tiempo que diseñas las ventanas, botonoes y esas cosas; algo que sí hace el boa-constructor. Existe algo así para gtk? Gracias y un saludo From pabloreysobral en gmail.com Mon Dec 20 11:57:40 2004 From: pabloreysobral en gmail.com (Pablo Rey Sobral) Date: Mon, 20 Dec 2004 11:57:40 +0100 Subject: Hola a todos In-Reply-To: <3de6427b0412200217c90a802@mail.gmail.com> References: <3de6427b0412200217c90a802@mail.gmail.com> Message-ID: <4c01c85a04122002572c435474@mail.gmail.com> Hola, Para gtk no conozco nada que haga eso ya que el glade está muy estandarizado. De todas maneras, yo he probado boa y glade y me parece más interesante el enfoque de glade, ya que el código despues te queda muy limpio, y no tienes un montón de código de creación de la ventana estorbando por ahí. Al principio también lo veía con buenos ojos el sistema de boa, pero creo que la solución de glade es más "elegante". Hay algún paquete que te puede ayudar a reconocer automáticamente los eventos sin tener que conectarlos tu explicitamente, como pygtkmvc, aunque me imagino que habrá alguno más. Un saludo. On Mon, 20 Dec 2004 11:17:18 +0100, Miguel Gutiérrez wrote: > Bueno lo primero quisiera presentarme. Soy un miembro nuevo de la > lista y acabo de empezar en el mundillo Python, así que soy > novatillo. Tratadme bien :-) > > Estoy buscando algún GUI Builder para python. He visto el Glade, pero > no es exactamente lo q busco. Lo que quiero es como el boa-constructor > pero para gtk, no para wxwindow. Lo que me disgusta del Glade es q no > puedes editar el fuente al mismo tiempo que diseñas las ventanas, > botonoes y esas cosas; algo que sí hace el boa-constructor. Existe > algo así para gtk? > > Gracias y un saludo > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From mgutierrez en gmail.com Mon Dec 20 12:19:32 2004 From: mgutierrez en gmail.com (=?ISO-8859-1?Q?Miguel_Guti=E9rrez?=) Date: Mon, 20 Dec 2004 12:19:32 +0100 Subject: Hola a todos In-Reply-To: <4c01c85a04122002572c435474@mail.gmail.com> References: <3de6427b0412200217c90a802@mail.gmail.com> <4c01c85a04122002572c435474@mail.gmail.com> Message-ID: <3de6427b04122003193c4291cf@mail.gmail.com> que usarías tú para programar, ¿glade y eric3 por ejemplo?. ¿cómo funciona pygtkmvc?. es q aún sigo un poco perdido... On Mon, 20 Dec 2004 11:57:40 +0100, Pablo Rey Sobral wrote: > Hola, > > Para gtk no conozco nada que haga eso ya que el glade está muy estandarizado. > > De todas maneras, yo he probado boa y glade y me parece más > interesante el enfoque de glade, ya que el código despues te queda muy > limpio, y no tienes un montón de código de creación de la ventana > estorbando por ahí. > > Al principio también lo veía con buenos ojos el sistema de boa, pero > creo que la solución de glade es más "elegante". > > Hay algún paquete que te puede ayudar a reconocer automáticamente los > eventos sin tener que conectarlos tu explicitamente, como pygtkmvc, > aunque me imagino que habrá alguno más. > > Un saludo. > > On Mon, 20 Dec 2004 11:17:18 +0100, Miguel Gutiérrez > wrote: > > Bueno lo primero quisiera presentarme. Soy un miembro nuevo de la > > lista y acabo de empezar en el mundillo Python, así que soy > > novatillo. Tratadme bien :-) > > > > Estoy buscando algún GUI Builder para python. He visto el Glade, pero > > no es exactamente lo q busco. Lo que quiero es como el boa-constructor > > pero para gtk, no para wxwindow. Lo que me disgusta del Glade es q no > > puedes editar el fuente al mismo tiempo que diseñas las ventanas, > > botonoes y esas cosas; algo que sí hace el boa-constructor. Existe > > algo así para gtk? > > > > Gracias y un saludo > > _______________________________________________ > > 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 pabloreysobral en gmail.com Mon Dec 20 13:41:15 2004 From: pabloreysobral en gmail.com (Pablo Rey Sobral) Date: Mon, 20 Dec 2004 13:41:15 +0100 Subject: Hola a todos In-Reply-To: <3de6427b04122003193c4291cf@mail.gmail.com> References: <3de6427b0412200217c90a802@mail.gmail.com> <4c01c85a04122002572c435474@mail.gmail.com> <3de6427b04122003193c4291cf@mail.gmail.com> Message-ID: <4c01c85a0412200441b381fbf@mail.gmail.com> Yo uso eclipse, que está muy bien, sobre todo por el soporte SVN que es lo que más valoro. Lo único que no me gusta de eclipse es el depurador, lento y sin poder inspección expresiones. SPE también está bien. Aunque no he visto mucho de el tiene una opción pycheck que me parece util. Boa tiene un depurador integrado que a mi me parece muy bueno, que incluso te permite tener un shell integrado durante la depuración. Si usas glade puedes usar cualquier IDE. Tiene un hilo del 25 de octubre llamado inicio en el que se repasan los principales IDEs. Sobre pygtkmvc lee la documentación que es pequeña y bastante descriptiva. Si te gusta la idea te paso algunos enlaces que me pasaron. Un saludo. On Mon, 20 Dec 2004 12:19:32 +0100, Miguel Gutiérrez wrote: > que usarías tú para programar, ¿glade y eric3 por ejemplo?. ¿cómo > funciona pygtkmvc?. es q aún sigo un poco perdido... > > On Mon, 20 Dec 2004 11:57:40 +0100, Pablo Rey Sobral > wrote: > > Hola, > > > > Para gtk no conozco nada que haga eso ya que el glade está muy estandarizado. > > > > De todas maneras, yo he probado boa y glade y me parece más > > interesante el enfoque de glade, ya que el código despues te queda muy > > limpio, y no tienes un montón de código de creación de la ventana > > estorbando por ahí. > > > > Al principio también lo veía con buenos ojos el sistema de boa, pero > > creo que la solución de glade es más "elegante". > > > > Hay algún paquete que te puede ayudar a reconocer automáticamente los > > eventos sin tener que conectarlos tu explicitamente, como pygtkmvc, > > aunque me imagino que habrá alguno más. > > > > Un saludo. > > > > On Mon, 20 Dec 2004 11:17:18 +0100, Miguel Gutiérrez > > wrote: > > > Bueno lo primero quisiera presentarme. Soy un miembro nuevo de la > > > lista y acabo de empezar en el mundillo Python, así que soy > > > novatillo. Tratadme bien :-) > > > > > > Estoy buscando algún GUI Builder para python. He visto el Glade, pero > > > no es exactamente lo q busco. Lo que quiero es como el boa-constructor > > > pero para gtk, no para wxwindow. Lo que me disgusta del Glade es q no > > > puedes editar el fuente al mismo tiempo que diseñas las ventanas, > > > botonoes y esas cosas; algo que sí hace el boa-constructor. Existe > > > algo así para gtk? > > > > > > Gracias y un saludo > > > _______________________________________________ > > > 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 mmn-arquitectos.com Mon Dec 20 13:49:38 2004 From: pachi en mmn-arquitectos.com (Rafael Villar Burke) Date: Mon, 20 Dec 2004 13:49:38 +0100 Subject: Hola a todos In-Reply-To: <3de6427b0412200217c90a802@mail.gmail.com> References: <3de6427b0412200217c90a802@mail.gmail.com> Message-ID: <41C6CA62.3070108@mmn-arquitectos.com> Miguel Gutiérrez wrote: >Bueno lo primero quisiera presentarme. Soy un miembro nuevo de la >lista y acabo de empezar en el mundillo Python, así que soy >novatillo. Tratadme bien :-) > >Estoy buscando algún GUI Builder para python. He visto el Glade, pero >no es exactamente lo q busco. Lo que quiero es como el boa-constructor >pero para gtk, no para wxwindow. Lo que me disgusta del Glade es q no >puedes editar el fuente al mismo tiempo que diseñas las ventanas, >botonoes y esas cosas; algo que sí hace el boa-constructor. Existe >algo así para gtk? > > Tienes un tutorial estupendo en [1] con una clase SimpleGladeApp de la que derivas tu aplicación y se encarga de conectar automáticamente las retrollamadas para eventos a los controles en función del nombre de los métodos y alguna cosilla más. El tutorial creo que está traducido al español también, aunque no sé si Sandino Flores lo ha publicado ya. Es muy interesante también el generador de código (un parche para glade que genera las plantillas de las retrollamadas y de la aplicación a partir del trabajo en glade. Guarda los cambios que se hagan entre sesiones si se desea cambiar algo en el archivo glade, sin que ello suponga eliminar el código que se haya introducido a mano. Este último no lo he usado todavía, pero con una versión preliminar del primero es con la que empecé a meterme con pygtk. Así que la nueva versión estará mejor :). En fin... échale un vistazo, y si tienes dudas o ideas para mejorarlo no dudes en ponerte en contacto con el autor. Es muy atento y simpático. También está muy bien Gazpacho [2], que es un clon de glade-3 en python, aunque está creciendo día a día y ya tiene unas funcionalidades que en muchos casos superan al propio glade. En cuanto haya soporte de libglade para algunas cosillas esta va a ser una aplicación a tener a mano siempre!. [1] http://primates.ximian.com/~sandino/python-glade/index.html [2] http://gruppy.sicem.biz/componentes Un saludo, Pachi From fvillarroel en yahoo.com Mon Dec 20 14:53:00 2004 From: fvillarroel en yahoo.com (FERNANDO VILLARROEL) Date: Mon, 20 Dec 2004 05:53:00 -0800 (PST) Subject: Generar EXE Message-ID: <20041220135300.22755.qmail@web41203.mail.yahoo.com> Hola haber que me recomiendan, estoy generando una aplicacion con wxPython para ello uso wxGlade, esta aplicacion la necesito instalar en estaciones windows y no quiero instalar mis fuentes, para que algun inescrupuloso me robe el codigo, estoy desarrollando en Linux, ahora bien he visto que junto con mis *.py se generan unos *.pyc que corresponden (por lo que he leido) a una version compilada del programa fuente; aca viene mi consulta es posible distribuir estos archivos (*.pyc), tambien me recomendaban usar py2Exe, pero mi problema es el siguiente, existe un formulario principal que valida el loguin password del usuario el que una ves validado importa un frame el que contiene el menu del sistema este a su ves importa los distintos modulos que componen el programa, como a partir del formulario principal se puede generar un EXE que contenga todos los modulos que componen el programa. Espero se entienda Fernando. __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From magmax9 en yahoo.es Mon Dec 20 16:40:37 2004 From: magmax9 en yahoo.es (Miguel Angel Garcia) Date: Mon, 20 Dec 2004 16:40:37 +0100 Subject: Generar EXE In-Reply-To: <20041220135300.22755.qmail@web41203.mail.yahoo.com> References: <20041220135300.22755.qmail@web41203.mail.yahoo.com> Message-ID: <1103557237.13176.18.camel@localhost> ¿Algún inescrupuloso? ¿robar el código? ¿Has oído hablar del Software Libre? ¿Cuánto has pagado por tu Linux? ¿Cuánto por tu python? ¿Cuánto por wxPython y cuánto por wxGlade? ¿crees que han salido del aire? Veo que has leído mucho. ¿Te has leído la licencia de wxPython? Tienes la suerte de que no sea GPL, pero tampoco es LGPL. ¿Piensas cumplir sus términos o vas a ser "inescrupuloso"? Me parece genial que cierres tu código. Estás en tu derecho. Pero de ahí a que llames "inescrupulosos" a gente que "te robe el código" cuando tú te estás aprovechando del código que otros te han cedido generosamente... ¡manda huevos! GPL, tío, GPL. El lun, 20-12-2004 a las 05:53 -0800, FERNANDO VILLARROEL escribió: > Hola haber que me recomiendan, estoy generando una > aplicacion con wxPython para ello uso wxGlade, esta > aplicacion la necesito instalar en estaciones windows > y no quiero instalar mis fuentes, para que algun > inescrupuloso me robe el codigo, estoy desarrollando > en Linux, ahora bien he visto que junto con mis *.py > se generan unos *.pyc que corresponden (por lo que he > leido) a una version compilada del programa fuente; > aca viene mi consulta es posible distribuir estos > archivos (*.pyc), tambien me recomendaban usar py2Exe, > pero mi problema es el siguiente, existe un formulario > principal que valida el loguin password del usuario el > que una ves validado importa un frame el que contiene > el menu del sistema este a su ves importa los > distintos modulos que componen el programa, como a > partir del formulario principal se puede generar un > EXE que contenga todos los modulos que componen el > programa. Espero se entienda > > Fernando. > > __________________________________________________ > Do You Yahoo!? > Tired of spam? Yahoo! Mail has the best spam protection around > http://mail.yahoo.com > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: Esta parte del mensaje está firmada digitalmente URL: ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From csotelop en yahoo.es Mon Dec 20 17:02:45 2004 From: csotelop en yahoo.es (Carlos Eduardo Sotelo Pinto) Date: Mon, 20 Dec 2004 11:02:45 -0500 Subject: Generar EXE In-Reply-To: <20041220135300.22755.qmail@web41203.mail.yahoo.com> References: <20041220135300.22755.qmail@web41203.mail.yahoo.com> Message-ID: <41C6F7A5.9030104@yahoo.es> Hola, hasta ahora se que el que hace eso es py2exe, aun no lo he probado lo estoy investigando. respecto a tu comentario de inescrupulosos, me parece salido de lugar, estamos en foro dodne mucha de esta gente conparte su codigo, no puedo decir todos por que al parecer tu no lo haces, no esta mal que no lo hagas, tu decides que haces con tu codigo pero no creo que ese sea el termino para las personas que quieran usar tu codigo, que si es python olas herramientas que usan , pensaran que tu deseo es compratirlo y no por esto son inescrupulosos, te recomiendo leer un poco acer de la licencia gpl y que es gnu htt://www.gnu.org http://www.gnu.org/philosophy/philosophy.html FERNANDO VILLARROEL wrote: >Hola haber que me recomiendan, estoy generando una >aplicacion con wxPython para ello uso wxGlade, esta >aplicacion la necesito instalar en estaciones windows >y no quiero instalar mis fuentes, para que algun >inescrupuloso me robe el codigo, estoy desarrollando >en Linux, ahora bien he visto que junto con mis *.py >se generan unos *.pyc que corresponden (por lo que he >leido) a una version compilada del programa fuente; >aca viene mi consulta es posible distribuir estos >archivos (*.pyc), tambien me recomendaban usar py2Exe, >pero mi problema es el siguiente, existe un formulario >principal que valida el loguin password del usuario el >que una ves validado importa un frame el que contiene >el menu del sistema este a su ves importa los >distintos modulos que componen el programa, como a >partir del formulario principal se puede generar un >EXE que contenga todos los modulos que componen el >programa. Espero se entienda > >Fernando. > >__________________________________________________ >Do You Yahoo!? >Tired of spam? Yahoo! Mail has the best spam protection around >http://mail.yahoo.com > > >------------------------------------------------------------------------ > >_______________________________________________ >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 aleivag en spymac.com Mon Dec 20 17:06:50 2004 From: aleivag en spymac.com (Alvaro Leiva) Date: Mon, 20 Dec 2004 13:06:50 -0300 Subject: Generar EXE In-Reply-To: <1103557237.13176.18.camel@localhost> References: <20041220135300.22755.qmail@web41203.mail.yahoo.com> <1103557237.13176.18.camel@localhost> Message-ID: <41C6F89A.6070809@spymac.com> Hola: Personalmente etoy de acuerdo con el concepto de GPL, pero hay casos en los cuales no se puede aplicar... yo trabajo en un proyecto de encriptacion donde ocupamos python mayormente... lo que pretendemos es por ejemplo en nuestra universidad, encriptar pruevas y suvirlas al servidor... asi si algun "inescrupuloso" hackea el servidor y se roba la prueva, no va a conoser el contenido... obviamente este tipo de aplicacion NO PUEDE SER DE CODIGO ABIERTO. porque alguien que pueda entrar a un servidor, por lo general no le va a costar entender un par de lines de python. asique estoy de acuerdo con el concepto de GPL y lo apoyo muchas veses. cuando enseño programacion por lo general siepre repito que "el conosimiento es del mundo", "algo que tu haces bien, alguien lo puede mejorar, asique alfinal todos ganan". pero entiendo tambien que hay ciertas aplicaciones que gamas seran de codigo habierto, no por egoimo, sino porque su funcion lo impide... por eso no seas tan duro con el chico, en una de esas el trabaja tambien en un proyecto asi sin animos de ofender ATTE Alvaro Leiva Get Firefox! Miguel Angel Garcia wrote: >¿Algún inescrupuloso? ¿robar el código? ¿Has oído hablar del Software >Libre? > >¿Cuánto has pagado por tu Linux? ¿Cuánto por tu python? ¿Cuánto por >wxPython y cuánto por wxGlade? ¿crees que han salido del aire? > >Veo que has leído mucho. ¿Te has leído la licencia de wxPython? Tienes >la suerte de que no sea GPL, pero tampoco es LGPL. ¿Piensas cumplir sus >términos o vas a ser "inescrupuloso"? > >Me parece genial que cierres tu código. Estás en tu derecho. Pero de ahí >a que llames "inescrupulosos" a gente que "te robe el código" cuando tú >te estás aprovechando del código que otros te han cedido >generosamente... ¡manda huevos! > >GPL, tío, GPL. > > > >El lun, 20-12-2004 a las 05:53 -0800, FERNANDO VILLARROEL escribió: > > >>Hola haber que me recomiendan, estoy generando una >>aplicacion con wxPython para ello uso wxGlade, esta >>aplicacion la necesito instalar en estaciones windows >>y no quiero instalar mis fuentes, para que algun >>inescrupuloso me robe el codigo, estoy desarrollando >>en Linux, ahora bien he visto que junto con mis *.py >>se generan unos *.pyc que corresponden (por lo que he >>leido) a una version compilada del programa fuente; >>aca viene mi consulta es posible distribuir estos >>archivos (*.pyc), tambien me recomendaban usar py2Exe, >>pero mi problema es el siguiente, existe un formulario >>principal que valida el loguin password del usuario el >>que una ves validado importa un frame el que contiene >>el menu del sistema este a su ves importa los >>distintos modulos que componen el programa, como a >>partir del formulario principal se puede generar un >>EXE que contenga todos los modulos que componen el >>programa. Espero se entienda >> >>Fernando. >> >>__________________________________________________ >>Do You Yahoo!? >>Tired of spam? Yahoo! Mail has the best spam protection around >>http://mail.yahoo.com >>_______________________________________________ >>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 mgutierrez en gmail.com Mon Dec 20 17:08:47 2004 From: mgutierrez en gmail.com (=?ISO-8859-1?Q?Miguel_Guti=E9rrez?=) Date: Mon, 20 Dec 2004 17:08:47 +0100 Subject: Hola a todos In-Reply-To: <41C6CA62.3070108@mmn-arquitectos.com> References: <3de6427b0412200217c90a802@mail.gmail.com> <41C6CA62.3070108@mmn-arquitectos.com> Message-ID: <3de6427b04122008085eb650a4@mail.gmail.com> ok muchas gracias chicos. me pondré a investigar a ver q tal. un saludo On Mon, 20 Dec 2004 13:49:38 +0100, Rafael Villar Burke wrote: > Miguel Gutiérrez wrote: > > >Bueno lo primero quisiera presentarme. Soy un miembro nuevo de la > >lista y acabo de empezar en el mundillo Python, así que soy > >novatillo. Tratadme bien :-) > > > >Estoy buscando algún GUI Builder para python. He visto el Glade, pero > >no es exactamente lo q busco. Lo que quiero es como el boa-constructor > >pero para gtk, no para wxwindow. Lo que me disgusta del Glade es q no > >puedes editar el fuente al mismo tiempo que diseñas las ventanas, > >botonoes y esas cosas; algo que sí hace el boa-constructor. Existe > >algo así para gtk? > > > > > Tienes un tutorial estupendo en [1] con una clase SimpleGladeApp de la > que derivas tu aplicación y se encarga de conectar automáticamente las > retrollamadas para eventos a los controles en función del nombre de los > métodos y alguna cosilla más. El tutorial creo que está traducido al > español también, aunque no sé si Sandino Flores lo ha publicado ya. > > Es muy interesante también el generador de código (un parche para glade > que genera las plantillas de las retrollamadas y de la aplicación a > partir del trabajo en glade. Guarda los cambios que se hagan entre > sesiones si se desea cambiar algo en el archivo glade, sin que ello > suponga eliminar el código que se haya introducido a mano. > > Este último no lo he usado todavía, pero con una versión preliminar del > primero es con la que empecé a meterme con pygtk. Así que la nueva > versión estará mejor :). > > En fin... échale un vistazo, y si tienes dudas o ideas para mejorarlo no > dudes en ponerte en contacto con el autor. Es muy atento y simpático. > > También está muy bien Gazpacho [2], que es un clon de glade-3 en python, > aunque está creciendo día a día y ya tiene unas funcionalidades que en > muchos casos superan al propio glade. En cuanto haya soporte de libglade > para algunas cosillas esta va a ser una aplicación a tener a mano siempre!. > > [1] http://primates.ximian.com/~sandino/python-glade/index.html > [2] http://gruppy.sicem.biz/componentes > > Un saludo, > > Pachi > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From hernan en orgmf.com.ar Mon Dec 20 17:28:36 2004 From: hernan en orgmf.com.ar (=?us-ascii?Q?Hernan_Martinez_Foffani?=) Date: Mon, 20 Dec 2004 17:28:36 +0100 Subject: Archivos *.pyc In-Reply-To: <20041218132943.91482.qmail@web41214.mail.yahoo.com> References: <20041218132943.91482.qmail@web41214.mail.yahoo.com> Message-ID: > Hola mi pregunta es la siguiente, haber estoy > desarrollando una aplicacion con wxPython, para ello > uso wxGlade, hasta el minuto todo bien, finalmente > esta aplicacion debo instalarla en estaciones con > windows, pero no me gustaria instalar los paquetes > fuentes para que algun inescrupuloso me robe el > codigo. Que puedo hacer, he visto que al probar mis > modulos se generan los respectivos modulos con > extension *.pyc, los que por lo que he leido contienen > una version compilada del fuente *.py. Es posible > instalar solo los archivos *.pyc o debo seguir otro > camino. Que me recomiendan a la hora de instalar > alguna version de mi codigo donde el cliente. No > quiero comprometer mis fuentes. Podrias crear un archivo zip con los .pyc solamente e insertar en sys.path la ubicacion del zip. En tu programa los import funcionarian normalmente. -H. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From py en ch3m4.org Mon Dec 20 18:10:22 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Mon, 20 Dec 2004 18:10:22 +0100 Subject: Generar EXE In-Reply-To: <41C6F89A.6070809@spymac.com> References: <20041220135300.22755.qmail@web41203.mail.yahoo.com> <1103557237.13176.18.camel@localhost> <41C6F89A.6070809@spymac.com> Message-ID: <200412201810.28137.py@ch3m4.org> El Lunes, 20 de Diciembre de 2004 17:06, Alvaro Leiva escribió: > Hola: > > Personalmente etoy de acuerdo con el concepto de GPL, pero hay casos en > los cuales no se puede aplicar... > > yo trabajo en un proyecto de encriptacion donde ocupamos python > mayormente... lo que pretendemos es por ejemplo en nuestra universidad, > encriptar pruevas y suvirlas al servidor... asi si algun "inescrupuloso" > hackea el servidor y se roba la prueva, no va a conoser el contenido... > obviamente este tipo de aplicacion NO PUEDE SER DE CODIGO ABIERTO. > porque alguien que pueda entrar a un servidor, por lo general no le va a > costar entender un par de lines de python. Creo que aquí se están confundiendo los términos. La GPL es una licencia de distribución. Puedes codificar todos tus fuentes GPL, e incluso enlazarlos con código privativo si quieres. A lo único que estás obligado es a facilitar el código fuente en "claro" a quien le vayas a entregar la copia. Si va a ser para tu uso privado nada te estará obligando a compartir tus fuentes. > asique estoy de acuerdo con el concepto de GPL y lo apoyo muchas veses. > cuando enseño programacion por lo general siepre repito que "el > conosimiento es del mundo", "algo que tu haces bien, alguien lo puede > mejorar, asique alfinal todos ganan". pero entiendo tambien que hay > ciertas aplicaciones que gamas seran de codigo habierto, no por egoimo, > sino porque su funcion lo impide... Aquí no estoy de acuerdo. Siempre es más seguro arreglar cualquier vulnerabilidad que continuar encubriéndolas. Así sólo consigues retrasar el desastre. Podríamos seguir discutiendo largamente sobre si el código abierto es o no seguro, pero desde luego tiene una característica única: estás obligado a hacer bien las cosas. > por eso no seas tan duro con el chico, en una de esas el trabaja tambien > en un proyecto asi > > sin animos de ofender ------------ 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 magmax9 en yahoo.es Mon Dec 20 17:52:44 2004 From: magmax9 en yahoo.es (Miguel Angel Garcia) Date: Mon, 20 Dec 2004 17:52:44 +0100 Subject: Generar EXE In-Reply-To: <41C6F89A.6070809@spymac.com> References: <20041220135300.22755.qmail@web41203.mail.yahoo.com> <1103557237.13176.18.camel@localhost> <41C6F89A.6070809@spymac.com> Message-ID: <1103561565.13176.31.camel@localhost> No soy duro con quien no hace Software Libre, sino con quien utiliza Software Libre y llama "inescrupulosos" a lo que sólo desean aprender. Además, si algún "inescrupuloso" consigue entrar en tu servidor, robar el código, entenderlo y hacer una práctica que permita salvar las pruebas (aunque no haga nada más)... ¿No se merece aprobar? ;P Un "hacker" aprende de la misma manera que este "cracker" ha aprendido al reventar un sistema. Tu código, ya sea en fuente o en binario, sirve tanto a uno como a otro para un mismo fin: aprender (amén de que el cracker suele sacar un beneficio). Insisto en que me parece genial que alguien cierre su código. Lo que me parece fatal es que use SL y se "ría" de compartir el código. El lun, 20-12-2004 a las 13:06 -0300, Alvaro Leiva escribió: > Hola: > > Personalmente etoy de acuerdo con el concepto de GPL, pero hay casos en > los cuales no se puede aplicar... > > yo trabajo en un proyecto de encriptacion donde ocupamos python > mayormente... lo que pretendemos es por ejemplo en nuestra universidad, > encriptar pruevas y suvirlas al servidor... asi si algun "inescrupuloso" > hackea el servidor y se roba la prueva, no va a conoser el contenido... > obviamente este tipo de aplicacion NO PUEDE SER DE CODIGO ABIERTO. > porque alguien que pueda entrar a un servidor, por lo general no le va a > costar entender un par de lines de python. > > asique estoy de acuerdo con el concepto de GPL y lo apoyo muchas veses. > cuando enseño programacion por lo general siepre repito que "el > conosimiento es del mundo", "algo que tu haces bien, alguien lo puede > mejorar, asique alfinal todos ganan". pero entiendo tambien que hay > ciertas aplicaciones que gamas seran de codigo habierto, no por egoimo, > sino porque su funcion lo impide... > > por eso no seas tan duro con el chico, en una de esas el trabaja tambien > en un proyecto asi > > sin animos de ofender > > ATTE > > Alvaro Leiva > Get Firefox! > > > Miguel Angel Garcia wrote: > > >¿Algún inescrupuloso? ¿robar el código? ¿Has oído hablar del Software > >Libre? > > > >¿Cuánto has pagado por tu Linux? ¿Cuánto por tu python? ¿Cuánto por > >wxPython y cuánto por wxGlade? ¿crees que han salido del aire? > > > >Veo que has leído mucho. ¿Te has leído la licencia de wxPython? Tienes > >la suerte de que no sea GPL, pero tampoco es LGPL. ¿Piensas cumplir sus > >términos o vas a ser "inescrupuloso"? > > > >Me parece genial que cierres tu código. Estás en tu derecho. Pero de ahí > >a que llames "inescrupulosos" a gente que "te robe el código" cuando tú > >te estás aprovechando del código que otros te han cedido > >generosamente... ¡manda huevos! > > > >GPL, tío, GPL. > > > > > > > >El lun, 20-12-2004 a las 05:53 -0800, FERNANDO VILLARROEL escribió: > > > > > >>Hola haber que me recomiendan, estoy generando una > >>aplicacion con wxPython para ello uso wxGlade, esta > >>aplicacion la necesito instalar en estaciones windows > >>y no quiero instalar mis fuentes, para que algun > >>inescrupuloso me robe el codigo, estoy desarrollando > >>en Linux, ahora bien he visto que junto con mis *.py > >>se generan unos *.pyc que corresponden (por lo que he > >>leido) a una version compilada del programa fuente; > >>aca viene mi consulta es posible distribuir estos > >>archivos (*.pyc), tambien me recomendaban usar py2Exe, > >>pero mi problema es el siguiente, existe un formulario > >>principal que valida el loguin password del usuario el > >>que una ves validado importa un frame el que contiene > >>el menu del sistema este a su ves importa los > >>distintos modulos que componen el programa, como a > >>partir del formulario principal se puede generar un > >>EXE que contenga todos los modulos que componen el > >>programa. Espero se entienda > >> > >>Fernando. > >> > >>__________________________________________________ > >>Do You Yahoo!? > >>Tired of spam? Yahoo! Mail has the best spam protection around > >>http://mail.yahoo.com > >>_______________________________________________ > >>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 ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: Esta parte del mensaje está firmada digitalmente URL: ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From asanchezm en e-compugraf.com Mon Dec 20 18:33:17 2004 From: asanchezm en e-compugraf.com (Alejandro G. =?ISO-8859-1?Q?S=E1nchez_Mart=EDnez?=) Date: Mon, 20 Dec 2004 11:33:17 -0600 Subject: Generar EXE In-Reply-To: <1103561565.13176.31.camel@localhost> References: <20041220135300.22755.qmail@web41203.mail.yahoo.com> <1103557237.13176.18.camel@localhost> <41C6F89A.6070809@spymac.com> <1103561565.13176.31.camel@localhost> Message-ID: <20041220113317.046c4d8c.asanchezm@e-compugraf.com> No habia leido esto antes. semejante tonteria cerrar algo, disque porque lo pueden ver y eos no e sbuieno , que no esa es la idea, ¿has leido de gpg'. On Mon, 20 Dec 2004 17:52:44 +0100 Miguel Angel Garcia wrote: > No soy duro con quien no hace Software Libre, sino con quien utiliza > Software Libre y llama "inescrupulosos" a lo que sólo desean aprender. > > Además, si algún "inescrupuloso" consigue entrar en tu servidor, robar > el código, entenderlo y hacer una práctica que permita salvar las > pruebas (aunque no haga nada más)... ¿No se merece aprobar? ;P > > Un "hacker" aprende de la misma manera que este "cracker" ha aprendido > al reventar un sistema. Tu código, ya sea en fuente o en binario, sirve > tanto a uno como a otro para un mismo fin: aprender (amén de que el > cracker suele sacar un beneficio). > > Insisto en que me parece genial que alguien cierre su código. Lo que me > parece fatal es que use SL y se "ría" de compartir el código. > > > El lun, 20-12-2004 a las 13:06 -0300, Alvaro Leiva escribió: > > Hola: > > > > Personalmente etoy de acuerdo con el concepto de GPL, pero hay casos en > > los cuales no se puede aplicar... > > > > yo trabajo en un proyecto de encriptacion donde ocupamos python > > mayormente... lo que pretendemos es por ejemplo en nuestra universidad, > > encriptar pruevas y suvirlas al servidor... asi si algun "inescrupuloso" > > hackea el servidor y se roba la prueva, no va a conoser el contenido... > > obviamente este tipo de aplicacion NO PUEDE SER DE CODIGO ABIERTO. > > porque alguien que pueda entrar a un servidor, por lo general no le va a > > costar entender un par de lines de python. > > > > asique estoy de acuerdo con el concepto de GPL y lo apoyo muchas veses. > > cuando enseño programacion por lo general siepre repito que "el > > conosimiento es del mundo", "algo que tu haces bien, alguien lo puede > > mejorar, asique alfinal todos ganan". pero entiendo tambien que hay > > ciertas aplicaciones que gamas seran de codigo habierto, no por egoimo, > > sino porque su funcion lo impide... > > > > por eso no seas tan duro con el chico, en una de esas el trabaja tambien > > en un proyecto asi > > > > sin animos de ofender > > > > ATTE > > > > Alvaro Leiva > > Get Firefox! > > > > > > Miguel Angel Garcia wrote: > > > > >¿Algún inescrupuloso? ¿robar el código? ¿Has oído hablar del Software > > >Libre? > > > > > >¿Cuánto has pagado por tu Linux? ¿Cuánto por tu python? ¿Cuánto por > > >wxPython y cuánto por wxGlade? ¿crees que han salido del aire? > > > > > >Veo que has leído mucho. ¿Te has leído la licencia de wxPython? Tienes > > >la suerte de que no sea GPL, pero tampoco es LGPL. ¿Piensas cumplir sus > > >términos o vas a ser "inescrupuloso"? > > > > > >Me parece genial que cierres tu código. Estás en tu derecho. Pero de ahí > > >a que llames "inescrupulosos" a gente que "te robe el código" cuando tú > > >te estás aprovechando del código que otros te han cedido > > >generosamente... ¡manda huevos! > > > > > >GPL, tío, GPL. > > > > > > > > > > > >El lun, 20-12-2004 a las 05:53 -0800, FERNANDO VILLARROEL escribió: > > > > > > > > >>Hola haber que me recomiendan, estoy generando una > > >>aplicacion con wxPython para ello uso wxGlade, esta > > >>aplicacion la necesito instalar en estaciones windows > > >>y no quiero instalar mis fuentes, para que algun > > >>inescrupuloso me robe el codigo, estoy desarrollando > > >>en Linux, ahora bien he visto que junto con mis *.py > > >>se generan unos *.pyc que corresponden (por lo que he > > >>leido) a una version compilada del programa fuente; > > >>aca viene mi consulta es posible distribuir estos > > >>archivos (*.pyc), tambien me recomendaban usar py2Exe, > > >>pero mi problema es el siguiente, existe un formulario > > >>principal que valida el loguin password del usuario el > > >>que una ves validado importa un frame el que contiene > > >>el menu del sistema este a su ves importa los > > >>distintos modulos que componen el programa, como a > > >>partir del formulario principal se puede generar un > > >>EXE que contenga todos los modulos que componen el > > >>programa. Espero se entienda > > >> > > >>Fernando. > > >> > > >>__________________________________________________ > > >>Do You Yahoo!? > > >>Tired of spam? Yahoo! Mail has the best spam protection around > > >>http://mail.yahoo.com > > >>_______________________________________________ > > >>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 erny en sicem.biz Mon Dec 20 23:23:57 2004 From: erny en sicem.biz (Ernesto Revilla) Date: Mon, 20 Dec 2004 23:23:57 +0100 Subject: Class reloading Message-ID: <41C750FD.7010807@sicem.biz> Hola, Después de echar un vistazo a twisted y ver la módulo de recarga, en twisted.python.rebuild, y haber leído un artículo sobre Ruby en Dr. Dobbs, se me ocurrió una idea que he plasmado en: http://rafb.net/paste/results/U2ItTD38.html Si alguien interesado me puede decir los errores y las pegas que hay en ese fragmento de código, estaría muy agradecido. Un cordial saludo, Erny -- Ernesto Revilla sicem sl Pol. Ind. Juncaril, c/ Loja Parc. 7 Local 13 18220 Albolote http://www.sicem.biz Tel: 958 468773 - 637 716189 MSN: aerd en mx3.redestb.es ICQ: 163888521 --- avast! Antivirus: Saliente mensaje limpio. Base de datos de Virus (VPS): 0451-2, 17/12/2004 Comprobado en: 20/12/2004 23:24:01 avast! tiene los derechos reservados (c) 2000-2004 ALWIL Software. http://www.avast.com From o.merchan en bussitel.es Tue Dec 21 10:25:03 2004 From: o.merchan en bussitel.es (Oscar Merchan) Date: Tue, 21 Dec 2004 10:25:03 +0100 Subject: Detectar el contenido de un diccionario Message-ID: <20041221102503.3499e0b6.o.merchan@bussitel.es> Buenos dias Lista. No se si se puede, pero estoy mirando como conseguir averiguar si dentro de un diccionario tengo otro o no, la idea es que el usuario pueda meterme en un fichero de configuracion una serie de parametros, como por ejemplo ' Formatear --> hda --> ext3 ' esot se veria de la siguiente forma .- diccionario = {'Formatear':{'hda':'ext3'}} Pero aparte de ese contenido en el diccionario pueden haber mas cosas y no todas seran diccionarios anidados dentro del principal, lo que no es, es como averiguar si lo que ahi dentro del diccionario es otro diccionario o no, los indices del diccionario principal los saco con ' keys ' o sea diccionario.keys(), lo que no se es como saber que por ejemplo el indice 1 tiene un diccionario anidado o no. Alguien sabe como hacerlo, o ya lo ha hecho o me puede dar alguna idea. Gracias, Saludos, Oscar Merchan. P.D .- No se si me habre esplicado bien. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From alexis.roda en urv.net Tue Dec 21 10:28:32 2004 From: alexis.roda en urv.net (Alexis Roda) Date: Tue, 21 Dec 2004 10:28:32 +0100 Subject: Detectar el contenido de un diccionario In-Reply-To: <20041221102503.3499e0b6.o.merchan@bussitel.es> References: <20041221102503.3499e0b6.o.merchan@bussitel.es> Message-ID: <41C7ECC0.1020000@urv.net> Oscar Merchan wrote: > > Buenos dias Lista. > > No se si se puede, pero estoy mirando como conseguir averiguar si dentro de un diccionario tengo otro o no, la idea es que el usuario > pueda meterme en un fichero de configuracion una serie de parametros, como por ejemplo ' Formatear --> hda --> ext3 ' esot se veria de > la siguiente forma .- > > diccionario = {'Formatear':{'hda':'ext3'}} > > Pero aparte de ese contenido en el diccionario pueden haber mas cosas y no todas seran diccionarios anidados dentro del principal, lo > que no es, es como averiguar si lo que ahi dentro del diccionario es otro diccionario o no, los indices del diccionario principal los saco > con ' keys ' o sea diccionario.keys(), lo que no se es como saber que por ejemplo el indice 1 tiene un diccionario anidado o no. if isinstance(diccionario['Formatear'], dict) : print "es diccionario" Sl. -- //// (@ @) ----------------------------oOO----(_)----OOo-------------------------- <> Ojo por ojo y el mundo acabara ciego /\ Alexis Roda - Universitat Rovira i Virgili - Reus, Tarragona (Spain) ----------------------------------------------------------------------- ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From hernan en orgmf.com.ar Tue Dec 21 10:41:33 2004 From: hernan en orgmf.com.ar (=?us-ascii?Q?Hernan_Martinez_Foffani?=) Date: Tue, 21 Dec 2004 10:41:33 +0100 Subject: Archivos *.pyc In-Reply-To: <20041220191556.30870.qmail@web41201.mail.yahoo.com> References: <20041220191556.30870.qmail@web41201.mail.yahoo.com> Message-ID: Mejor con un ejemplo. Suponiendo que tienes 3 archivos python, f.py, g.py e i.py donde: --- f.py --- def f(): return "f" --- g.py --- def g(): return "g" --- i.py --- import f import g print f.f() print g.g() ------ Podrias evitar distribuir los fuentes empaquentando solo los .pyc generando un archivo z.zip (con winzip o pkzip o lo que quieras) con f.pyc y g.pyc Luego modificas i.py asi: import sys sys.path.insert(0, "z.zip") # el resto sigue igual import f import g print f.f() print g.g() Asi, solo tendrias que distribuir el archivo python principal (el i.py) y el comprimido (z.zip en nuestro ejemplo.) -H. (mando copia a la lista por si alguien mas le interesa o quiera comentar) > Gracias Hernan, me podrias explicar, haber si te > entendi, creo una carpeta con los *.pyc, lo que no > entiendo es lo del sys.path; como lo hago, el programa > principal o el main sigue siendo el *.py que importara > los modulos pyc, es asi o no? ... si me puedes > explicar te lo agradecere mucho. > > Fernando > --- Hernan Martinez Foffani > wrote: > >>> Hola mi pregunta es la siguiente, haber estoy >>> desarrollando una aplicacion con wxPython, para ello >>> uso wxGlade, hasta el minuto todo bien, finalmente >>> esta aplicacion debo instalarla en estaciones con >>> windows, pero no me gustaria instalar los paquetes >>> fuentes para que algun inescrupuloso me robe el >>> codigo. Que puedo hacer, he visto que al probar mis >>> modulos se generan los respectivos modulos con >>> extension *.pyc, los que por lo que he leido contienen >>> una version compilada del fuente *.py. Es posible >>> instalar solo los archivos *.pyc o debo seguir otro >>> camino. Que me recomiendan a la hora de instalar >>> alguna version de mi codigo donde el cliente. No >>> quiero comprometer mis fuentes. >> >> Podrias crear un archivo zip con los .pyc solamente e >> insertar en sys.path la ubicacion del zip. >> En tu programa los import funcionarian normalmente. >> >> -H. >> >>> _______________________________________________ >> Python-es mailing list >> Python-es en aditel.org >> http://listas.aditel.org/listinfo/python-es >> > > > > > __________________________________ > Do you Yahoo!? > Jazz up your holiday email with celebrity designs. Learn more. > http://celebrity.mail.yahoo.com ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From py en ch3m4.org Tue Dec 21 12:04:59 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Tue, 21 Dec 2004 12:04:59 +0100 Subject: Class reloading In-Reply-To: <41C750FD.7010807@sicem.biz> References: <41C750FD.7010807@sicem.biz> Message-ID: <200412211205.02404.py@ch3m4.org> El Lunes, 20 de Diciembre de 2004 23:23, Ernesto Revilla escribió: > Hola, > > Después de echar un vistazo a twisted y ver la módulo de recarga, en > twisted.python.rebuild, y haber leído un artículo sobre Ruby en Dr. > Dobbs, se me ocurrió una idea que he plasmado en: > http://rafb.net/paste/results/U2ItTD38.html > > Si alguien interesado me puede decir los errores y las pegas que hay en > ese fragmento de código, estaría muy agradecido. He estado mirando por encima el código y debería funcionar para casos simples (la mayoría de los casos). Pero creo daría problemas para casos más complejos como clases definidas localmente dentro de otra, para clases sin diccionarios (con "slots") o para paquetes distribuídos. Posiblemente hiciera falta algún tipo de recursividad en la recarga", ésto es, que tuviera en cuenta que un atributo de una clase pudiera ser otra clase. A parte de esto, cuando compruebas si es una cadena de caracteres: if isinstance(module,str): fallaría si la cadena está en unicode. Sería conveniente comprobar también si es 'unicode' o, mejor aún, utilizar el 'basestring' como superclase de ambos tipos: if isinstance(module,basestring): ------------ 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 o.merchan en bussitel.es Tue Dec 21 12:33:49 2004 From: o.merchan en bussitel.es (Oscar Merchan) Date: Tue, 21 Dec 2004 12:33:49 +0100 Subject: Detectar el contenido de un diccionario In-Reply-To: <41C7ECC0.1020000@urv.net> References: <20041221102503.3499e0b6.o.merchan@bussitel.es> <41C7ECC0.1020000@urv.net> Message-ID: <20041221123349.731ce47f.o.merchan@bussitel.es> On Tue, 21 Dec 2004 10:28:32 +0100 Alexis Roda wrote: > > if isinstance(diccionario['Formatear'], dict) : > print "es diccionario" > > > Muchas gracias Alexis, va de maravilla. Saludos, Oscar Merchan. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From lcatalin en siadv.com Tue Dec 21 12:36:48 2004 From: lcatalin en siadv.com (Catalin Lungu) Date: Tue, 21 Dec 2004 12:36:48 +0100 Subject: isinstance Message-ID: <000601c4e751$5b981fc0$d900a8c0@catalin> Hola, Me podrían decir cual es la diferencia entre: d={} if type(d) == dict: return "diccionario" y if isinstance(d, dict): return "diccionario" Gracias. C.L. From erny en sicem.biz Tue Dec 21 12:28:19 2004 From: erny en sicem.biz (Ernesto Revilla) Date: Tue, 21 Dec 2004 12:28:19 +0100 Subject: Class reloading In-Reply-To: <200412211205.02404.py@ch3m4.org> References: <41C750FD.7010807@sicem.biz> <200412211205.02404.py@ch3m4.org> Message-ID: <41C808D3.2040505@sicem.biz> Hola Chema, Chema Cortés escribió: >El Lunes, 20 de Diciembre de 2004 23:23, Ernesto Revilla escribió: > > >>Hola, >> >>Después de echar un vistazo a twisted y ver la módulo de recarga, en >>twisted.python.rebuild, y haber leído un artículo sobre Ruby en Dr. >>Dobbs, se me ocurrió una idea que he plasmado en: >>http://rafb.net/paste/results/U2ItTD38.html >> >>Si alguien interesado me puede decir los errores y las pegas que hay en >>ese fragmento de código, estaría muy agradecido. >> >> > >He estado mirando por encima el código y debería funcionar para casos simples >(la mayoría de los casos). Pero creo daría problemas para casos más complejos >como clases definidas localmente dentro de otra, para clases sin diccionarios >(con "slots") o para paquetes distribuídos. Posiblemente hiciera falta algún >tipo de recursividad en la recarga", ésto es, que tuviera en cuenta que un >atributo de una clase pudiera ser otra clase. > > > Sí, lo de clase dentro de otra sí es verdad. Lo pensé. Pero pensé que suelen ser clases muy temporales cuyas instancias normalmente mueren después de un corto uso. Pero me puedo equivocar. Pero, quizá, como tú dices, puede resolverse haciendo parte del procedimiento recursivo. Respecto a los slots, tengo que comprobarlo. Suponía que las instancias de esas clases tiene los slots, no la clase en sí. Lo de los paquetes distribuidos no sé muy bien a qué te refieres. Respecto al unicode, había pensado poco probable especificar el nombre de los paquetes en unicode. No sé si Python admite eso. Pero al final, da igual, porque eso se corrige muy fácilmente con tu solución. Gracias. Erny >A parte de esto, cuando compruebas si es una cadena de caracteres: > > if isinstance(module,str): > >fallaría si la cadena está en unicode. Sería conveniente comprobar también si >es 'unicode' o, mejor aún, utilizar el 'basestring' como superclase de ambos >tipos: > > > if isinstance(module,basestring): > > > >------------------------------------------------------------------------ > >_______________________________________________ >Python-es mailing list >Python-es en aditel.org >http://listas.aditel.org/listinfo/python-es > > -- Ernesto Revilla sicem sl Pol. Ind. Juncaril, c/ Loja Parc. 7 Local 13 18220 Albolote http://www.sicem.biz Tel: 637 716189 MSN: aerd en mx3.redestb.es ICQ: 163888521 --- avast! Antivirus: Saliente mensaje limpio. Base de datos de Virus (VPS): 0451-2, 17/12/2004 Comprobado en: 21/12/2004 12:28:24 avast! tiene los derechos reservados (c) 2000-2004 ALWIL Software. http://www.avast.com From hernan en orgmf.com.ar Tue Dec 21 13:00:00 2004 From: hernan en orgmf.com.ar (=?iso-8859-1?Q?Hern=E1n_Mart=EDnez_Foffani?=) Date: Tue, 21 Dec 2004 13:00:00 +0100 Subject: isinstance In-Reply-To: <000601c4e751$5b981fc0$d900a8c0@catalin> References: <000601c4e751$5b981fc0$d900a8c0@catalin> Message-ID: > Me podrían decir cual es la diferencia entre: > > d={} > > if type(d) == dict: > return "diccionario" > > y > > if isinstance(d, dict): > return "diccionario" isinstance devuelve True si el tipo de d es una subclase de dict. Ej. >>> class diccio(dict): pass >>> c = diccio() >>> isinstance(c, dict) True >>> type(c) == dict False >>> En general suele ser preferible usar isinstance. -H. From py en ch3m4.org Tue Dec 21 13:20:45 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Tue, 21 Dec 2004 13:20:45 +0100 Subject: Class reloading In-Reply-To: <41C808D3.2040505@sicem.biz> References: <41C750FD.7010807@sicem.biz> <200412211205.02404.py@ch3m4.org> <41C808D3.2040505@sicem.biz> Message-ID: <200412211320.49227.py@ch3m4.org> El Martes, 21 de Diciembre de 2004 12:28, Ernesto Revilla escribió: > Lo de los paquetes > distribuidos no sé muy bien a qué te refieres. En un paquete distribuído (alojado en varios directorios) la ejecución del fichero __init__.py altera la ruta del sys.path para poder localizar los submódulos/subpaquetes del paquete, y es necesario que este sys.path se mantenga para que funcione el paquete. En cambio, en el siguiente 'rebuild' se vuelve a machacar el módulo 'sys' con su sys.path, con lo que este tipo de paquetes dejarían de funcionar. Tal vez fuera suficiente con añadir el módulo sys al espacio de nombres, pero esto podría tener implicaciones en el 'reload()' de módulos: ns={'__reloading__': 1, 'sys':sys } En fin, es algo que habría que investigar mejor. Quizás se podría crear una clase abstracta que respondiera al evento '__reload__' o algo así, y que fuera cada clase la encargada de su propia recarga. ------------ 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 py en ch3m4.org Tue Dec 21 13:29:09 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Tue, 21 Dec 2004 13:29:09 +0100 Subject: isinstance In-Reply-To: <000601c4e751$5b981fc0$d900a8c0@catalin> References: <000601c4e751$5b981fc0$d900a8c0@catalin> Message-ID: <200412211329.09249.py@ch3m4.org> El Martes, 21 de Diciembre de 2004 12:36, Catalin Lungu escribió: > Hola, > Me podrían decir cual es la diferencia entre: > > d={} > > if type(d) == dict: > return "diccionario" Lo primero, la igualdad == es "igualdad de valores" que no es equivalente a "igualdad de identidades" en objetos. Para comprobar si dos objetos son iguales hay que usar el operador 'is': if type(d) is dict: return "diccionario" "a is b" es lo mismo que "id(a)==id(b)" Si no lo entiendes te lo explico con un ejemplo: class P(int):pass a=P(10) b=P(10) a==b # True a is b # False > y > > if isinstance(d, dict): > return "diccionario" > 'dict' puede usarse para derivar nuevos tipos. Con 'type(d) is dict' compruebas que sea del tipo 'dict' exclusivamente, siendo falso si fuera de un tipo derivado: class D(dict):pass d=D() type(d) is dict # False isinstance(d,dict) # True ------------ 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 lcatalin en siadv.com Tue Dec 21 13:49:49 2004 From: lcatalin en siadv.com (Catalin Lungu) Date: Tue, 21 Dec 2004 13:49:49 +0100 Subject: isinstance References: <000601c4e751$5b981fc0$d900a8c0@catalin> <200412211329.09249.py@ch3m4.org> Message-ID: <002d01c4e75b$8f18e4b0$d900a8c0@catalin> Muchas gracias, Esto es justo lo que quería saber. Si una instancia de una clase es de un tal tipo (del que deriva). ----- Original Message ----- From: "Chema Cortés" To: "La lista de python en castellano" Sent: Tuesday, December 21, 2004 1:29 PM Subject: Re: [Python-es] isinstance _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From py en ch3m4.org Tue Dec 21 15:14:10 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Tue, 21 Dec 2004 15:14:10 +0100 Subject: Class reloading In-Reply-To: <41C808D3.2040505@sicem.biz> References: <41C750FD.7010807@sicem.biz> <200412211205.02404.py@ch3m4.org> <41C808D3.2040505@sicem.biz> Message-ID: <200412211514.17337.py@ch3m4.org> El Martes, 21 de Diciembre de 2004 12:28, Ernesto Revilla escribió: > Respecto  a los slots, tengo que comprobarlo. Suponía que las instancias > de esas clases tiene los slots, no la clase en sí. Debería ser así, en que sólamente debería verse afectadas las instancias; pero no si se tocan los slots en la redefinición de la clase: class P(object): __slots__=["x"] a=P() a.x=10 # correcto P.__slots__=["y"] a=P() a.y=10 # da error ------------ 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 dimabe en utp.edu.co Tue Dec 21 18:10:46 2004 From: dimabe en utp.edu.co (dimabe en utp.edu.co) Date: Tue, 21 Dec 2004 12:10:46 -0500 Subject: TAB no funciona Message-ID: <1103649046.41c85916bd03f@www.utp.edu.co> Hola lista! Resulta que tengo un Frame en el que hay varios TextCtrl, pero la tecla TAB que generalmente se utiliza para navegar sobre los controles no funciona en Linux aunque en Windows sí. ¿Cuál puede ser el problema? ¿Será que los Sizers tienen algo que ver? Gracias por su colaboración ---------------------------------------------------------------- This message was sent using IMP, the Internet Messaging Program. From fvillarroel en yahoo.com Tue Dec 21 19:22:54 2004 From: fvillarroel en yahoo.com (FERNANDO VILLARROEL) Date: Tue, 21 Dec 2004 10:22:54 -0800 (PST) Subject: TAB no funciona In-Reply-To: <1103649046.41c85916bd03f@www.utp.edu.co> References: <1103649046.41c85916bd03f@www.utp.edu.co> Message-ID: <20041221182254.69936.qmail@web41205.mail.yahoo.com> Hola si funciona te doy un ejemplo, y lo tengo corriendo en linux: self.text_ctrl_7 = wx.TextCtrl(self, -1, "", style=wx.TE_PROCESS_ENTER|wx.TE_PROCESS_TAB) Chequea que estas propiedades en tus cajas de textos. Si lo estas generando con wxGlade en la pestana que dice Widget seleccionas las propiedades que quieres que tenga tu control. Espero te sirva. --- dimabe en utp.edu.co wrote: > Hola lista! > > Resulta que tengo un Frame en el que hay varios > TextCtrl, pero la tecla TAB que > generalmente se utiliza para navegar sobre los > controles no funciona en Linux > aunque en Windows s?. ?Cu?l puede ser el problema? > ?Ser? que los Sizers tienen > algo que ver? > > Gracias por su colaboraci?n > > > > ---------------------------------------------------------------- > This message was sent using IMP, the Internet > Messaging Program. > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > __________________________________ Do you Yahoo!? All your favorites on one personal page ? Try My Yahoo! http://my.yahoo.com ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From dimabe en utp.edu.co Tue Dec 21 20:11:20 2004 From: dimabe en utp.edu.co (dimabe en utp.edu.co) Date: Tue, 21 Dec 2004 14:11:20 -0500 Subject: TAB =?iso-8859-1?b?Yfpu?= no funciona In-Reply-To: <20041221183156.10C6414043EB@devnull.aditel.org> References: <20041221183156.10C6414043EB@devnull.aditel.org> Message-ID: <1103656280.41c8755844662@www.utp.edu.co> Fernando, gracias por contestar, pero tampoco me funcionó el TAB con la propiedad style=wx.TE_PROCESS_ENTER|wx.TE_PROCESS_TAB, en realidad es muy extraño porque el demo del wxPython me funciona bien pero en las ventanas que yo hago no. > Message: 10 > Date: Tue, 21 Dec 2004 10:22:54 -0800 (PST) > From: FERNANDO VILLARROEL > Subject: Re: [Python-es] TAB no funciona > To: La lista de python en castellano > Message-ID: <20041221182254.69936.qmail en web41205.mail.yahoo.com> > Content-Type: text/plain; charset=us-ascii > > Hola si funciona te doy un ejemplo, y lo tengo > corriendo en linux: > > self.text_ctrl_7 = wx.TextCtrl(self, -1, "", > style=wx.TE_PROCESS_ENTER|wx.TE_PROCESS_TAB) > > Chequea que estas propiedades en tus cajas de textos. > > Si lo estas generando con wxGlade en la pestana que > dice Widget seleccionas las propiedades que quieres > que tenga tu control. > > Espero te sirva. > --- dimabe en utp.edu.co wrote: > > > Hola lista! > > > > Resulta que tengo un Frame en el que hay varios > > TextCtrl, pero la tecla TAB que > > generalmente se utiliza para navegar sobre los > > controles no funciona en Linux > > aunque en Windows sí. ¿Cuál puede ser el problema? > > ¿Será que los Sizers tienen > > algo que ver? > > > > Gracias por su colaboración > > > > > > > > ---------------------------------------------------------------- This message was sent using IMP, the Internet Messaging Program. From erny en sicem.biz Tue Dec 21 20:19:50 2004 From: erny en sicem.biz (Ernesto Revilla) Date: Tue, 21 Dec 2004 20:19:50 +0100 Subject: Class reloading In-Reply-To: <200412211514.17337.py@ch3m4.org> References: <41C750FD.7010807@sicem.biz> <200412211205.02404.py@ch3m4.org> <41C808D3.2040505@sicem.biz> <200412211514.17337.py@ch3m4.org> Message-ID: <41C87756.3050600@sicem.biz> Hola, El objetivo de la recarga con rebuild es el de poder corregir métodos que tengan errores, no cambiar los atributos, etc. de instancias. Tengo claro que, aunque es posible modificar las variables de clases, las de las instancias nunca deberían cambiar, inclusive la definición de los slots. Aun así lo probaré, a ver qué pasa con la actualización de los slots. Erny Chema Cortés escribió: >El Martes, 21 de Diciembre de 2004 12:28, Ernesto Revilla escribió: > > >>Respecto a los slots, tengo que comprobarlo. Suponía que las instancias >>de esas clases tiene los slots, no la clase en sí. >> >> > >Debería ser así, en que sólamente debería verse afectadas las instancias; pero >no si se tocan los slots en la redefinición de la clase: > > >class P(object): > __slots__=["x"] > >a=P() >a.x=10 # correcto > >P.__slots__=["y"] >a=P() >a.y=10 # da error > > > >------------------------------------------------------------------------ > >_______________________________________________ >Python-es mailing list >Python-es en aditel.org >http://listas.aditel.org/listinfo/python-es > > -- Ernesto Revilla sicem sl Pol. Ind. Juncaril, c/ Loja Parc. 7 Local 13 18220 Albolote http://www.sicem.biz Tel: 637 716189 MSN: aerd en mx3.redestb.es ICQ: 163888521 --- avast! Antivirus: Saliente mensaje limpio. Base de datos de Virus (VPS): 0452-0, 21/12/2004 Comprobado en: 21/12/2004 20:19:54 avast! tiene los derechos reservados (c) 2000-2004 ALWIL Software. http://www.avast.com From erny en sicem.biz Tue Dec 21 20:30:18 2004 From: erny en sicem.biz (Ernesto Revilla) Date: Tue, 21 Dec 2004 20:30:18 +0100 Subject: Class reloading In-Reply-To: <200412211320.49227.py@ch3m4.org> References: <41C750FD.7010807@sicem.biz> <200412211205.02404.py@ch3m4.org> <41C808D3.2040505@sicem.biz> <200412211320.49227.py@ch3m4.org> Message-ID: <41C879CA.7020505@sicem.biz> hola, No sé muy si he entendido bien: en paquetes distribuidos, el sys.patch es modificado para poder encontrar los módulos. La recarga con rebuild sólo funciona con módulos ya cargados. En este caso, los módulos están asociados ya con su nombre de fichero. Yo ejecuto ese mismo fichero (en formato .py). Durante esa recarga, en principio, no debería realizarse ningún import real, ya que los módulos relacionados ya han sido cargados (con la lógica de los paquetes distribuidos). La recarga *sólo* carga ese mismo módulo. No recargará ningún módulo relacionado. Con lo que en la mayoría de los casos debería funcionar. Respecto al sys: si el nuevo namespace tiene un sys (puntero a módulo) lo más normal es que sea el mismo que en el namespace original del módulo. El que cambie algún objeto mutable dentro de un namespace relacionado (como en el caso de cambiar el sys.path) a mi no me afecta. el sys.path tiene que ser el mismo en ambos casos. De nuevo, como no realiza ningún import la variable sys.path en principio no me afecta. Efectivamente podría haber problemas cuando se carga un módulo sólo durante la recarga o cuando se efectúe un rebuild. Pondré más comentarios en la cabecera. Un cordial saludo, Erny Chema Cortés escribió: >El Martes, 21 de Diciembre de 2004 12:28, Ernesto Revilla escribió: > > >>Lo de los paquetes >>distribuidos no sé muy bien a qué te refieres. >> >> > >En un paquete distribuído (alojado en varios directorios) la ejecución del >fichero __init__.py altera la ruta del sys.path para poder localizar los >submódulos/subpaquetes del paquete, y es necesario que este sys.path se >mantenga para que funcione el paquete. > >En cambio, en el siguiente 'rebuild' se vuelve a machacar el módulo 'sys' con >su sys.path, con lo que este tipo de paquetes dejarían de funcionar. > >Tal vez fuera suficiente con añadir el módulo sys al espacio de nombres, pero >esto podría tener implicaciones en el 'reload()' de módulos: > > ns={'__reloading__': 1, 'sys':sys } > > >En fin, es algo que habría que investigar mejor. Quizás se podría crear una >clase abstracta que respondiera al evento '__reload__' o algo así, y que >fuera cada clase la encargada de su propia recarga. > > >------------------------------------------------------------------------ > >_______________________________________________ >Python-es mailing list >Python-es en aditel.org >http://listas.aditel.org/listinfo/python-es > > -- Ernesto Revilla sicem sl Pol. Ind. Juncaril, c/ Loja Parc. 7 Local 13 18220 Albolote http://www.sicem.biz Tel: 637 716189 MSN: aerd en mx3.redestb.es ICQ: 163888521 --- avast! Antivirus: Saliente mensaje limpio. Base de datos de Virus (VPS): 0452-0, 21/12/2004 Comprobado en: 21/12/2004 20:30:23 avast! tiene los derechos reservados (c) 2000-2004 ALWIL Software. http://www.avast.com From power1500 en hotmail.com Tue Dec 21 13:42:23 2004 From: power1500 en hotmail.com (Adriana Wagner) Date: Tue, 21 Dec 2004 12:42:23 +0000 Subject: =?iso-8859-1?q?Gram=E1tica?= Message-ID: Hola a todos, Les estoy escribiendo sin animo de ofender a nadie. Con lo bonito que es el español lo estamos convirtiendo en basura. Hay unas reglas básicas de gramática que no pueden faltar. Pero, por lo visto, en el foro los buenos programadores tienen también buena gramática. No les suena raro que en vez de “a ver” decir “haber”, cambiar las “v” con “b” y las “c” con “s”. Intenten hacer un esfuerzo para que se les pueda entender todo el mundo. Yo estoy aprendiendo el castellano en internet y enla tele y me cuesta bastante comprender lo que están diciendo. Un abrazo. _________________________________________________________________ MSN Amor: busca tu ½ naranja http://latam.msn.com/amor/ From agperez en tiscali.es Tue Dec 21 22:05:58 2004 From: agperez en tiscali.es (=?iso-8859-1?Q?A.G.P=E9rez?=) Date: Tue, 21 Dec 2004 22:05:58 +0100 Subject: =?iso-8859-1?Q?Re:_=5BPython-es=5D_Gram=E1tica?= References: Message-ID: <000801c4e7a1$7557b650$0301a8c0@Leibniz> Totalmente de acuerdo contigo. Si respetamos las reglas sintácticas a la hora de programar las debemos respetar también a la hora de escribir en esta lista y comunicarnos con los demás. Pues lo segundo es lo más importante. Un saludo. ----- Mensaje original ----- De: "Adriana Wagner" Para: Enviado: martes, 21 de diciembre de 2004 13:42 Asunto: [Python-es] Gramática > Hola a todos, > Les estoy escribiendo sin animo de ofender a nadie. Con lo bonito que es > el español lo estamos convirtiendo en basura. Hay unas reglas básicas de > gramática que no pueden faltar. Pero, por lo visto, en el foro los buenos > programadores tienen también buena gramática. No les suena raro que en vez > de "a ver" decir "haber", cambiar las "v" con "b" y las "c" con "s". > Intenten hacer un esfuerzo para que se les pueda entender todo el mundo. > Yo estoy aprendiendo el castellano en internet y enla tele y me cuesta > bastante comprender lo que están diciendo. > > Un abrazo. > > _________________________________________________________________ > MSN Amor: busca tu ½ naranja http://latam.msn.com/amor/ > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From acurro en wanadoo.es Tue Dec 21 22:49:21 2004 From: acurro en wanadoo.es (Alberto Curro) Date: Tue, 21 Dec 2004 22:49:21 +0100 Subject: =?ISO-8859-1?Q?Gram=E1tica?= In-Reply-To: <000801c4e7a1$7557b650$0301a8c0@Leibniz> References: <000801c4e7a1$7557b650$0301a8c0@Leibniz> Message-ID: <41C89A61.6060802@wanadoo.es> A.G.Pérez wrote: Pues no hablemos entonces de esas ocasiones en las que te usan el "ke", y lindezas por el estilo. Cada vez es más extraño encontrar gente con un mínimo sentido de la gramática o al menos del uso correcto de la expresión escrita. Muchas veces en los foros parecemos intérpretes y no programadores. Saludos > > Totalmente de acuerdo contigo. > > Si respetamos las reglas sintácticas a la hora de programar las > debemos respetar también a la hora de escribir en esta lista y > comunicarnos con los demás. Pues lo segundo es lo más importante. > > Un saludo. > > ----- Mensaje original ----- De: "Adriana Wagner" > Para: > Enviado: martes, 21 de diciembre de 2004 13:42 > Asunto: [Python-es] Gramática > > >> Hola a todos, >> Les estoy escribiendo sin animo de ofender a nadie. Con lo bonito que >> es el español lo estamos convirtiendo en basura. Hay unas reglas >> básicas de gramática que no pueden faltar. Pero, por lo visto, en el >> foro los buenos programadores tienen también buena gramática. No les >> suena raro que en vez de "a ver" decir "haber", cambiar las "v" con >> "b" y las "c" con "s". Intenten hacer un esfuerzo para que se les >> pueda entender todo el mundo. Yo estoy aprendiendo el castellano en >> internet y enla tele y me cuesta bastante comprender lo que están >> diciendo. >> >> Un abrazo. >> >> _________________________________________________________________ >> MSN Amor: busca tu ½ naranja http://latam.msn.com/amor/ >> >> _______________________________________________ >> 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 jordipascual en ono.com Tue Dec 21 23:06:00 2004 From: jordipascual en ono.com (Jordi Pascual) Date: Tue, 21 Dec 2004 23:06:00 +0100 Subject: =?ISO-8859-1?Q?Gram=E1tica?= In-Reply-To: <41C89A61.6060802@wanadoo.es> References: <000801c4e7a1$7557b650$0301a8c0@Leibniz> <41C89A61.6060802@wanadoo.es> Message-ID: <41C89E48.7080709@ono.com> ¡Bien Adriana! Gracias por romper el hielo en este tema. Esto se podría convertir en un largo "off topic", aunque espero que con el toque de atención nos demos todos (porque todos cometemos algun que otro error, seguro) por enterados y nos dediquemos a cosas más pythónicas. Aunque creo que es mucho peor escribir 'haber' por 'a ver' (u otras muuchas lindezas, que hay veces que duelen los ojos) que escribir 'ke'. Una cosa son la gramática y ortografía y otra escribir evidentemente 'mal' para ganar velocidad y tiempo. Leyendo mensajes el otro día pensaba que Juan Ramon Jiménez se sentiría absolutamente superado :-) Y tenéis razón, parece mentira que seamos capaces de seguir las reglas de un lenguaje de programación y no las del lenguaje habitual, mucho más relajadas. ¡Hala, a darle al teclado! Alberto Curro ha escrit: > A.G.Pérez wrote: > > Pues no hablemos entonces de esas ocasiones en las que te usan el > "ke", y lindezas por el estilo. > Cada vez es más extraño encontrar gente con un mínimo sentido de > la gramática o al menos del uso correcto de la expresión escrita. > Muchas veces en los foros parecemos intérpretes y no programadores. > > Saludos > >> >> Totalmente de acuerdo contigo. >> >> Si respetamos las reglas sintácticas a la hora de programar las >> debemos respetar también a la hora de escribir en esta lista y >> comunicarnos con los demás. Pues lo segundo es lo más importante. >> >> Un saludo. >> >> ----- Mensaje original ----- De: "Adriana Wagner" >> >> Para: >> Enviado: martes, 21 de diciembre de 2004 13:42 >> Asunto: [Python-es] Gramática >> >> >>> Hola a todos, >>> Les estoy escribiendo sin animo de ofender a nadie. Con lo bonito >>> que es el español lo estamos convirtiendo en basura. Hay unas reglas >>> básicas de gramática que no pueden faltar. Pero, por lo visto, en el >>> foro los buenos programadores tienen también buena gramática. No les >>> suena raro que en vez de "a ver" decir "haber", cambiar las "v" con >>> "b" y las "c" con "s". Intenten hacer un esfuerzo para que se les >>> pueda entender todo el mundo. Yo estoy aprendiendo el castellano en >>> internet y enla tele y me cuesta bastante comprender lo que están >>> diciendo. >>> >>> Un abrazo. >>> >>> _________________________________________________________________ >>> MSN Amor: busca tu ½ naranja http://latam.msn.com/amor/ >>> >>> _______________________________________________ >>> 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 alfredocanhadas en supercable.es Wed Dec 22 05:29:53 2004 From: alfredocanhadas en supercable.es (Alfredo Salazar) Date: Tue, 21 Dec 2004 23:29:53 -0500 Subject: Empezar con python, SOAP y Apache Message-ID: <41C8F841.6080700@supercable.es> Hola a todos. Soy nuevo en el foro y no sé exactamanete como funciona esto, pero voy a intentar enterarme prontito. Bueno, allá va mi consulta. Tengo que hacer mi proyecto fin de carrera (Informática de Gestión) sobre un servicio Web, el cual estará hospedado en un servidor Apache, utilizará protocolos SOAP y scripts de python. Y no sé muy bien como hacerlo, la verdad mucha mucha idea no tengo (o ninguna). He estado estudiando el tema, y mucho, pero no consigo encontrar buenas herramientas que me permitan desarrollarlo (hospedar el servicio, WSDL, UDDI, ...). Si alguien pudiera darme algún consejillo le estaría muy agradecido. Gracias From magmax9 en yahoo.es Wed Dec 22 00:08:51 2004 From: magmax9 en yahoo.es (Miguel Angel Garcia) Date: Wed, 22 Dec 2004 00:08:51 +0100 Subject: =?ISO-8859-1?Q?Gram=E1tica?= In-Reply-To: References: Message-ID: <1103670531.3579.16.camel@lobezno> Yo también estoy contigo. Escribir en castellano correctamente es complicado. Siempre confundes alguna "b" con alguna "v" y demás, pero habituarse a escribir mal es algo que, evidentemente, no puede ser bueno. De todas maneras debemos comprender que el castellano (español) se habla en muchos sitios, y tiene diferentes sutilezas. Algunas palabras que en España no significan gran cosa pueden resultar ofensivas en Sudamérica, y al revés. Pero eso no es razón para justificar palabras mal escritas. Por un castellano bien escrito. ;) PD: ¿Lo de Juan Ramón Jiménez va porque no escribía la letra "g"? ;) PD2: No lleguemos a esto ("La reforma del castellano"): http://juancholandia.dyndns.org/humor/muestraArticulo.aspx?Articulo=186&Seccion=100 On mar, 2004-12-21 at 12:42 +0000, Adriana Wagner wrote: > Hola a todos, > Les estoy escribiendo sin animo de ofender a nadie. Con lo bonito que es el > español lo estamos convirtiendo en basura. Hay unas reglas básicas de > gramática que no pueden faltar. Pero, por lo visto, en el foro los buenos > programadores tienen también buena gramática. No les suena raro que en vez > de ?a ver? decir ?haber?, cambiar las ?v? con ?b? y las ?c? con ?s?. > Intenten hacer un esfuerzo para que se les pueda entender todo el mundo. Yo > estoy aprendiendo el castellano en internet y enla tele y me cuesta bastante > comprender lo que están diciendo. > > Un abrazo. > > _________________________________________________________________ > MSN Amor: busca tu ½ naranja http://latam.msn.com/amor/ > > _______________________________________________ > 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 csotelop en yahoo.es Wed Dec 22 00:16:57 2004 From: csotelop en yahoo.es (Carlos Eduardo Sotelo Pinto) Date: Tue, 21 Dec 2004 18:16:57 -0500 Subject: Gran problema de listas Message-ID: <41C8AEE9.4050902@yahoo.es> Hola gente tengo tres listas y no se como manejarlas sucede lo siguiente tengo las lista1= [codigo,cantidad, precio] luego tengo la lista2=[codigo,cantidad, precio] y una lista final el problema es el diguiente primero adiciono la lista 1 a la listafinal, y luego la lista 2 comparando que los codigos sean diferente, si son iguales los sumo en la lista total la idea es que estas listas son independientes, pero resulta un gran problema que cuando termino la lista1 es igual a la lista final este es mi codigo self.Services = None self.Services = [] print self.PrdHasFall for p in self.PrdHasFall: self.Services.append(p) if self.Products: for r in self.Products: f=0 for s in self.Services: print self.PrdHasFall if s[0] == r[0]: if s[3] >= 0: s[3] = int(s[3]) + int(r[3]) f=1 if f==0: self.Services.append(r) print self.PrdHasFall + "---" print self.PrdHasFall self.lstProducts.Clear() Total = 0 print'----' for x in self.Services: self.lstProducts.Append(str(x[1])+'-'+str(x[2]), x[0]) Total = Total + (int(x[2]) * int(x[3])) self.txtProductTotal.SetValue(str(Total)) self.txtContractTotal.SetValue(str(Total+int(self.txtFallTotal.GetValue()))) From jesus en roncero.org Wed Dec 22 00:17:43 2004 From: jesus en roncero.org (=?iso-8859-15?q?Jes=FAs_Roncero_Franco?=) Date: Wed, 22 Dec 2004 00:17:43 +0100 Subject: =?iso-8859-15?q?Gram=E1tica?= In-Reply-To: <1103670531.3579.16.camel@lobezno> References: <1103670531.3579.16.camel@lobezno> Message-ID: <200412220017.43886.jesus@roncero.org> On Wednesday, 22 de December de 2004 00:08, Miguel Angel Garcia wrote: > Escribir en castellano correctamente es complicado. Siempre confundes No estoy de acuerdo contigo. Creo que escribir castellano aceptablemente bien no es, de ninguna manera, complicado. Otra cosa es la dejadez, ignorancia e incultura que últimamente tanto se aprecia en internet. > alguna "b" con alguna "v" y demás, pero habituarse a escribir mal es > algo que, evidentemente, no puede ser bueno. El problema no es confundir puntualmente una b con una v. Es no conocer las palabras (entre otras cosas). Y estoy seguro de que sabéis de qué hablo. Sólo hace falta leer un poco barrapunto ;). -- temp: http://temp.roncero.org Out: 8.44 ºC -- In: 19.81 ºC ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From acurro en wanadoo.es Wed Dec 22 00:51:04 2004 From: acurro en wanadoo.es (Alberto Curro) Date: Wed, 22 Dec 2004 00:51:04 +0100 Subject: [OT] Re: =?ISO-8859-15?Q?Gram=E1tica?= In-Reply-To: <200412220017.43886.jesus@roncero.org> References: <1103670531.3579.16.camel@lobezno> <200412220017.43886.jesus@roncero.org> Message-ID: <41C8B6E8.7000009@wanadoo.es> Jesús Roncero Franco wrote: >On Wednesday, 22 de December de 2004 00:08, Miguel Angel Garcia wrote: > > > >>Escribir en castellano correctamente es complicado. Siempre confundes >> >> > >No estoy de acuerdo contigo. Creo que escribir castellano aceptablemente bien >no es, de ninguna manera, complicado. Otra cosa es la dejadez, ignorancia e >incultura que últimamente tanto se aprecia en internet. > > No sólo en Internet. Tengo una empresa (consultoría) y recibo muchos currículums, como suele ser habitual. Desde el año pasado estoy empezando a asustarme de lo que llega al correo. Recien diplomados con un sentido de la expresión que deja, en la mayoría de los casos, mucho que desear. ¿Es que es tan difícil hablar bien? ¿Expresarse correctamente?. Por supuesto, la mayor parte de estas veces me dan ganas de devolver un escrito diciendo "Buen CV. Ala, sólo te queda aprender a escribir y después hablamos.". En fin... > > >>alguna "b" con alguna "v" y demás, pero habituarse a escribir mal es >>algo que, evidentemente, no puede ser bueno. >> >> > >El problema no es confundir puntualmente una b con una v. Es no conocer las >palabras (entre otras cosas). Y estoy seguro de que sabéis de qué hablo. Sólo >hace falta leer un poco barrapunto ;). > > Hombre, menuda mezcla. Es que en Barrapunto se junta, como se dice por aquí en mi tierra (galicia), lo mejor de cada casa.... :) 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 emulwich en yahoo.com Wed Dec 22 03:15:27 2004 From: emulwich en yahoo.com (Mauricio Zarceÿfffff1o) Date: Tue, 21 Dec 2004 18:15:27 -0800 (PST) Subject: Quiero Aprender Python!!!! Message-ID: <20041222021527.78256.qmail@web51107.mail.yahoo.com> Hola soy un programador algo novato y tengo muchas ganas de aprender a programar en python, si me pueden decir donde conseguir manuales, tutoriales y ejemplos de preferencia en espa?ol, porque la mayoria que he encontrado son en ingles. Gracias de antemano. WICHOX. __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From nivel-13 en ya.com Wed Dec 22 04:04:24 2004 From: nivel-13 en ya.com (=?ISO-8859-1?Q?Jos=E9_Reina_Le=F3n?=) Date: Wed, 22 Dec 2004 04:04:24 +0100 Subject: Quiero Aprender Python!!!! In-Reply-To: <20041222021527.78256.qmail@web51107.mail.yahoo.com> References: <20041222021527.78256.qmail@web51107.mail.yahoo.com> Message-ID: <41C8E438.2070701@ya.com> Mauricio Zarceÿfffff1o escribió: >Hola soy un programador algo novato y tengo muchas >ganas de aprender a programar en python, si me pueden >decir donde conseguir manuales, tutoriales y ejemplos >de preferencia en español, porque la mayoria que he >encontrado son en ingles. Gracias de antemano. > > WICHOX. > >__________________________________________________ >Do You Yahoo!? >Tired of spam? Yahoo! Mail has the best spam protection around >http://mail.yahoo.com > > >------------------------------------------------------------------------ > >_______________________________________________ >Python-es mailing list >Python-es en aditel.org >http://listas.aditel.org/listinfo/python-es > > Prácticamente lo tienes todo en la documentación original de python en inglés. Del tutorial, que es la parte más interesante para aprender, la traducción que he encontrado más reciente es la de la versión 2.0 (año 2000) aunque prácticamente el el lenguaje no ha variado desde entonces. Lo puedes encontrar en http://sourceforge.net/projects/pyspanishdoc encontrarás lo que hay traducido de python con las novedades de las nuevas versiones, como verás no hay modificaciones importantes así que el tutorial sigue siendo válido. Si quieres más información juega un poco con google, aunque no hay mucho en español, en http://www.google.es clica sobre Directorio y sigue este recorrido: Computadoras -> Programación -> Lenguajes -> Python ahí hay 4 enlaces a páginas sobre Python en español, que también tienen enlaces a otras páginas sobre Python en español donde podrás ir recogiendo información. Y si necesitas más ayuda aquí estamos. :-) From jeremiasc en gmail.com Wed Dec 22 04:16:56 2004 From: jeremiasc en gmail.com (Jeremias) Date: Wed, 22 Dec 2004 00:16:56 -0300 Subject: Quiero Aprender Python!!!! In-Reply-To: <41C8E438.2070701@ya.com> References: <20041222021527.78256.qmail@web51107.mail.yahoo.com> <41C8E438.2070701@ya.com> Message-ID: Si recien empezas, esto esta bueno: http://marmota.act.uji.es/MTP/teoria.shtml Espero que sirva. Saludos. On Wed, 22 Dec 2004 04:04:24 +0100, José Reina León wrote: > Mauricio Zarceÿfffff1o escribió: > > >Hola soy un programador algo novato y tengo muchas > >ganas de aprender a programar en python, si me pueden > >decir donde conseguir manuales, tutoriales y ejemplos > >de preferencia en español, porque la mayoria que he > >encontrado son en ingles. Gracias de antemano. > > > > WICHOX. > > > >__________________________________________________ > >Do You Yahoo!? > >Tired of spam? Yahoo! Mail has the best spam protection around > >http://mail.yahoo.com > > > > > >------------------------------------------------------------------------ > > > >_______________________________________________ > >Python-es mailing list > >Python-es en aditel.org > >http://listas.aditel.org/listinfo/python-es > > > > > Prácticamente lo tienes todo en la documentación original de python en > inglés. Del tutorial, que es la parte más interesante para aprender, la > traducción que he encontrado más reciente es la de la versión 2.0 (año > 2000) aunque prácticamente el el lenguaje no ha variado desde entonces. > Lo puedes encontrar en http://sourceforge.net/projects/pyspanishdoc > encontrarás lo que hay traducido de python con las novedades de las > nuevas versiones, como verás no hay modificaciones importantes así que > el tutorial sigue siendo válido. > > Si quieres más información juega un poco con google, aunque no hay mucho > en español, en http://www.google.es clica sobre Directorio y sigue este > recorrido: Computadoras -> Programación -> Lenguajes -> Python ahí hay 4 > enlaces a páginas sobre Python en español, que también tienen enlaces a > otras páginas sobre Python en español donde podrás ir recogiendo > información. > > Y si necesitas más ayuda aquí estamos. :-) > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From pabloreysobral en gmail.com Wed Dec 22 05:53:28 2004 From: pabloreysobral en gmail.com (Pablo Rey Sobral) Date: Wed, 22 Dec 2004 05:53:28 +0100 Subject: Quiero Aprender Python!!!! In-Reply-To: References: <20041222021527.78256.qmail@web51107.mail.yahoo.com> <41C8E438.2070701@ya.com> Message-ID: <4c01c85a041221205378fcb9e6@mail.gmail.com> Hola, Quizás lo más interesante sea el tutorial. Tienes también en español http://es.diveintopython.org/ donde hay un libro descargable. Mirate también http://usuarios.lycos.es/arturosa/ que tiene varios enlaces interesantes. Si ya has programado en algún lenguaje lo vas a aprender muy rápido. Python es muy facil y muy lógico en muchos aspectos y reduce la mucha burocracía que llevan implicitos la mayoría de lenguajes compilados. Lo que más me costó al principio es manejar las listas, diccionarios, etc..., que es quizás de lo mejor que tiene python, directamente sin pensar en índices: for producto in productos: print producto y no for i in range(1, len(productos)): print producto[i] No se si me explico. Un saludo. From pabloreysobral en gmail.com Wed Dec 22 06:08:50 2004 From: pabloreysobral en gmail.com (Pablo Rey Sobral) Date: Wed, 22 Dec 2004 06:08:50 +0100 Subject: Gran problema de listas In-Reply-To: <41C8AEE9.4050902@yahoo.es> References: <41C8AEE9.4050902@yahoo.es> Message-ID: <4c01c85a0412212108132e19ae@mail.gmail.com> On Tue, 21 Dec 2004 18:16:57 -0500, Carlos Eduardo Sotelo Pinto wrote: > Hola gente tengo tres listas y no se como manejarlas > sucede lo siguiente > tengo las lista1= [codigo,cantidad, precio] > luego tengo la lista2=[codigo,cantidad, precio] > y una lista final > el problema es el diguiente > primero adiciono la lista 1 a la listafinal, y luego la lista 2 > comparando que los codigos sean diferente, si son iguales los sumo en la > lista total El código que tienes abajo no soy capaz de entenderlo. Para hacer lo que dices: lista1 = [(cod, pre, can), (cod, pre, can), .....] lista2 = [(cod, pre, can), (cod, pre, can), .....] res = lista1 for x in lista2: for y in res: if y[0] = x[0]: y[3] += x[3] break # nos vamos ya que se supone que la lista1 tiene códigos únicos Seguramente se pueda hacer igual de bien con menos código y alguna funcioncilla tipo map y una lambda o algo así. > la idea es que estas listas son independientes, pero resulta un gran > problema que cuando termino la lista1 es igual a la lista final > este es mi codigo > > self.Services = None > self.Services = [] > print self.PrdHasFall > > for p in self.PrdHasFall: > self.Services.append(p) > > if self.Products: > for r in self.Products: > f=0 > for s in self.Services: > print self.PrdHasFall > if s[0] == r[0]: > if s[3] >= 0: > s[3] = int(s[3]) + int(r[3]) > f=1 > if f==0: > self.Services.append(r) > print self.PrdHasFall + "---" > > print self.PrdHasFall > self.lstProducts.Clear() > Total = 0 > print'----' > for x in self.Services: > self.lstProducts.Append(str(x[1])+'-'+str(x[2]), x[0]) > Total = Total + (int(x[2]) * int(x[3])) > self.txtProductTotal.SetValue(str(Total)) > > self.txtContractTotal.SetValue(str(Total+int(self.txtFallTotal.GetValue()))) > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From pedro.carrasco en iver.es Wed Dec 22 08:40:26 2004 From: pedro.carrasco en iver.es (Pedro A. Carrasco Ponce) Date: Wed, 22 Dec 2004 08:40:26 +0100 Subject: [off-topic] =?windows-1252?Q?Gram=E1tica?= In-Reply-To: References: Message-ID: <41C924EA.2000406@iver.es> Adriana Wagner wrote: > Hola a todos, > Les estoy escribiendo sin animo de ofender a nadie. Con lo bonito que es > el español lo estamos convirtiendo en basura. Hay unas reglas básicas de > gramática que no pueden faltar. Pero, por lo visto, en el foro los > buenos programadores tienen también buena gramática. No les suena raro > que en vez de ?a ver? decir ?haber?, cambiar las ?v? con ?b? y las ?c? > con ?s?. Intenten hacer un esfuerzo para que se les pueda entender todo > el mundo. Yo estoy aprendiendo el castellano en internet y enla tele y > me cuesta bastante comprender lo que están diciendo. > > Un abrazo. > > _________________________________________________________________ > MSN Amor: busca tu ½ naranja http://latam.msn.com/amor/ > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > Y marcar el mensaje como Off-topic (o Fuera de Tema), aparte de gramática (que no está mal tenerla) hay que tener netiqueta. Salu2 -- Pedro ------------ 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 Dec 22 10:00:29 2004 From: rapto en arrakis.es (Marcos =?ISO-8859-1?Q?S=E1nchez?= Provencio) Date: Wed, 22 Dec 2004 10:00:29 +0100 Subject: [OT] Re: =?ISO-8859-1?Q?Gram=E1tica?= In-Reply-To: <41C8B6E8.7000009@wanadoo.es> References: <1103670531.3579.16.camel@lobezno> <200412220017.43886.jesus@roncero.org> <41C8B6E8.7000009@wanadoo.es> Message-ID: <1103706029.4531.17.camel@cynar.proteus> El mié, 22-12-2004 a las 00:51 +0100, Alberto Curro escribió: > Jesús Roncero Franco wrote: > > Por supuesto, la mayor parte de estas veces me dan ganas de devolver > un escrito diciendo "Buen CV. Ala, sólo te queda aprender a escribir y > después hablamos.". No hay que ser tan tiquismiquis, cada uno que haga lo que pueda. El que esté libre de culpa... Es 'Hala', no 'ala' ---------------------- hala. (Voz expr.). 1. interj. U. para infundir aliento o meter prisa. 2. interj. U. para mostrar sorpresa. 3. interj. U. para llamar. 4. interj. U. para denotar la persistencia en una marcha. U. repetida. Real Academia Española © Todos los derechos reservados ----------------------- Espero que nadie deje de escribir por miedo a poner faltas hortográficas. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From alfredocanhadas en supercable.es Wed Dec 22 05:20:46 2004 From: alfredocanhadas en supercable.es (Alfredo Salazar) Date: Tue, 21 Dec 2004 23:20:46 -0500 Subject: Empezar con python, SOAP y Apache Message-ID: <41C8F61E.2030905@supercable.es> Hola a todos. Soy nuevo en el foro y no sé exactamanete como funciona esto, pero voy a intentar enterarme prontito. Bueno, allá va mi consulta. Tengo que hacer mi proyecto fin de carrera (Informática de Gestión) sobre un servicio Web, el cual estará hospedado en un servidor Apache, utilizará protocolos SOAP y scripts de python. Y no sé muy bien como hacerlo, la verdad mucha mucha idea no tengo (o ninguna). He estado estudiando el tema, y mucho, pero no consigo encontrar buenas herramientas que me permitan desarrollarlo (hospedar el servicio, WSDL, UDDI, ...). Si alguien pudiera darme algún consejillo le estaría muy agradecido. Gracias From juanma en burke.ath.cx Wed Dec 22 09:20:56 2004 From: juanma en burke.ath.cx (=?ISO-8859-1?Q?Juan_Manuel_Rodr=EDguez?=) Date: Wed, 22 Dec 2004 09:20:56 +0100 Subject: =?iso-8859-1?q?Gram=E1tica?= In-Reply-To: <20041222050857.A5DCA14043F9@devnull.aditel.org> References: <20041222050857.A5DCA14043F9@devnull.aditel.org> Message-ID: <41C92E68.2040803@burke.ath.cx> Como decían en "La bola de cristal", sobre un fondo de ovejas balando: "Si no quieres ser como ellos, LEE" (Dicho de otro modo, leyendo se mejora bastante la expresión y la ortografía) :) Ánimo, que no cuesta tanto. Juanma. From acurro en wanadoo.es Wed Dec 22 10:18:58 2004 From: acurro en wanadoo.es (Alberto Curro) Date: Wed, 22 Dec 2004 10:18:58 +0100 Subject: [OT] Re: =?ISO-8859-15?Q?Gram=E1tica?= In-Reply-To: <1103706029.4531.17.camel@cynar.proteus> References: <1103670531.3579.16.camel@lobezno> <200412220017.43886.jesus@roncero.org> <41C8B6E8.7000009@wanadoo.es> <1103706029.4531.17.camel@cynar.proteus> Message-ID: <41C93C02.7060503@wanadoo.es> >No hay que ser tan tiquismiquis, cada uno que haga lo que pueda. El que >esté libre de culpa... > >Es 'Hala', no 'ala' >---------------------- >hala. > >(Voz expr.). > >1. interj. U. para infundir aliento >o meter prisa. > >2. interj. U. para mostrar sorpresa. > >3. interj. U. para llamar. > >4. interj. U. para denotar la >persistencia en una marcha. U. >repetida. > > > XDDDDDDDDDDDD.... Tienes razón. Pero yo lo escribo por la costumbre. En mi lengua natal (gallego) la expresión es "Ala", no "Hala". Aunque sé perfectamente que debería ser con h, nunca me acuerdo. Conozco mucha gente de regiones en las cuales el bilingüismo es habitual, y a todos nos pasa lo mismo. Otra cosa es un " a ver", frente a un "haber" (por verbo), o cosas peores. De todos modos, no soy tiquismiquis por serlo. Es que deberías ver algunas cosas que caen por mi mesa en la oficina. Créeme, te podrías asustar... ;) Saludos ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From o.merchan en bussitel.es Wed Dec 22 11:14:34 2004 From: o.merchan en bussitel.es (Oscar Merchan) Date: Wed, 22 Dec 2004 11:14:34 +0100 Subject: Llamar una funcion desde variable Message-ID: <20041222111434.3da6bcab.o.merchan@bussitel.es> Buenas a todos. Ya se que lo voy a preguntar es un poco raro, y ni tan siquiera se si ahi alguna forma de hacerlo. Bueno haya va, quisiera poder ejecutar una funcion a raiz del valor de una variable, me esplico con un ejemplo .- def imprime(): <-- Fundion print 'chorrada' prueba = 'imprime' <-- Variable, cuyo valor es el mismo nombre que la funcion prueba() <-- Ya se que esto no funciona pero es para que veais lo que pretendo La idea de todo esto es que quiero hacer un programa en el cual yo sepa lo minimo, y que sea el usuario mediante una configuracion el que proporcione todo la informacion, en este caso se trata de procesar unos ficheros de log's, y quiero dar solo la base, y que luego el usuario a raiz de la configuracion que proporcione hacer una cosa u otra pero siempre teniendo el usuario el control. Me esplico, imaginar una linea de log en la cual os dice que vuestra maquina se ha apagado, y que quieres saber el tiempo que ha estado encendida, supongamos que la informacion de apagado sea CPU OFF, bien quiero dar al usuario la oportunidad que el me diga que hacer, o sea que si quiere que se sepa el tiempo de encendio que ponga en la configuracion CPU OFF = @encendido ( donde @encendido seria el nombre de la funcion ) o si lo que quiere es CPU OFF = @descartalo Basicamente la idea es dejar que el usuario utilice el programa segun le convenga cambiando lo minimo posbile de el, y en mi caso dejarle las funciones definidas y que el segun quiera procesar cada mensaje que le ponga una cosa u otra sin tener que preocuparme yo de cada cambio que quieran hacer. Gracias, Oscar Merchan. P.D .- Tambien se admite ideas de otras formas de hacerlo :-D ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From jasalgir en querysoft.es Wed Dec 22 12:39:22 2004 From: jasalgir en querysoft.es (Powerbook) Date: Wed, 22 Dec 2004 12:39:22 +0100 Subject: Empezar con python, SOAP y Apache In-Reply-To: <41C8F61E.2030905@supercable.es> References: <41C8F61E.2030905@supercable.es> Message-ID: <1FA27332-540E-11D9-830E-000A95A852C4@querysoft.es> Pasa por http://web-services.bankhacker.com a ver si te sirve de algo. Saludos! El 22/12/2004, a las 5:20, Alfredo Salazar escribió: > Hola a todos. Soy nuevo en el foro y no sé exactamanete como funciona > esto, pero voy a intentar enterarme prontito. > Bueno, allá va mi consulta. Tengo que hacer mi proyecto fin de carrera > (Informática de Gestión) sobre un servicio Web, el cual estará > hospedado en un servidor Apache, utilizará protocolos SOAP y scripts > de python. Y no sé muy bien como hacerlo, la verdad mucha mucha idea > no tengo (o ninguna). He estado estudiando el tema, y mucho, pero no > consigo encontrar buenas herramientas que me permitan desarrollarlo > (hospedar el servicio, WSDL, UDDI, ...). Si alguien pudiera darme > algún consejillo le estaría muy agradecido. Gracias > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From python en ammsoft.com Wed Dec 22 12:53:16 2004 From: python en ammsoft.com (Amm-Python) Date: Wed, 22 Dec 2004 12:53:16 +0100 Subject: cx_Oracle + py2exe In-Reply-To: <20041222111434.3da6bcab.o.merchan@bussitel.es> References: <20041222111434.3da6bcab.o.merchan@bussitel.es> Message-ID: <001f01c4e81c$d36e8360$640010ac@nombref31twj9b> Echo a faltar un repositorio con trucos, ejemplos y comentarios. Algún sitio donde ir colgando el código interesante que desarrollamos, funciones y clases curiosas que puedan facilitarle la vida a los nuevos usuarios de Python, así como soluciones a problemas cotidianos. Por ejemplo: Me he pasado unas cuantas horas con un problema absurdo. Una aplicación que funcionaba correctamente con Python + cx_oracle la "compilé" con py2exe. El resultado fue genial. Al instalar en el cliente el ejecutable, con los ficheros y librerías que se crean al mismo tiempo, daba un error misterioso. "Unable to acquire Oracle environment handle". Después de buscar y buscar por el Google y no encontrar una solución satisfactoria. Conseguí reproducir el error del cliente. Todo era mucho más sencillo: El cliente tenia instalado un "Cliente oracle 8i" y yo el que tengo instalado en mi ordenador es el 9i. Pero en Python la versión que instalé del cx_Oracle fue la 8i ya que el cliente tiene la BBDD en Oracle 8i. Al crear el .exe py2exe me copió en el directorio del exe, como librería auxiliar, el archivo OCI.dll, este archivo está en el directorio lib de oracle y por lo tanto cada versión de Oracle tiene un fichero diferente. Lo único que he tenido que hacer es quitarlo del directorio del programa para que coja el que hay en el directorio de Oracle (que es el correcto) y ha funcionado a la primera. Por cierto: He probado con la versión cx_Oracle 9i y funciona igual, aunque la base de datos sea 8i, entonces; ¿por qué hay una versión específica para la 8i ? Un saludo, Toni P.D. El único repositorio con ejemplos que he encontrado es : http://aspn.activestate.com/ASPN/Cookbook/Python/ Estaría bien que en http://www.pythonhispano.org montarán una estructura parecida y fuésemos metiendo nuestros ejemplos. Por cierto, ¿ya visitáis estos links?, son muy buenos. P.D.2 No se vosotros, pero yo no me aclaro con los manuales de Python (no hay últimas versiones en castellano) y sobre todo con los de wxpython, ya se que seguramente es un problema de las carencias formativas que tengo y mi nivel de compresión del inglés, pero es que los ejemplos que traen son para matarlos. Mi aprendizaje lo baso sobretodo en leer código, soy un devorador de código, necesito código, más código, más código... ¿Dónde hay más código?. ;-) From hernan en orgmf.com.ar Wed Dec 22 13:02:01 2004 From: hernan en orgmf.com.ar (=?us-ascii?Q?Hernan_Martinez_Foffani?=) Date: Wed, 22 Dec 2004 13:02:01 +0100 Subject: Llamar una funcion desde variable In-Reply-To: <20041222111434.3da6bcab.o.merchan@bussitel.es> References: <20041222111434.3da6bcab.o.merchan@bussitel.es> Message-ID: > def imprime(): <-- Funcion > print 'chorrada' > > prueba = 'imprime' <-- Variable, cuyo valor es el mismo nombre que > la funcion > > prueba() <-- Ya se que esto no funciona pero es para que veais lo > que pretendo La solucion estandar para estos casos (en casi todos los lenguajes) es usar una tabla hash con indice el nombre y valor las funciones. Alternativamente un vector de pares (tuplas) nombre-funcion. >>> def graba(): print 'aqui grabo a disco' >>> def imprime(): print 'chorrada' >>> funciones = {'prueba': imprime, 'real': graba} >>> funciones['prueba']() chorrada >>> funciones['real']() aqui grabo a disco >>> Podrias hacerlo mas compacto aprovechando las caracteristicas de introspeccion pero no me parece que valga la pena. -H. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From aragorn en pythonhispano.org Wed Dec 22 13:06:51 2004 From: aragorn en pythonhispano.org (Jose) Date: Wed, 22 Dec 2004 13:06:51 +0100 Subject: cx_Oracle + py2exe In-Reply-To: <001f01c4e81c$d36e8360$640010ac@nombref31twj9b> References: <001f01c4e81c$d36e8360$640010ac@nombref31twj9b> Message-ID: <1103717211.4208.17.camel@demeter.speriaitc.com> El mié, 22-12-2004 a las 12:53, Amm-Python escribió: > Echo a faltar un repositorio con trucos, ejemplos y comentarios. > > Algún sitio donde ir colgando el código interesante que desarrollamos, > funciones y clases curiosas que puedan facilitarle la vida a los nuevos > usuarios de Python, así como soluciones a problemas cotidianos. > > ... > El único repositorio con ejemplos que he encontrado es : > http://aspn.activestate.com/ASPN/Cookbook/Python/ > Estaría bien que en http://www.pythonhispano.org montarán una estructura > parecida y fuésemos metiendo nuestros ejemplos. No sé qué es lo que te impide incorporar tus trucos en pythonhispano.org. Cualquier usuario registrado puede 'crear nuevo contenido' de tipo 'receta', que es el equivalente al sistema que tiene ActiveState (de hecho utiliza sus mismas categorías). Saludos, Jose ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From python en ammsoft.com Wed Dec 22 13:00:46 2004 From: python en ammsoft.com (Amm-Python) Date: Wed, 22 Dec 2004 13:00:46 +0100 Subject: Llamar una funcion desde variable In-Reply-To: <20041222111434.3da6bcab.o.merchan@bussitel.es> References: <20041222111434.3da6bcab.o.merchan@bussitel.es> Message-ID: <002001c4e81d$dfec2fb0$640010ac@nombref31twj9b> Aquí tienes un trozo de código, sacado de la demo de wxpython: buttonDefs = { 814 : ('PreviewWide', 'Preview print of a wide table'), 815 : ('PreviewNarrow', 'Preview print of a narrow table with color highlights'), 818 : ('OnPreviewMatrix', 'Preview print of a narrow column grid without a table header'), 817 : ('PreviewLine', 'Preview print to demonstrate the use of line breaks'), 819 : ('PrintWide', 'Direct print (no preview) of a wide table'), 820 : ('PrintEtiqueta', 'Preview print of a label'), } #------------------------------------------------------------------- #-Main application-------------------------------------------------- #------------------------------------------------------------------- class MyPanel(wxPanel): def __init__(self, parent): wxPanel.__init__(self, parent, -1, wxDefaultPosition, wxDefaultSize) self.parent = parent box = wx.BoxSizer(wx.VERTICAL) box.Add((20, 30)) keys = buttonDefs.keys() keys.sort() for k in keys: text = buttonDefs[k][1] btn = wx.Button(self, k, text) box.Add(btn, 0, wx.ALIGN_CENTER|wx.ALL, 15) #self.Bind(wx.EVT_BUTTON, self.OnButton, btn) EVT_BUTTON(self, k, self.OnButton) self.SetAutoLayout(True) self.SetSizer(box) def OnButton(self, evt): funct = buttonDefs[evt.GetId()][0] code = 'self.' + funct + '()' eval(code) #ESTE ES EL TRUCO !!!!!!!!! ...... Creo que es fácil de seguir. Si no entiendes algo te lo explico. Un saludo, Toni P.D. Aunque no utilices wxPython, es una buena cosa instalarlo y devorar el código de su "demo", aprenderás un mogollón. > -----Mensaje original----- > De: python-es-bounces en aditel.org > [mailto:python-es-bounces en aditel.org] En nombre de Oscar Merchan > Enviado el: dimecres, 22 / desembre / 2004 11:15 > Para: Lista de Python > Asunto: [Python-es] Llamar una funcion desde variable > > > > Buenas a todos. > > > Ya se que lo voy a preguntar es un poco raro, y ni tan > siquiera se si ahi alguna forma de hacerlo. Bueno haya va, > quisiera poder ejecutar una funcion a raiz del valor de una > variable, me esplico con un ejemplo .- > > > def imprime(): <-- Fundion > print 'chorrada' > > prueba = 'imprime' <-- Variable, cuyo valor es el > mismo nombre que la funcion > > prueba() <-- Ya se que esto no funciona pero es para > que veais lo que pretendo > > La idea de todo esto es que quiero hacer un programa en el > cual yo sepa lo minimo, y que sea el usuario mediante una > configuracion el que proporcione todo la informacion, en este > caso se trata de procesar unos ficheros de log's, y quiero > dar solo la base, y que > luego el usuario a raiz de la configuracion que proporcione > hacer una cosa u otra pero siempre teniendo el usuario el control. > > Me esplico, imaginar una linea de log en la cual os dice que > vuestra maquina se ha apagado, y que quieres saber el tiempo > que ha estado encendida, supongamos que la informacion de > apagado sea CPU OFF, bien quiero dar al usuario la > oportunidad que el me diga que hacer, o sea que si quiere que > se sepa el tiempo de encendio que ponga en la configuracion > CPU OFF = @encendido ( donde @encendido seria el nombre de la > funcion ) o si lo que quiere es CPU OFF = @descartalo > > Basicamente la idea es dejar que el usuario utilice el > programa segun le convenga cambiando lo minimo posbile de el, > y en mi caso dejarle > las funciones definidas y que el segun quiera procesar cada > mensaje que le ponga una cosa u otra sin tener que > preocuparme yo de cada cambio que quieran hacer. > > > > Gracias, Oscar Merchan. > > P.D .- Tambien se admite ideas de otras formas de hacerlo :-D > From Andres.Moya en hispalinux.es Wed Dec 22 13:16:48 2004 From: Andres.Moya en hispalinux.es (Andres Moya) Date: Wed, 22 Dec 2004 13:16:48 +0100 Subject: Llamar una funcion desde variable In-Reply-To: <20041222111434.3da6bcab.o.merchan@bussitel.es> References: <20041222111434.3da6bcab.o.merchan@bussitel.es> Message-ID: <41C965B0.3080006@hispalinux.es> Oscar Merchan wrote: >Buenas a todos. > >Ya se que lo voy a preguntar es un poco raro, y ni tan siquiera se si ahi alguna forma de hacerlo. > > En otros lenguajes sí es raro, pero en python es de lo más normal. >Bueno haya va, quisiera poder ejecutar una funcion a raiz del valor de una variable, me esplico con un ejemplo .- > > def imprime(): <-- Fundion > print 'chorrada' > > prueba = 'imprime' <-- Variable, cuyo valor es el mismo nombre que la funcion > > prueba() <-- Ya se que esto no funciona pero es para que veais lo que pretendo > > En python una función es un objeto como otro cualquiera, y puede ser asignada a una variable y luego llamada: def imprime(): print 'chorrada' prueba = imprime prueba() Si lo que quieres es acceder a la función a partir de un string con su nombre, puedes buscarla en el diccionario globals(), si es global o ha sido importada con un "from xxx import": prueba = globals()["imprime"] prueba() También se puede encontrar de otras maneras. -- Andres.Moya en hispalinux.es From python en ammsoft.com Wed Dec 22 13:32:53 2004 From: python en ammsoft.com (Amm-Python) Date: Wed, 22 Dec 2004 13:32:53 +0100 Subject: cx_Oracle + py2exe In-Reply-To: <1103717211.4208.17.camel@demeter.speriaitc.com> References: <1103717211.4208.17.camel@demeter.speriaitc.com> Message-ID: <002d01c4e822$5c706b60$640010ac@nombref31twj9b> En artículos y foros si que he visto categorías. En las recetas no, por eso lo decía. Además hay cuatro, por lo que ignoro si es que está parado el tema, o es que la población Pythosista pasa del tema por dejadez o desconocimiento. Por lo que dices entiendo que está vivo y pretende ser una herramienta útil a nuestra comunidad. Por mi parte me pongo manos a la obra. Creo que sería interesante que intentásemos agregar, cada uno, nuestro granito de arena, poco a poco podemos generar una base de conocimiento sobre Python importante. Un saludo, Toni. P.D. Por cierto los artículos veo que son los que se publican en http://www.pythonware.com/daily/ Pero explicado de que van en castellano. Felicidades al que se lo curra, buen trabajo. En más de una ocasión si no llega a ser por él no hubiera sido capaz saber de que iba. Por cierto, quieres decir que la gente ya es consciente de que existe pythonhispano? > -----Mensaje original----- > De: python-es-bounces en aditel.org > [mailto:python-es-bounces en aditel.org] En nombre de Jose > Enviado el: dimecres, 22 / desembre / 2004 13:07 > Para: La lista de python en castellano > Asunto: Re: [Python-es] cx_Oracle + py2exe > > > El mié, 22-12-2004 a las 12:53, Amm-Python escribió: > > Echo a faltar un repositorio con trucos, ejemplos y comentarios. > > > > Algún sitio donde ir colgando el código interesante que > desarrollamos, > > funciones y clases curiosas que puedan facilitarle la vida a los > > nuevos usuarios de Python, así como soluciones a problemas > cotidianos. > > > > ... > > El único repositorio con ejemplos que he encontrado es : > > http://aspn.activestate.com/ASPN/Cookbook/Python/ > > Estaría bien que en http://www.pythonhispano.org montarán una > > estructura parecida y fuésemos metiendo nuestros ejemplos. > > No sé qué es lo que te impide incorporar tus trucos en > pythonhispano.org. > > Cualquier usuario registrado puede 'crear nuevo contenido' de > tipo 'receta', que es el equivalente al sistema que tiene > ActiveState (de hecho utiliza sus mismas categorías). > > Saludos, > Jose > > From o.merchan en bussitel.es Wed Dec 22 13:53:01 2004 From: o.merchan en bussitel.es (Oscar Merchan) Date: Wed, 22 Dec 2004 13:53:01 +0100 Subject: Llamar una funcion desde variable In-Reply-To: <41C965B0.3080006@hispalinux.es> References: <20041222111434.3da6bcab.o.merchan@bussitel.es> <41C965B0.3080006@hispalinux.es> Message-ID: <20041222135301.4ee2d265.o.merchan@bussitel.es> On Wed, 22 Dec 2004 13:16:48 +0100 Andres Moya wrote: > En python una función es un objeto como otro cualquiera, y puede ser > asignada a una variable y luego llamada: > > def imprime(): > print 'chorrada' > > prueba = imprime > prueba() > > Si lo que quieres es acceder a la función a partir de un string con su > nombre, puedes buscarla en el diccionario globals(), si es global o ha > sido importada con un "from xxx import": > > prueba = globals()["imprime"] > prueba() > Muchas gracias, es justo lo que me interesaba, he hecho la prueba con lo siguiente .- def imprime(): print 'chorrada' prueba = 'imprime' <--- Le damos un valor a prueba, que en la realidad no sabremos y que lo pillaremos de la configuracion prueba = globals()[prueba] prueba() Y adivinar que sale, si, ' chorrada ' :-D, bueno bromas aparte muchas gracias, al fin podre hacer el programa como yo queria, no limitandolo a un uso fijo, si no que sea el usuario quien lo limite, y como solo es un filtrado de log's, pues mejor asi si uno quiere controlar un mensaje en distintos aspectos pues lo controla poniendolo en la configuracion, si despues le interesa controlar otra cosa pues lo cambia en la configuracion y listo, y todo eso sin tener que controlar las cosas ya fijadas. Saludos, Oscar Merchan. From py en ch3m4.org Wed Dec 22 13:58:55 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Wed, 22 Dec 2004 13:58:55 +0100 Subject: Class reloading In-Reply-To: <41C879CA.7020505@sicem.biz> References: <41C750FD.7010807@sicem.biz> <200412211320.49227.py@ch3m4.org> <41C879CA.7020505@sicem.biz> Message-ID: <200412221359.01001.py@ch3m4.org> El Martes, 21 de Diciembre de 2004 20:30, Ernesto Revilla escribió: > La recarga *sólo* carga ese mismo módulo. No > recargará ningún módulo relacionado. Con lo que en la mayoría de los > casos debería funcionar. Tan sólo estaba pensado donde podría haber pegas. Igual veo pegas donde no las hay; pero, como te decía en mi constestación, el código que tienes debería funcionar en casi todos los casos. Hace falta probarlo sobre el terreno para comprobarlo mejor, pero he visto paquetes muy raros cuyos __init__.py se dedican a importar todos sus submódulos (con 'from modulo import *') para reducir la "jerarquía" del espacio de nombres. Quizás este tipo de técnicas dé problemas de recarga si no se hace bien. Lo mismo te digo con los slots. Los slots se usan para ahorrarte el gasto de memoria consistente en asociar un diccionario de datos con cada instancia. Es muy probable que quien use slots en lo último que esté pensando es en cambiar la definición de la clase sobre la marcha. ------------ 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 pepe en diselpro.com Wed Dec 22 15:00:46 2004 From: pepe en diselpro.com (Pepe Aracil) Date: Wed, 22 Dec 2004 15:00:46 +0100 Subject: Busqueda por clave parcial. Message-ID: <200412221500.46429.pepe@diselpro.com> Hola. Tengo un diccionario cuyas claves son del tipo "seccion_subseccion_elemento". Me gustaría poder obtener una lista con todas las claves que coincidan a partir de una clave parcial como "seccion_subseccion" ahora lo que hago es volcar todas las claves con .keys() en una lista, ordenar esta lista y buscar la porción de clave con el método index() de la lista. ¿Hay alguna forma mejor de buscar claves parciales en un diccionario? ¿Existe algún método optimizado para buscar en una lista ordenada? Gracias. From FBatista en uniFON.com.ar Wed Dec 22 14:59:34 2004 From: FBatista en uniFON.com.ar (Batista, Facundo) Date: Wed, 22 Dec 2004 10:59:34 -0300 Subject: Gran problema de listas Message-ID: [Carlos Eduardo Sotelo Pinto] #- tengo las lista1= [codigo,cantidad, precio] #- luego tengo la lista2=[codigo,cantidad, precio] #- y una lista final #- el problema es el diguiente #- primero adiciono la lista 1 a la listafinal, y luego la lista 2 #- comparando que los codigos sean diferente, si son iguales #- los sumo en la #- lista total #- la idea es que estas listas son independientes, pero resulta un gran Sería bueno un ejemplo, pero partiendo de la base que lo que quieres es lo siguiente... l1 = ['cod1', 5, 2] l2 = ['cod2', 2, 4] lf = [['cod1', 5, 2], ['cod2', 2, 4]] o l1 = ['cod1', 5, 2] l2 = ['cod1', 2, 4] lf = [['cod1', 7, 6]] ... sería trivial hacerlo con dos listas...: >>> def junta(li1, li2): lif = [] if li1[0] == li2[0]: lif.append([li1[0], li1[1]+li2[1], li1[2]+li2[2]]) else: lif.append(li1) lif.append(li2) return lif >>> li1 = ['cod1', 5, 2] >>> li2 = ['cod2', 2, 4] >>> junta(li1, li2) [['cod1', 5, 2], ['cod2', 2, 4]] >>> li1 = ['cod1', 5, 2] >>> li2 = ['cod1', 2, 4] >>> junta(li1, li2) [['cod1', 7, 6]] ...pero más interesante extenderlo a cualquier cantidad de listas: >>> def junta(listas): dic = {} for (cod, can, pre) in listas: (acan, apre) = dic.get(cod, (0, 0)) acan += can apre += pre dic[cod] = (acan, apre) return [[cod, can, pre] for (cod, (can, pre)) in dic.items()] >>> li1 = ['cod1', 5, 2] >>> li2 = ['cod2', 2, 4] >>> junta((li1, li2)) [['cod2', 2, 4], ['cod1', 5, 2]] >>> li1 = ['cod1', 5, 2] >>> li2 = ['cod1', 2, 4] >>> junta((li1, li2)) [['cod1', 7, 6]] >>> li1 = ['cod1', 5, 2] >>> li2 = ['cod2', 2, 4] >>> li3 = ['cod3', 8, 1] >>> li4 = ['cod1', 1, 3] >>> li5 = ['cod3', 3, 9] >>> todas = (li1, li2, li3, li4, li5) >>> junta(todas) [['cod2', 2, 4], ['cod3', 11, 10], ['cod1', 6, 5]] >>> Saludos. . Facundo Bitácora De Vuelo: http://www.taniquetil.com.ar/plog PyAr - Python Argentina: http://pyar.decode.com.ar/ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ADVERTENCIA. La información contenida en este mensaje y cualquier archivo anexo al mismo, son para uso exclusivo del destinatario y pueden contener información confidencial o propietaria, cuya divulgación es sancionada por la ley. Si Ud. No es uno de los destinatarios consignados o la persona responsable de hacer llegar este mensaje a los destinatarios consignados, no está autorizado a divulgar, copiar, distribuir o retener información (o parte de ella) contenida en este mensaje. Por favor notifíquenos respondiendo al remitente, borre el mensaje original y borre las copias (impresas o grabadas en cualquier medio magnético) que pueda haber realizado del mismo. Todas las opiniones contenidas en este mail son propias del autor del mensaje y no necesariamente coinciden con las de Telefónica Comunicaciones Personales S.A. o alguna empresa asociada. Los mensajes electrónicos pueden ser alterados, motivo por el cual Telefónica Comunicaciones Personales S.A. no aceptará ninguna obligación cualquiera sea el resultante de este mensaje. Muchas Gracias. From FBatista en uniFON.com.ar Wed Dec 22 15:04:39 2004 From: FBatista en uniFON.com.ar (Batista, Facundo) Date: Wed, 22 Dec 2004 11:04:39 -0300 Subject: Busqueda por clave parcial. Message-ID: [Pepe Aracil] #- Tengo un diccionario cuyas claves son del tipo #- "seccion_subseccion_elemento". Por ejemplo, ¿algo así?: >>> d = {'a_b_c':3, 't_y_u':4, 'a_b_m':None} >>> d {'a_b_c': 3, 't_y_u': 4, 'a_b_m': None} #- Me gustaría poder obtener una lista con todas las claves que #- coincidan a #- partir de una clave parcial como "seccion_subseccion" >>> l = [] >>> for k in d.keys(): part = k.split('_') if part[0] == 'a' and part[1] == 'b': l.append(k) >>> l ['a_b_c', 'a_b_m'] . Facundo Bitácora De Vuelo: http://www.taniquetil.com.ar/plog PyAr - Python Argentina: http://pyar.decode.com.ar/ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ADVERTENCIA. La información contenida en este mensaje y cualquier archivo anexo al mismo, son para uso exclusivo del destinatario y pueden contener información confidencial o propietaria, cuya divulgación es sancionada por la ley. Si Ud. No es uno de los destinatarios consignados o la persona responsable de hacer llegar este mensaje a los destinatarios consignados, no está autorizado a divulgar, copiar, distribuir o retener información (o parte de ella) contenida en este mensaje. Por favor notifíquenos respondiendo al remitente, borre el mensaje original y borre las copias (impresas o grabadas en cualquier medio magnético) que pueda haber realizado del mismo. Todas las opiniones contenidas en este mail son propias del autor del mensaje y no necesariamente coinciden con las de Telefónica Comunicaciones Personales S.A. o alguna empresa asociada. Los mensajes electrónicos pueden ser alterados, motivo por el cual Telefónica Comunicaciones Personales S.A. no aceptará ninguna obligación cualquiera sea el resultante de este mensaje. Muchas Gracias. From aragorn en pythonhispano.org Wed Dec 22 15:12:09 2004 From: aragorn en pythonhispano.org (Jose) Date: Wed, 22 Dec 2004 15:12:09 +0100 Subject: cx_Oracle + py2exe In-Reply-To: <002d01c4e822$5c706b60$640010ac@nombref31twj9b> References: <002d01c4e822$5c706b60$640010ac@nombref31twj9b> Message-ID: <1103724729.4208.79.camel@demeter.speriaitc.com> El mié, 22-12-2004 a las 13:32, Amm-Python escribió: > En artículos y foros si que he visto categorías. En las recetas no, por > eso lo decía. Además hay cuatro, por lo que ignoro si es que está parado > el tema, o es que la población Pythosista pasa del tema por dejadez o > desconocimiento. Me temo que se trate del primer motivo. > Por lo que dices entiendo que está vivo y pretende ser una herramienta > útil a nuestra comunidad. Esa es nuestra intención. > Por mi parte me pongo manos a la obra. Creo que sería interesante que > intentásemos agregar, cada uno, nuestro granito de arena, poco a poco > podemos generar una base de conocimiento sobre Python importante. > > Un saludo, > Toni. > > P.D. > Por cierto los artículos veo que son los que se publican en > http://www.pythonware.com/daily/ > Pero explicado de que van en castellano. En realidad las noticias se recogen desde diversas fuentes. 'Daily Python' es sólo una de ellas (aunque, a veces, es la que ofrece el mayor número de 'entradas'). > Felicidades al que se lo curra, buen trabajo. En más de una ocasión si > no llega a ser por él no hubiera sido capaz saber de que iba. Gracias. > Por cierto, quieres decir que la gente ya es consciente de que existe > pythonhispano? Yo creo que sí. Se anunció en esta lista, en barrapunto.com y en python.org. Saludos, Jose ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From Andres.Moya en hispalinux.es Wed Dec 22 15:11:22 2004 From: Andres.Moya en hispalinux.es (Andres Moya) Date: Wed, 22 Dec 2004 15:11:22 +0100 Subject: Busqueda por clave parcial. In-Reply-To: <200412221500.46429.pepe@diselpro.com> References: <200412221500.46429.pepe@diselpro.com> Message-ID: <41C9808A.3000800@hispalinux.es> Pepe Aracil wrote: >Hola. > >Tengo un diccionario cuyas claves son del tipo "seccion_subseccion_elemento". > >Me gustaría poder obtener una lista con todas las claves que coincidan a >partir de una clave parcial como "seccion_subseccion" > > ¿Y si haces un diccionario clasificado por "seccion_subseccion", y las hojas del mismo son a su vez diccionarios clasificados por "elemento"? -- Andres.Moya en hispalinux.es From py en ch3m4.org Wed Dec 22 15:15:26 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Wed, 22 Dec 2004 15:15:26 +0100 Subject: Busqueda por clave parcial. In-Reply-To: <200412221500.46429.pepe@diselpro.com> References: <200412221500.46429.pepe@diselpro.com> Message-ID: <200412221515.29828.py@ch3m4.org> El Miércoles, 22 de Diciembre de 2004 15:00, Pepe Aracil escribió: > Tengo un diccionario cuyas claves son del tipo > "seccion_subseccion_elemento". > > Me gustaría poder obtener una lista con todas las claves que coincidan a > partir de una clave parcial como "seccion_subseccion" > > ahora lo que hago es volcar todas las claves con .keys() en una lista, > ordenar esta lista y buscar la porción de clave con el método index() de la > lista. > > ¿Hay alguna forma mejor de buscar claves parciales en un diccionario? Hay algo mejor: [ k for k in D.keys() if k.startswith("seccion_subseccion") ] > ¿Existe algún método optimizado para buscar en una lista ordenada? Así dicho, sí que hay métodos optimizados para búsquedas en listas ordenadas. Suelen ser "ejemplo de libro" y los puedes encontrar en cualquier libro de algoritmos de ordenación y búsquedas. ------------ 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 marta en elastico.net Wed Dec 22 14:37:09 2004 From: marta en elastico.net (marta en elastico.net) Date: Wed, 22 Dec 2004 14:37:09 +0100 Subject: Quiero Aprender Python!!!! In-Reply-To: <20041222021527.78256.qmail@web51107.mail.yahoo.com> References: <20041222021527.78256.qmail@web51107.mail.yahoo.com> Message-ID: <20041222133709.GB11708@huda> Hace unos meses empec? yo tambi??n y me encontr?? con el mis problema, asi que agradezco las referencias. Si tu ingless no es muy terrible te recomiendo que te leas "How to Think Like a Computer Scientist". Es facil de leer, los ejemplos son sencillos y es muy entretenido. No he encontrado ninguna traduccion aunque me he propuesto hacerla yo misma si consigo programar en condiciones para la primavera. http://www.ibiblio.org/obp/thinkCSpy/ Hace solo unas semanas que me apunte a la lista de correo y recibo con gusto vuestros mails aunque, de momento, solo entiendo la mitad. Es bueno saber que podemos hacer consultas de novatos. Gracias! mxxx! On (21/12/04 18:15), Mauricio Zarce?fffff1o wrote: > To: python-es en aditel.org > From: Mauricio Zarce?fffff1o > Subject: [Python-es] Quiero Aprender Python!!!! > Reply-To: La lista de python en castellano > > Hola soy un programador algo novato y tengo muchas > ganas de aprender a programar en python, si me pueden > decir donde conseguir manuales, tutoriales y ejemplos > de preferencia en espa?ol, porque la mayoria que he > encontrado son en ingles. Gracias de antemano. > > WICHOX. > > __________________________________________________ > Do You Yahoo!? > Tired of spam? Yahoo! Mail has the best spam protection around > http://mail.yahoo.com > _______________________________________________ > 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 hernan en orgmf.com.ar Wed Dec 22 15:52:55 2004 From: hernan en orgmf.com.ar (=?utf-8?Q?Hern=C3=A1n_Mart=C3=ADnez_Foffani?=) Date: Wed, 22 Dec 2004 15:52:55 +0100 Subject: Quiero Aprender Python!!!! In-Reply-To: <20041222133709.GB11708@huda> References: <20041222133709.GB11708@huda> Message-ID: > Si tu ingless no es muy terrible te recomiendo > que te leas "How to Think Like a Computer Scientist". Es facil de > leer, los ejemplos son sencillos y es muy entretenido. No he > encontrado ninguna traduccion aunque me he propuesto hacerla yo misma > si consigo programar en condiciones para la primavera. > > http://www.ibiblio.org/obp/thinkCSpy/ > Ese libro es buenísimo. Había un proyecto de traducción dando vueltas por ahí pero no se qué pasó. Sería *EXCELENTE* disponer de una versión en castellano. -H. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From FBatista en uniFON.com.ar Wed Dec 22 15:55:59 2004 From: FBatista en uniFON.com.ar (Batista, Facundo) Date: Wed, 22 Dec 2004 11:55:59 -0300 Subject: Quiero Aprender Python!!!! Message-ID: [marta en elastico.net] #- Hace solo unas semanas que me apunte a la lista de correo y #- recibo con #- gusto vuestros mails aunque, de momento, solo entiendo la mitad. Es #- bueno saber que podemos hacer consultas de novatos. Las preguntas de "novatos" son bienvenidas, así como la de "expertos". Y pongo ambas palabras entre comillas porque uno puede ser un especialista en un tema y un completo ignorante en otro. Pero para eso está la lista, para ayudarnos unos a otros. El único detalle, y lo que muchas veces complica el poder ayudar, es la manera de hacer la pregunta. Creo que es vital para todos los que participamos en listas de correos leer "Cómo hacer preguntas de manera inteligente" de Eric S. Raymond. - Castellano: http://www.sindominio.net/ayuda/preguntas-inteligentes.html - Original: http://www.catb.org/~esr/faqs/smart-questions.html Y ya que estamos, si estás en Argentina te puedes venir a tomar unas cervezas (o lo que gustes) mientras charlamos de Python, como parte de PyAr: http://pyar.decode.com.ar/. Saludos! . Facundo Bitcora De Vuelo: http://www.taniquetil.com.ar/plog PyAr - Python Argentina: http://pyar.decode.com.ar/ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ADVERTENCIA. La información contenida en este mensaje y cualquier archivo anexo al mismo, son para uso exclusivo del destinatario y pueden contener información confidencial o propietaria, cuya divulgación es sancionada por la ley. Si Ud. No es uno de los destinatarios consignados o la persona responsable de hacer llegar este mensaje a los destinatarios consignados, no está autorizado a divulgar, copiar, distribuir o retener información (o parte de ella) contenida en este mensaje. Por favor notifíquenos respondiendo al remitente, borre el mensaje original y borre las copias (impresas o grabadas en cualquier medio magnético) que pueda haber realizado del mismo. Todas las opiniones contenidas en este mail son propias del autor del mensaje y no necesariamente coinciden con las de Telefónica Comunicaciones Personales S.A. o alguna empresa asociada. Los mensajes electrónicos pueden ser alterados, motivo por el cual Telefónica Comunicaciones Personales S.A. no aceptará ninguna obligación cualquiera sea el resultante de este mensaje. Muchas Gracias. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From pepe en diselpro.com Wed Dec 22 16:18:27 2004 From: pepe en diselpro.com (Pepe Aracil) Date: Wed, 22 Dec 2004 16:18:27 +0100 Subject: Busqueda por clave parcial. In-Reply-To: <41C9808A.3000800@hispalinux.es> References: <200412221500.46429.pepe@diselpro.com> <41C9808A.3000800@hispalinux.es> Message-ID: <200412221618.27647.pepe@diselpro.com> El Miércoles, 22 de Diciembre de 2004 15:11, Andres Moya escribió: > Pepe Aracil wrote: > >Hola. > > > >Tengo un diccionario cuyas claves son del tipo > > "seccion_subseccion_elemento". > > > >Me gustaría poder obtener una lista con todas las claves que coincidan a > >partir de una clave parcial como "seccion_subseccion" > > ¿Y si haces un diccionario clasificado por "seccion_subseccion", y las > hojas del mismo son a su vez diccionarios clasificados por "elemento"? Pues si... lo mejor es que me haga una estructura de diccionarios anidados. P. Ej. para acceder al elemento "x_y_z" hacer : objeto=secciones["x"]["y"]["z"] Saludos. From pepe en diselpro.com Wed Dec 22 16:24:31 2004 From: pepe en diselpro.com (Pepe Aracil) Date: Wed, 22 Dec 2004 16:24:31 +0100 Subject: Busqueda por clave parcial. In-Reply-To: <200412221515.29828.py@ch3m4.org> References: <200412221500.46429.pepe@diselpro.com> <200412221515.29828.py@ch3m4.org> Message-ID: <200412221624.31831.pepe@diselpro.com> El Miércoles, 22 de Diciembre de 2004 15:15, Chema Cortés escribió: > > > [ k for k in D.keys() if k.startswith("seccion_subseccion") ] Mira que son elegantes las listas comprensivas ;) .. a ver si alguna vez hago la conexión neuronal permanente para aplicarlas de forma automática allí donde se requieren. El problema es que no quiero recorrerme todas las claves con un bucle hecho en python por problemas de velocidad. Al final lo haré con diccionarios anidados como decía Andres Moya > > > ¿Existe algún método optimizado para buscar en una lista ordenada? > > Así dicho, sí que hay métodos optimizados para búsquedas en listas > ordenadas. Suelen ser "ejemplo de libro" y los puedes encontrar en > cualquier libro de algoritmos de ordenación y búsquedas. No he formulado bien la pregunta... ya sé que es una simple búsqueda por dicotomia, pero mi pregunta se refería a si ya existía algo hecho en python. Saludos. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From faltet en carabos.com Wed Dec 22 16:50:39 2004 From: faltet en carabos.com (Francesc Altet) Date: Wed, 22 Dec 2004 16:50:39 +0100 Subject: Busqueda por clave parcial. In-Reply-To: <200412221500.46429.pepe@diselpro.com> References: <200412221500.46429.pepe@diselpro.com> Message-ID: <200412221650.39452.faltet@carabos.com> A Dimecres 22 Desembre 2004 15:00, Pepe Aracil va escriure: > ¿Existe algún método optimizado para buscar en una lista ordenada? Hay un modulito para buscar en listas ordenadas que sigue el algoritmo de bisección que te reduce de un tiempo de búsqueda de N a log2(N). http://docs.python.org/lib/module-bisect.html HTH, -- Francesc Altet   >qo<   http://www.carabos.com/ Cárabos Coop. V.   V  V   Enjoy Data                     "" From Andres.Moya en hispalinux.es Wed Dec 22 16:52:08 2004 From: Andres.Moya en hispalinux.es (Andres Moya) Date: Wed, 22 Dec 2004 16:52:08 +0100 Subject: Busqueda por clave parcial. In-Reply-To: <200412221624.31831.pepe@diselpro.com> References: <200412221500.46429.pepe@diselpro.com> <200412221515.29828.py@ch3m4.org> <200412221624.31831.pepe@diselpro.com> Message-ID: <41C99828.5040608@hispalinux.es> Pepe Aracil wrote: >El Miércoles, 22 de Diciembre de 2004 15:15, Chema Cortés escribió: > > >>[ k for k in D.keys() if k.startswith("seccion_subseccion") ] >> >> > >Mira que son elegantes las listas comprensivas ;) .. a ver si alguna vez hago >la conexión neuronal permanente para aplicarlas de forma automática allí >donde se requieren. > > > Jeje, sí que lo son. Y a mí que, cuando estudiaba, las cosas de éstas en lisp no me convencían mucho... >El problema es que no quiero recorrerme todas las claves con un bucle hecho en >python por problemas de velocidad. > >Al final lo haré con diccionarios anidados como decía Andres Moya > > Pues en este caso sí que es mejor lo de los diccionarios anidados, pero en general, las construcciones de esta forma [ k for k in D.keys() if k.startswith("seccion_subseccion") ] tienen la ventaja de que el bucle en realidad no es python, sino el código C que implementa la comprensión de la lista, con lo cual es muy rápido al no tener que andar interpretando. >>>¿Existe algún método optimizado para buscar en una lista ordenada? >>> >>> >>Así dicho, sí que hay métodos optimizados para búsquedas en listas >>ordenadas. Suelen ser "ejemplo de libro" y los puedes encontrar en >>cualquier libro de algoritmos de ordenación y búsquedas. >> >> >No he formulado bien la pregunta... ya sé que es una simple búsqueda por >dicotomia, pero mi pregunta se refería a si ya existía algo hecho en python. > > Creo que lo que buscas es esto: http://docs.python.org/lib/module-bisect.html La librería estándar de python tiene unos algoritmos tremendamente elegantes. Mira por ejemplo: http://docs.python.org/lib/module-itertools.html http://docs.python.org/lib/module-array.html http://docs.python.org/lib/module-heapq.html http://docs.python.org/lib/module-heapq.html Con este tipo de cosas, y herramientas como Psyco, estoy convencido de que se puede hacer código python super compacto y elegante, y más eficiente que si se hiciera directamente en C. Cada día me gusta python un poco más :D -- Andres.Moya en hispalinux.es From aragorn en pythonhispano.org Wed Dec 22 16:59:57 2004 From: aragorn en pythonhispano.org (Jose) Date: Wed, 22 Dec 2004 16:59:57 +0100 Subject: Quiero Aprender Python!!!! In-Reply-To: References: Message-ID: <1103731196.6680.179.camel@demeter.speriaitc.com> El mié, 22-12-2004 a las 15:52, Hernán Martínez Foffani escribió: > > Si tu ingless no es muy terrible te recomiendo > > que te leas "How to Think Like a Computer Scientist". Es facil de > > leer, los ejemplos son sencillos y es muy entretenido. No he > > encontrado ninguna traduccion aunque me he propuesto hacerla yo misma > > si consigo programar en condiciones para la primavera. > > > > http://www.ibiblio.org/obp/thinkCSpy/ > > > > Ese libro es buenísimo. Había un proyecto de traducción dando > vueltas por ahí pero no se qué pasó. > Sería *EXCELENTE* disponer de una versión en castellano. Pues la tienes (con algún que otro problemilla) en el CVS http://cvs.sourceforge.net/viewcvs.py/*checkout*/thinkcspy/thinkcspy/spanish/thinkCSpy.pdf?rev=1.2 . Saludos, Jose ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From py en ch3m4.org Wed Dec 22 17:01:42 2004 From: py en ch3m4.org (Chema =?iso-8859-15?q?Cort=E9s?=) Date: Wed, 22 Dec 2004 17:01:42 +0100 Subject: Busqueda por clave parcial. In-Reply-To: <200412221624.31831.pepe@diselpro.com> References: <200412221500.46429.pepe@diselpro.com> <200412221515.29828.py@ch3m4.org> <200412221624.31831.pepe@diselpro.com> Message-ID: <200412221701.45815.py@ch3m4.org> El Miércoles, 22 de Diciembre de 2004 16:24, Pepe Aracil escribió: > El Miércoles, 22 de Diciembre de 2004 15:15, Chema Cortés escribió: > > [ k for k in D.keys() if k.startswith("seccion_subseccion") ] > > > Mira que son elegantes las listas comprensivas ;) .. a ver si alguna vez > hago la conexión neuronal permanente para aplicarlas de forma automática > allí donde se requieren. > > > El problema es que no quiero recorrerme todas las claves con un bucle hecho > en python por problemas de velocidad. > > Al final lo haré con diccionarios anidados como decía Andres Moya Entonces es que no comprendí bien tu objetivo. Tal vez buscabas algo así: class DictTrino(dict): def __getitem__(self, lista): return dict.__getitem__(self, "_".join(lista)) >>> d={"1_2_3":100,"1_2_4":200} >>> d=DictTrino(d) >>> d[ ("1","2","3") ] 100 >>> d[ ("1","2","4") ] 200 >>> > > > ¿Existe algún método optimizado para buscar en una lista ordenada? > > > > Así dicho, sí que hay métodos optimizados para búsquedas en listas > > ordenadas. Suelen ser "ejemplo de libro" y los puedes encontrar en > > cualquier libro de algoritmos de ordenación y búsquedas. > > No he formulado bien la pregunta... ya sé que es una simple búsqueda por > dicotomia, pero mi pregunta se refería a si ya existía algo hecho en > python. Supongo que lo más adecuado es utilizar el módulo 'bisect', aunque resulta más cómodo utilizar el BTree del módulo 'bsddb'. ------------ 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 fvillarroel en yahoo.com Wed Dec 22 17:51:33 2004 From: fvillarroel en yahoo.com (FERNANDO VILLARROEL) Date: Wed, 22 Dec 2004 08:51:33 -0800 (PST) Subject: TAB aún no funciona In-Reply-To: <1103656280.41c8755844662@www.utp.edu.co> References: <1103656280.41c8755844662@www.utp.edu.co> Message-ID: <20041222165133.26830.qmail@web41215.mail.yahoo.com> Estas haciendo tus ventanas gon wxGlade?, cuentame haber si te puedo mandar un ejemplo....OK --- dimabe en utp.edu.co wrote: > Fernando, gracias por contestar, pero tampoco me > funcion? el TAB con la > propiedad > style=wx.TE_PROCESS_ENTER|wx.TE_PROCESS_TAB, en > realidad es muy > extra?o porque el demo del wxPython me funciona bien > pero en las ventanas que > yo hago no. > > > > Message: 10 > > Date: Tue, 21 Dec 2004 10:22:54 -0800 (PST) > > From: FERNANDO VILLARROEL > > Subject: Re: [Python-es] TAB no funciona > > To: La lista de python en castellano > > > Message-ID: > <20041221182254.69936.qmail en web41205.mail.yahoo.com> > > Content-Type: text/plain; charset=us-ascii > > > > Hola si funciona te doy un ejemplo, y lo tengo > > corriendo en linux: > > > > self.text_ctrl_7 = wx.TextCtrl(self, -1, "", > > style=wx.TE_PROCESS_ENTER|wx.TE_PROCESS_TAB) > > > > Chequea que estas propiedades en tus cajas de > textos. > > > > Si lo estas generando con wxGlade en la pestana > que > > dice Widget seleccionas las propiedades que > quieres > > que tenga tu control. > > > > Espero te sirva. > > --- dimabe en utp.edu.co wrote: > > > > > Hola lista! > > > > > > Resulta que tengo un Frame en el que hay varios > > > TextCtrl, pero la tecla TAB que > > > generalmente se utiliza para navegar sobre los > > > controles no funciona en Linux > > > aunque en Windows s?. ?Cu?l puede ser el > problema? > > > ?Ser? que los Sizers tienen > > > algo que ver? > > > > > > Gracias por su colaboraci?n > > > > > > > > > > > > > > > > > ---------------------------------------------------------------- > This message was sent using IMP, the Internet > Messaging Program. > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > __________________________________ Do you Yahoo!? The all-new My Yahoo! - Get yours free! http://my.yahoo.com ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From lcatalin en siadv.com Wed Dec 22 14:22:12 2004 From: lcatalin en siadv.com (Catalin Lungu) Date: Wed, 22 Dec 2004 14:22:12 +0100 Subject: Llamar una funcion desde variable References: <20041222111434.3da6bcab.o.merchan@bussitel.es> Message-ID: <002001c4e82a$61db50d0$c801a8c0@catalin> Si le pones prueba = eval('imprime') entonces te va a funcionar. ----- Original Message ----- From: "Oscar Merchan" To: "Lista de Python" Sent: Wednesday, December 22, 2004 11:14 AM Subject: [Python-es] Llamar una funcion desde variable > > Buenas a todos. > > > Ya se que lo voy a preguntar es un poco raro, y ni tan siquiera se si ahi > alguna forma de hacerlo. > Bueno haya va, quisiera poder ejecutar una funcion a raiz del valor de una > variable, me esplico con un ejemplo .- > > > def imprime(): <-- Fundion > print 'chorrada' > > prueba = 'imprime' <-- Variable, cuyo valor es el mismo nombre que la > funcion > > prueba() <-- Ya se que esto no funciona pero es para que veais lo que > pretendo > > La idea de todo esto es que quiero hacer un programa en el cual yo sepa lo > minimo, y que sea el usuario mediante una configuracion > el que proporcione todo la informacion, en este caso se trata de procesar > unos ficheros de log's, y quiero dar solo la base, y que > luego el usuario a raiz de la configuracion que proporcione hacer una cosa > u otra pero siempre teniendo el usuario el control. > > Me esplico, imaginar una linea de log en la cual os dice que vuestra > maquina se ha apagado, y que quieres saber el tiempo que ha estado > encendida, supongamos que la informacion de apagado sea CPU OFF, bien > quiero dar al usuario la oportunidad que el me diga que hacer, o sea > que si quiere que se sepa el tiempo de encendio que ponga en la > configuracion CPU OFF = @encendido ( donde @encendido seria el nombre de > la > funcion ) o si lo que quiere es CPU OFF = @descartalo > > Basicamente la idea es dejar que el usuario utilice el programa segun le > convenga cambiando lo minimo posbile de el, y en mi caso dejarle > las funciones definidas y que el segun quiera procesar cada mensaje que le > ponga una cosa u otra sin tener que preocuparme yo de cada cambio > que quieran hacer. > > > > Gracias, Oscar Merchan. > > P.D .- Tambien se admite ideas de otras formas de hacerlo :-D > -------------------------------------------------------------------------------- _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From lcatalin en siadv.com Wed Dec 22 17:28:33 2004 From: lcatalin en siadv.com (Catalin Lungu) Date: Wed, 22 Dec 2004 17:28:33 +0100 Subject: Busqueda por clave parcial. References: <200412221500.46429.pepe@diselpro.com> Message-ID: <001001c4e843$49bccf60$d900a8c0@catalin> Podrías hacerlo de esta forma no si es mas rápida pero la puedes probar. for key in dct.keys(): if key.startswith("seccion_subseccion"): #tu código Saludos. ----- Original Message ----- From: "Pepe Aracil" To: Sent: Wednesday, December 22, 2004 3:00 PM Subject: [Python-es] Busqueda por clave parcial. Hola. Tengo un diccionario cuyas claves son del tipo "seccion_subseccion_elemento". Me gustaría poder obtener una lista con todas las claves que coincidan a partir de una clave parcial como "seccion_subseccion" ahora lo que hago es volcar todas las claves con .keys() en una lista, ordenar esta lista y buscar la porción de clave con el método index() de la lista. ¿Hay alguna forma mejor de buscar claves parciales en un diccionario? ¿Existe algún método optimizado para buscar en una lista ordenada? Gracias. _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From Andres.Moya en hispalinux.es Wed Dec 22 18:34:37 2004 From: Andres.Moya en hispalinux.es (Andres Moya) Date: Wed, 22 Dec 2004 18:34:37 +0100 Subject: Llamar una funcion desde variable In-Reply-To: <002001c4e82a$61db50d0$c801a8c0@catalin> References: <20041222111434.3da6bcab.o.merchan@bussitel.es> <002001c4e82a$61db50d0$c801a8c0@catalin> Message-ID: <41C9B02D.6030809@hispalinux.es> Catalin Lungu wrote: > Si le pones prueba = eval('imprime') entonces te va a funcionar. También, pero es más peligroso. Si el string viene del exterior, pueden meter código python que haga cositas feas. Es mejor buscar la función y luego llamarla. -- Andres.Moya en hispalinux.es From mlacunza en gmail.com Wed Dec 22 18:51:09 2004 From: mlacunza en gmail.com (Mario Lacunza) Date: Wed, 22 Dec 2004 12:51:09 -0500 Subject: [OT] Re: =?ISO-8859-15?Q?Gram=E1tica?= In-Reply-To: <41C93C02.7060503@wanadoo.es> References: <1103670531.3579.16.camel@lobezno> <200412220017.43886.jesus@roncero.org> <41C8B6E8.7000009@wanadoo.es> <1103706029.4531.17.camel@cynar.proteus> <41C93C02.7060503@wanadoo.es> Message-ID: <41C9B40D.5070407@gmail.com> Y q es Tiquismiquis??? Espero q Hortografia haya sido a proposito??? o tenemos q definir HORTO....??? JJejejjejeje Un saludo de Navidad para toda la lista!!! Saludos / Best regards Mario Lacunza Email: mlacunza en gmail.com Lima - Peru Alberto Curro escribió: > >> No hay que ser tan tiquismiquis, cada uno que haga lo que pueda. El que >> esté libre de culpa... >> Es 'Hala', no 'ala' >> ---------------------- >> hala. >> >> (Voz expr.). >> >> 1. interj. U. para infundir aliento >> o meter prisa. >> >> 2. interj. U. para mostrar sorpresa. >> >> 3. interj. U. para llamar. >> >> 4. interj. U. para denotar la >> persistencia en una marcha. U. >> repetida. >> >> >> > > XDDDDDDDDDDDD.... > > Tienes razón. Pero yo lo escribo por la costumbre. En mi lengua > natal (gallego) la expresión es "Ala", no "Hala". Aunque sé > perfectamente que debería ser con h, nunca me acuerdo. Conozco mucha > gente de regiones en las cuales el bilingüismo es habitual, y a todos > nos pasa lo mismo. Otra cosa es un " a ver", frente a un "haber" (por > verbo), o cosas peores. > > De todos modos, no soy tiquismiquis por serlo. Es que deberías ver > algunas cosas que caen por mi mesa en la oficina. Créeme, te podrías > asustar... ;) > > 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 jesus en roncero.org Wed Dec 22 19:24:35 2004 From: jesus en roncero.org (=?iso-8859-15?q?Jes=FAs_Roncero_Franco?=) Date: Wed, 22 Dec 2004 19:24:35 +0100 Subject: [OT] Re: =?iso-8859-15?q?Gram=E1tica?= In-Reply-To: <41C9B40D.5070407@gmail.com> References: <41C93C02.7060503@wanadoo.es> <41C9B40D.5070407@gmail.com> Message-ID: <200412221924.36151.jesus@roncero.org> On Wednesday, 22 de December de 2004 18:51, Mario Lacunza wrote: > Y q es Tiquismiquis??? golan en terminus:/tmp$ drae tiquismiquis tiquismiquis. (Del lat. macarrónico tichi michi, alterac. vulg. de tibi, michi, [lat. mihi], para ti, para mí). 1. m. pl. Escrúpulos o reparos vanos o de poquísima importancia. 2. m. pl. coloq. Expresiones o dichos ridículamente corteses o afectados. 3. com. Persona que hace o dice tiquismiquis. Real Academia Española © Todos los derechos reservados -- temp: http://temp.roncero.org Out: 12.62 ºC -- In: 21.81 ºC ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From fvillarroel en yahoo.com Wed Dec 22 20:08:27 2004 From: fvillarroel en yahoo.com (FERNANDO VILLARROEL) Date: Wed, 22 Dec 2004 11:08:27 -0800 (PST) Subject: Recuperar fechas Message-ID: <20041222190827.97651.qmail@web41208.mail.yahoo.com> Hola tengo un problema cuando recupero fechas de una BD, me lanza la siguiente excepcion: Traceback (most recent call last): File "/home/developer/chevalier/MnuClche.py", line 445, in OnBuscar self.rut,self.dv,self.rz,self.di,self.co,self.pc,self.gi,self.tc,self.nc,self.ncc,self.ba,self.te1,self.te2,self.fc,self.com,self.es=cur.fetchone() File "/usr/lib/python2.3/site-packages/pyPgSQL/PgSQL.py", line 3139, in fetchone return self.__fetchOneRow() File "/usr/lib/python2.3/site-packages/pyPgSQL/PgSQL.py", line 2776, in __fetchOneRow _r.getvalue(self._idx_, _i))) File "/usr/lib/python2.3/site-packages/pyPgSQL/PgSQL.py", line 804, in typecast return DateTime.ISO.ParseAny(value) File "/usr/lib/python2.3/site-packages/mx/DateTime/ISO.py", line 313, in ParseAny raise ValueError,'unsupported format: "%s"' % isostring ValueError: unsupported format: "21-12-2004" Como lo puedo solucionar? Fernando Villarroel N. __________________________________ Do you Yahoo!? Meet the all-new My Yahoo! - Try it today! http://my.yahoo.com ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From jeremiasc en gmail.com Wed Dec 22 20:31:00 2004 From: jeremiasc en gmail.com (Jeremias) Date: Wed, 22 Dec 2004 16:31:00 -0300 Subject: =?ISO-8859-1?Q?Re:_[OT]_Re:__Gram=E1tica?= In-Reply-To: <200412221924.36151.jesus@roncero.org> References: <41C93C02.7060503@wanadoo.es> <41C9B40D.5070407@gmail.com> <200412221924.36151.jesus@roncero.org> Message-ID: Talvez sea OT, a no ser que este hecho en Python, pero me gusto el 'drae' lo podes pasar. ;-) Saludos. On Wed, 22 Dec 2004 19:24:35 +0100, Jesús Roncero Franco wrote: > On Wednesday, 22 de December de 2004 18:51, Mario Lacunza wrote: > > Y q es Tiquismiquis??? > > golan en terminus:/tmp$ drae tiquismiquis > > tiquismiquis. > (Del lat. macarrónico tichi michi, alterac. vulg. de tibi, michi, > [lat. mihi], para ti, para mí). > 1. m. pl. Escrúpulos o reparos vanos o de poquísima importancia. > 2. m. pl. coloq. Expresiones o dichos ridículamente corteses o > afectados. > 3. com. Persona que hace o dice tiquismiquis. > > Real Academia Española © Todos los derechos reservados > > -- > temp: http://temp.roncero.org > Out: 12.62 ºC -- In: 21.81 ºC > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > > > From jesus en roncero.org Wed Dec 22 20:35:47 2004 From: jesus en roncero.org (=?iso-8859-1?q?Jes=FAs_Roncero_Franco?=) Date: Wed, 22 Dec 2004 20:35:47 +0100 Subject: [OT] Re: =?iso-8859-1?q?Gram=E1tica?= In-Reply-To: References: <200412221924.36151.jesus@roncero.org> Message-ID: <200412222035.48001.jesus@roncero.org> On Wednesday, 22 de December de 2004 20:31, Jeremias wrote: > Talvez sea OT, a no ser que este hecho en Python, pero me gusto el > 'drae' lo podes pasar. ;-) Lo tienes en bulma (http://bulma.net). No recuerdo la URL correcta, pero es fácil de encontrar. Es un script en bash. -- temp: http://temp.roncero.org Out: 11.50 ºC -- In: 22.12 ºC From FBatista en uniFON.com.ar Wed Dec 22 20:48:35 2004 From: FBatista en uniFON.com.ar (Batista, Facundo) Date: Wed, 22 Dec 2004 16:48:35 -0300 Subject: Recuperar fechas Message-ID: [FERNANDO VILLARROEL] #- File #- "/usr/lib/python2.3/site-packages/pyPgSQL/PgSQL.py", #- line 804, in typecast #- return DateTime.ISO.ParseAny(value) #- File #- "/usr/lib/python2.3/site-packages/mx/DateTime/ISO.py", #- line 313, in ParseAny #- raise ValueError,'unsupported format: "%s"' % #- isostring #- ValueError: unsupported format: "21-12-2004" #- #- Como lo puedo solucionar? El tema es que la función DateTime.ISO.ParseAny() no soporta ese formato. Lamentablemente, DateTime no es un módulo estándar (a menos que estés importando algo estándar y cambiándole el nombre ("import datetime as DateTime", por ejemplo)). Sin saber nada de ese módulo no podremos ayudarte. . Facundo Bitácora De Vuelo: http://www.taniquetil.com.ar/plog PyAr - Python Argentina: http://pyar.decode.com.ar/ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ADVERTENCIA. La información contenida en este mensaje y cualquier archivo anexo al mismo, son para uso exclusivo del destinatario y pueden contener información confidencial o propietaria, cuya divulgación es sancionada por la ley. Si Ud. No es uno de los destinatarios consignados o la persona responsable de hacer llegar este mensaje a los destinatarios consignados, no está autorizado a divulgar, copiar, distribuir o retener información (o parte de ella) contenida en este mensaje. Por favor notifíquenos respondiendo al remitente, borre el mensaje original y borre las copias (impresas o grabadas en cualquier medio magnético) que pueda haber realizado del mismo. Todas las opiniones contenidas en este mail son propias del autor del mensaje y no necesariamente coinciden con las de Telefónica Comunicaciones Personales S.A. o alguna empresa asociada. Los mensajes electrónicos pueden ser alterados, motivo por el cual Telefónica Comunicaciones Personales S.A. no aceptará ninguna obligación cualquiera sea el resultante de este mensaje. Muchas Gracias. From pabloreysobral en gmail.com Wed Dec 22 21:05:53 2004 From: pabloreysobral en gmail.com (Pablo Rey Sobral) Date: Wed, 22 Dec 2004 21:05:53 +0100 Subject: Recuperar fechas In-Reply-To: <20041222190827.97651.qmail@web41208.mail.yahoo.com> References: <20041222190827.97651.qmail@web41208.mail.yahoo.com> Message-ID: <4c01c85a041222120567447656@mail.gmail.com> Hola, La fecha la tienes formateada al revés normalmente se escriben año-mes-dia y no día mes año. No se si será ese el problema. Un saludo. On Wed, 22 Dec 2004 11:08:27 -0800 (PST), FERNANDO VILLARROEL wrote: > Hola tengo un problema cuando recupero fechas de una > BD, me lanza la siguiente excepcion: > > Traceback (most recent call last): > File "/home/developer/chevalier/MnuClche.py", line > 445, in OnBuscar > > self.rut,self.dv,self.rz,self.di,self.co,self.pc,self.gi,self.tc,self.nc,self.ncc,self.ba,self.te1,self.te2,self.fc,self.com,self.es=cur.fetchone() > File > "/usr/lib/python2.3/site-packages/pyPgSQL/PgSQL.py", > line 3139, in fetchone > return self.__fetchOneRow() > File > "/usr/lib/python2.3/site-packages/pyPgSQL/PgSQL.py", > line 2776, in __fetchOneRow > _r.getvalue(self._idx_, _i))) > File > "/usr/lib/python2.3/site-packages/pyPgSQL/PgSQL.py", > line 804, in typecast > return DateTime.ISO.ParseAny(value) > File > "/usr/lib/python2.3/site-packages/mx/DateTime/ISO.py", > line 313, in ParseAny > raise ValueError,'unsupported format: "%s"' % > isostring > ValueError: unsupported format: "21-12-2004" > > Como lo puedo solucionar? > > Fernando Villarroel N. > > > __________________________________ > Do you Yahoo!? > Meet the all-new My Yahoo! - Try it today! > http://my.yahoo.com > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > > > From fvillarroel en yahoo.com Wed Dec 22 21:14:44 2004 From: fvillarroel en yahoo.com (FERNANDO VILLARROEL) Date: Wed, 22 Dec 2004 12:14:44 -0800 (PST) Subject: Recuperar fechas In-Reply-To: <4c01c85a041222120567447656@mail.gmail.com> References: <4c01c85a041222120567447656@mail.gmail.com> Message-ID: <20041222201444.68557.qmail@web41215.mail.yahoo.com> Correcto ese es el problema, lo que yo queria hacer es presentar las fechas al usuario en formato dd-mm-a?o; si lo dejo en formato a?o-mes-dia no hay problema, estoy usando el modulo mx.DateTime. Sera posible usar el formato dd-mm-a?o? Fernando --- Pablo Rey Sobral wrote: > Hola, > > La fecha la tienes formateada al rev?s normalmente > se escriben > a?o-mes-dia y no d?a mes a?o. > > No se si ser? ese el problema. > > Un saludo. > > > On Wed, 22 Dec 2004 11:08:27 -0800 (PST), FERNANDO > VILLARROEL > wrote: > > Hola tengo un problema cuando recupero fechas de > una > > BD, me lanza la siguiente excepcion: > > > > Traceback (most recent call last): > > File "/home/developer/chevalier/MnuClche.py", > line > > 445, in OnBuscar > > > > > self.rut,self.dv,self.rz,self.di,self.co,self.pc,self.gi,self.tc,self.nc,self.ncc,self.ba,self.te1,self.te2,self.fc,self.com,self.es=cur.fetchone() > > File > > > "/usr/lib/python2.3/site-packages/pyPgSQL/PgSQL.py", > > line 3139, in fetchone > > return self.__fetchOneRow() > > File > > > "/usr/lib/python2.3/site-packages/pyPgSQL/PgSQL.py", > > line 2776, in __fetchOneRow > > _r.getvalue(self._idx_, _i))) > > File > > > "/usr/lib/python2.3/site-packages/pyPgSQL/PgSQL.py", > > line 804, in typecast > > return DateTime.ISO.ParseAny(value) > > File > > > "/usr/lib/python2.3/site-packages/mx/DateTime/ISO.py", > > line 313, in ParseAny > > raise ValueError,'unsupported format: "%s"' % > > isostring > > ValueError: unsupported format: "21-12-2004" > > > > Como lo puedo solucionar? > > > > Fernando Villarroel N. > > > > > > __________________________________ > > Do you Yahoo!? > > Meet the all-new My Yahoo! - Try it today! > > http://my.yahoo.com > > > > > > _______________________________________________ > > 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 > __________________________________ Do you Yahoo!? Yahoo! Mail - Helps protect you from nasty viruses. http://promotions.yahoo.com/new_mail ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From jeremiasc en gmail.com Wed Dec 22 22:12:12 2004 From: jeremiasc en gmail.com (Jeremias) Date: Wed, 22 Dec 2004 18:12:12 -0300 Subject: SocketServer Message-ID: Hola, disculpenmé si estoy cometiendo un error muy de novato, pero es que lo soy. Les comento, estaba intentando aprender a utilizar el módulo SocketServer y me pasa algo extraño (al menos para mi). La cuestión es que cuando escribo el código en modo interactivo con el Python todo sale de maravilla, pero cuando paso exactamente el mismo código a un archivo, utilizando vim, y lo ejecuto me dice que el módulo SocketServer no tiene un atributo TCPServer. Les paso mi humilde código, recuerden que es sólo para aprender, por ahora: #! /usr/bin/env python2.4 # -*- coding: Latin-1 -*- import SocketServer IP='127.0.0.1' PORT=28128 class H: def __init__(self, req, cl_ad, s): pass def handle(self): print 'H' return 0 T = SocketServer.TCPServer((IP, PORT), H) T.serve_forever() Esto lo he probado en python 2.2, 2.3 y 2.4 con el mismo resultado. :-( Muchas gracias de antemano. Saludos. jrms PD: Felices fiestas !!! From erny en sicem.biz Wed Dec 22 23:25:48 2004 From: erny en sicem.biz (Ernesto Revilla) Date: Wed, 22 Dec 2004 22:25:48 +0000 (UTC) Subject: Empezar con python, SOAP y Apache In-Reply-To: <41C8F841.6080700@supercable.es> References: <41C8F841.6080700@supercable.es> Message-ID: <41F6C746.6030103@sicem.biz> Hola Creo que con el documento que escribí para HispaLinux puedes empezar [1] y las transparencias [2] que contienen cosas que estaban planeadas para el documento pero por falta de tiempo no han sido incluidos. Aunque empieza a hablar de XML-RPC creo que es un buen principio para entender los namespaces del SOAP. También hay un poquito sobre WDSL, pero nada sobre UDDI. Paquetes Python puedes encontrar en Sourceforge [3]. [1] http://www.sicem.biz/personal/erny/python/Seminario%20Python-Webservices%20HispaLinux%202003.pdf [2] http://www.sicem.biz/personal/erny/python/transparenciasTallerWebServices.sxi [3] http://pywebsvcs.sf.net Un cordial saludo, Erny Alfredo Salazar escribió: > Hola a todos. Soy nuevo en el foro y no sé exactamanete como funciona > esto, pero voy a intentar enterarme prontito. > Bueno, allá va mi consulta. Tengo que hacer mi proyecto fin de carrera > (Informática de Gestión) sobre un servicio Web, el cual estará > hospedado en un servidor Apache, utilizará protocolos SOAP y scripts > de python. Y no sé muy bien como hacerlo, la verdad mucha mucha idea > no tengo (o ninguna). He estado estudiando el tema, y mucho, pero no > consigo encontrar buenas herramientas que me permitan desarrollarlo > (hospedar el servicio, WSDL, UDDI, ...). Si alguien pudiera darme > algún consejillo le estaría muy agradecido. Gracias > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > -- Ernesto Revilla sicem sl Pol. Ind. Juncaril, c/ Loja Parc. 7 Local 13 18220 Albolote http://www.sicem.biz Tel: 637 716189 MSN: aerd en mx3.redestb.es ICQ: 163888521 --- avast! Antivirus: Saliente mensaje limpio. Base de datos de Virus (VPS): 0452-1, 22/12/2004 Comprobado en: 25/01/2005 23:25:15 avast! tiene los derechos reservados (c) 2000-2004 ALWIL Software. http://www.avast.com From erny en sicem.biz Wed Dec 22 23:37:00 2004 From: erny en sicem.biz (Ernesto Revilla) Date: Wed, 22 Dec 2004 22:37:00 +0000 (UTC) Subject: SocketServer In-Reply-To: References: Message-ID: <41F6C9F3.2030500@sicem.biz> Por curiosidad: con qué nombre has grabado ese archivo? No será SocketServer, verdad? Erny Jeremias escribió: >Hola, disculpenmé si estoy cometiendo un error muy de novato, pero es >que lo soy. > >Les comento, estaba intentando aprender a utilizar el módulo >SocketServer y me pasa algo extraño (al menos para mi). > >La cuestión es que cuando escribo el código en modo interactivo con el Python >todo sale de maravilla, pero cuando paso exactamente el mismo código a >un archivo, utilizando vim, y lo ejecuto me dice que el módulo >SocketServer no tiene un atributo TCPServer. > >Les paso mi humilde código, recuerden que es sólo para aprender, por ahora: > >#! /usr/bin/env python2.4 ># -*- coding: Latin-1 -*- > >import SocketServer > >IP='127.0.0.1' >PORT=28128 > >class H: > def __init__(self, req, cl_ad, s): > pass > def handle(self): > print 'H' > return 0 > >T = SocketServer.TCPServer((IP, PORT), H) >T.serve_forever() > > >Esto lo he probado en python 2.2, 2.3 y 2.4 con el mismo resultado. :-( > >Muchas gracias de antemano. > >Saludos. > >jrms > >PD: Felices fiestas !!! >_______________________________________________ >Python-es mailing list >Python-es en aditel.org >http://listas.aditel.org/listinfo/python-es > > > -- Ernesto Revilla sicem sl Pol. Ind. Juncaril, c/ Loja Parc. 7 Local 13 18220 Albolote http://www.sicem.biz Tel: 637 716189 MSN: aerd en mx3.redestb.es ICQ: 163888521 --- avast! Antivirus: Saliente mensaje limpio. Base de datos de Virus (VPS): 0452-1, 22/12/2004 Comprobado en: 25/01/2005 23:36:39 avast! tiene los derechos reservados (c) 2000-2004 ALWIL Software. http://www.avast.com From jeremiasc en gmail.com Thu Dec 23 00:01:26 2004 From: jeremiasc en gmail.com (Jeremias) Date: Wed, 22 Dec 2004 20:01:26 -0300 Subject: SocketServer In-Reply-To: <41F6C9F3.2030500@sicem.biz> References: <41F6C9F3.2030500@sicem.biz> Message-ID: :-) exactamente, así lo he llamado. Gracias, ahora queda todo claro, sabía que python no se equivocaba, ese atributo no existe porque esta cargando mi archivo. Estuve dos días dando vueltas, cambie de versiones de python, de pc, de todo menos de nombre de archivo. :-( Moraleja: no llames a tus archivos con el mismo nombre que alguno de python. Muchas gracias. On Tue, 25 Jan 2005 23:36:35 +0100, Ernesto Revilla wrote: > Por curiosidad: con qué nombre has grabado ese archivo? > > No será SocketServer, verdad? > > Erny > > Jeremias escribió: > > >Hola, disculpenmé si estoy cometiendo un error muy de novato, pero es > >que lo soy. > > > >Les comento, estaba intentando aprender a utilizar el módulo > >SocketServer y me pasa algo extraño (al menos para mi). > > > >La cuestión es que cuando escribo el código en modo interactivo con el Python > >todo sale de maravilla, pero cuando paso exactamente el mismo código a > >un archivo, utilizando vim, y lo ejecuto me dice que el módulo > >SocketServer no tiene un atributo TCPServer. > > > >Les paso mi humilde código, recuerden que es sólo para aprender, por ahora: > > > >#! /usr/bin/env python2.4 > ># -*- coding: Latin-1 -*- > > > >import SocketServer > > > >IP='127.0.0.1' > >PORT=28128 > > > >class H: > > def __init__(self, req, cl_ad, s): > > pass > > def handle(self): > > print 'H' > > return 0 > > > >T = SocketServer.TCPServer((IP, PORT), H) > >T.serve_forever() > > > > > >Esto lo he probado en python 2.2, 2.3 y 2.4 con el mismo resultado. :-( > > > >Muchas gracias de antemano. > > > >Saludos. > > > >jrms > > > >PD: Felices fiestas !!! > >_______________________________________________ > >Python-es mailing list > >Python-es en aditel.org > >http://listas.aditel.org/listinfo/python-es > > > > > > > > -- > Ernesto Revilla > sicem sl > Pol. Ind. Juncaril, c/ Loja Parc. 7 Local 13 > 18220 Albolote > http://www.sicem.biz > Tel: 637 716189 > MSN: aerd en mx3.redestb.es > ICQ: 163888521 > > --- > avast! Antivirus: Saliente mensaje limpio. > Base de datos de Virus (VPS): 0452-1, 22/12/2004 > Comprobado en: 25/01/2005 23:36:39 > avast! tiene los derechos reservados (c) 2000-2004 ALWIL Software. > http://www.avast.com > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From marta en elastico.net Wed Dec 22 17:43:28 2004 From: marta en elastico.net (marta en elastico.net) Date: Wed, 22 Dec 2004 17:43:28 +0100 Subject: Quiero Aprender Python!!!! In-Reply-To: <1103731196.6680.179.camel@demeter.speriaitc.com> References: <1103731196.6680.179.camel@demeter.speriaitc.com> Message-ID: <20041222164328.GI11708@huda> gracias! mxxxxxxxxxx! On (22/12/04 16:59), Jose wrote: > To: La lista de python en castellano > From: Jose > Subject: RE: [Python-es] Quiero Aprender Python!!!! > Reply-To: La lista de python en castellano > > El mié, 22-12-2004 a las 15:52, Hernán Martínez Foffani escribió: > > > Si tu ingless no es muy terrible te recomiendo > > > que te leas "How to Think Like a Computer Scientist". Es facil de > > > leer, los ejemplos son sencillos y es muy entretenido. No he > > > encontrado ninguna traduccion aunque me he propuesto hacerla yo misma > > > si consigo programar en condiciones para la primavera. > > > > > > http://www.ibiblio.org/obp/thinkCSpy/ > > > > > > > Ese libro es buenísimo. Había un proyecto de traducción dando > > vueltas por ahí pero no se qué pasó. > > Sería *EXCELENTE* disponer de una versión en castellano. > > Pues la tienes (con algún que otro problemilla) en el CVS > http://cvs.sourceforge.net/viewcvs.py/*checkout*/thinkcspy/thinkcspy/spanish/thinkCSpy.pdf?rev=1.2 . > > Saludos, > Jose > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es From marta en elastico.net Wed Dec 22 17:51:39 2004 From: marta en elastico.net (marta en elastico.net) Date: Wed, 22 Dec 2004 17:51:39 +0100 Subject: Quiero Aprender Python!!!! In-Reply-To: References: Message-ID: <20041222165139.GJ11708@huda> ambas cosas ser?an un placer: tomarme unas ca??as con vosotros... y estar en argentina. Lamentablemente estoy a caballo entre copenhague (frio), barcelona (lluvia) y bruselas (ambas). Si algun dia cambiais de garito no dejeis de avisar ;-) mxxxx! On (22/12/04 11:55), Batista, Facundo wrote: > To: 'La lista de python en castellano' > From: "Batista, Facundo" > Subject: RE: [Python-es] Quiero Aprender Python!!!! > Reply-To: La lista de python en castellano > > [marta en elastico.net] > > #- Hace solo unas semanas que me apunte a la lista de correo y > #- recibo con > #- gusto vuestros mails aunque, de momento, solo entiendo la mitad. Es > #- bueno saber que podemos hacer consultas de novatos. > > Las preguntas de "novatos" son bienvenidas, así como la de "expertos". Y > pongo ambas palabras entre comillas porque uno puede ser un especialista en > un tema y un completo ignorante en otro. Pero para eso está la lista, para > ayudarnos unos a otros. > > El único detalle, y lo que muchas veces complica el poder ayudar, es la > manera de hacer la pregunta. Creo que es vital para todos los que > participamos en listas de correos leer "Cómo hacer preguntas de manera > inteligente" de Eric S. Raymond. > > - Castellano: http://www.sindominio.net/ayuda/preguntas-inteligentes.html > - Original: http://www.catb.org/~esr/faqs/smart-questions.html > > Y ya que estamos, si estás en Argentina te puedes venir a tomar unas > cervezas (o lo que gustes) mientras charlamos de Python, como parte de PyAr: > http://pyar.decode.com.ar/. > > Saludos! > > . Facundo > > Bitcora De Vuelo: http://www.taniquetil.com.ar/plog > PyAr - Python Argentina: http://pyar.decode.com.ar/ > > > . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . > . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . > . . . . . . . . . . . . . . . . > ADVERTENCIA. > > La información contenida en este mensaje y cualquier archivo anexo al mismo, > son para uso exclusivo del destinatario y pueden contener información > confidencial o propietaria, cuya divulgación es sancionada por la ley. > Si Ud. No es uno de los destinatarios consignados o la persona responsable > de hacer llegar este mensaje a los destinatarios consignados, no está > autorizado a divulgar, copiar, distribuir o retener información (o parte de > ella) contenida en este mensaje. Por favor notifíquenos respondiendo al > remitente, borre el mensaje original y borre las copias (impresas o grabadas > en cualquier medio magnético) que pueda haber realizado del mismo. > Todas las opiniones contenidas en este mail son propias del autor del > mensaje y no necesariamente coinciden con las de Telefónica Comunicaciones > Personales S.A. o alguna empresa asociada. > Los mensajes electrónicos pueden ser alterados, motivo por el cual > Telefónica Comunicaciones Personales S.A. no aceptará ninguna obligación > cualquiera sea el resultante de este mensaje. > Muchas 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 rapto en arrakis.es Thu Dec 23 09:20:06 2004 From: rapto en arrakis.es (Marcos =?ISO-8859-1?Q?S=E1nchez?= Provencio) Date: Thu, 23 Dec 2004 09:20:06 +0100 Subject: SocketServer In-Reply-To: References: <41F6C9F3.2030500@sicem.biz> Message-ID: <1103790007.4016.9.camel@cynar.proteus> Siempre está el truco de dir y print: >>> import SocketServer >>> print SocketServer >>> dir(SocketServer) ['BaseRequestHandler', 'BaseServer', 'DatagramRequestHandler', 'ForkingMixIn', 'ForkingTCPServer', 'ForkingUDPServer', 'StreamRequestHandler', 'TCPServer', 'ThreadingMixIn', 'ThreadingTCPServer', 'ThreadingUDPServer', 'ThreadingUnixDatagramServer', 'ThreadingUnixStreamServer', 'UDPServer', 'UnixDatagramServer', 'UnixStreamServer', '__all__', '__builtins__', '__doc__', '__file__', '__name__', '__version__', 'os', 'socket', 'sys'] El mié, 22-12-2004 a las 20:01 -0300, Jeremias escribió: > :-) exactamente, así lo he llamado. > > Gracias, ahora queda todo claro, sabía que python no se equivocaba, > ese atributo no existe porque esta cargando mi archivo. > > Estuve dos días dando vueltas, cambie de versiones de python, de pc, > de todo menos de nombre de archivo. :-( > > Moraleja: no llames a tus archivos con el mismo nombre que alguno de python. > > Muchas gracias. > > > On Tue, 25 Jan 2005 23:36:35 +0100, Ernesto Revilla wrote: > > Por curiosidad: con qué nombre has grabado ese archivo? > > > > No será SocketServer, verdad? > > > > Erny > > > > Jeremias escribió: > > > > >Hola, disculpenmé si estoy cometiendo un error muy de novato, pero es > > >que lo soy. > > > > > >Les comento, estaba intentando aprender a utilizar el módulo > > >SocketServer y me pasa algo extraño (al menos para mi). > > > > > >La cuestión es que cuando escribo el código en modo interactivo con el Python > > >todo sale de maravilla, pero cuando paso exactamente el mismo código a > > >un archivo, utilizando vim, y lo ejecuto me dice que el módulo > > >SocketServer no tiene un atributo TCPServer. > > > > > >Les paso mi humilde código, recuerden que es sólo para aprender, por ahora: > > > > > >#! /usr/bin/env python2.4 > > ># -*- coding: Latin-1 -*- > > > > > >import SocketServer > > > > > >IP='127.0.0.1' > > >PORT=28128 > > > > > >class H: > > > def __init__(self, req, cl_ad, s): > > > pass > > > def handle(self): > > > print 'H' > > > return 0 > > > > > >T = SocketServer.TCPServer((IP, PORT), H) > > >T.serve_forever() > > > > > > > > >Esto lo he probado en python 2.2, 2.3 y 2.4 con el mismo resultado. :-( > > > > > >Muchas gracias de antemano. > > > > > >Saludos. > > > > > >jrms > > > > > >PD: Felices fiestas !!! > > >_______________________________________________ > > >Python-es mailing list > > >Python-es en aditel.org > > >http://listas.aditel.org/listinfo/python-es > > > > > > > > > > > > > -- > > Ernesto Revilla > > sicem sl > > Pol. Ind. Juncaril, c/ Loja Parc. 7 Local 13 > > 18220 Albolote > > http://www.sicem.biz > > Tel: 637 716189 > > MSN: aerd en mx3.redestb.es > > ICQ: 163888521 > > > > --- > > avast! Antivirus: Saliente mensaje limpio. > > Base de datos de Virus (VPS): 0452-1, 22/12/2004 > > Comprobado en: 25/01/2005 23:36:39 > > avast! tiene los derechos reservados (c) 2000-2004 ALWIL Software. > > http://www.avast.com > > > > _______________________________________________ > > 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 -- Marcos Sánchez Provencio ------------ 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 Dec 23 09:24:51 2004 From: rapto en arrakis.es (Marcos =?ISO-8859-1?Q?S=E1nchez?= Provencio) Date: Thu, 23 Dec 2004 09:24:51 +0100 Subject: [OT] Re: =?ISO-8859-1?Q?Gram=E1tica?= In-Reply-To: <41C9B40D.5070407@gmail.com> References: <1103670531.3579.16.camel@lobezno> <200412220017.43886.jesus@roncero.org> <41C8B6E8.7000009@wanadoo.es> <1103706029.4531.17.camel@cynar.proteus> <41C93C02.7060503@wanadoo.es> <41C9B40D.5070407@gmail.com> Message-ID: <1103790292.4016.15.camel@cynar.proteus> Juas, mira lo que sale en el DRAE: tiquismiquis. (Del lat. macarrónico tichi michi, alterac. vulg. de tibi, michi, [lat. mihi], para ti, para mí). 1. m. pl. Escrúpulos o reparos vanos o de poquísima importancia. 2. m. pl. coloq. Expresiones o dichos ridículamente corteses o afectados. 3. com. Persona que hace o dice tiquismiquis. + No sé, empecé a escribir hortografía por hacer la gracia y cualquier día se me escapará en un documento oficial ;-) El mié, 22-12-2004 a las 12:51 -0500, Mario Lacunza escribió: > Y q es Tiquismiquis??? > > Espero q Hortografia haya sido a proposito??? o tenemos q definir > HORTO....??? JJejejjejeje > > Un saludo de Navidad para toda la lista!!! > > Saludos / Best regards > > Mario Lacunza > Email: mlacunza en gmail.com > Lima - Peru > > > > Alberto Curro escribió: > > > > >> No hay que ser tan tiquismiquis, cada uno que haga lo que pueda. El que > >> esté libre de culpa... > >> Es 'Hala', no 'ala' > >> ---------------------- > >> hala. > >> > >> (Voz expr.). > >> > >> 1. interj. U. para infundir aliento > >> o meter prisa. > >> > >> 2. interj. U. para mostrar sorpresa. > >> > >> 3. interj. U. para llamar. > >> > >> 4. interj. U. para denotar la > >> persistencia en una marcha. U. > >> repetida. > >> > >> > >> > > > > XDDDDDDDDDDDD.... > > > > Tienes razón. Pero yo lo escribo por la costumbre. En mi lengua > > natal (gallego) la expresión es "Ala", no "Hala". Aunque sé > > perfectamente que debería ser con h, nunca me acuerdo. Conozco mucha > > gente de regiones en las cuales el bilingüismo es habitual, y a todos > > nos pasa lo mismo. Otra cosa es un " a ver", frente a un "haber" (por > > verbo), o cosas peores. > > > > De todos modos, no soy tiquismiquis por serlo. Es que deberías ver > > algunas cosas que caen por mi mesa en la oficina. Créeme, te podrías > > asustar... ;) > > > > 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 -- Marcos Sánchez Provencio ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From sierra en tecnisoft.com Thu Dec 23 09:41:03 2004 From: sierra en tecnisoft.com (JASB) Date: Thu, 23 Dec 2004 09:41:03 +0100 Subject: Recuperar fechas In-Reply-To: <20041222190827.97651.qmail@web41208.mail.yahoo.com> References: <20041222190827.97651.qmail@web41208.mail.yahoo.com> Message-ID: <1103791262.800.262.camel@sierrax.192.168.0.25> Ummm, veo que usas el módulo mx, pues bien, deberías echarle un vistazo a "strftime" que te permite formatear la fecha a tu gusto, por ejemplo: fecha = mx.DateTime.now().strftime("%d/%m/%Y") Salu2. El mié, 22-12-2004 a las 20:08, FERNANDO VILLARROEL escribió: > Hola tengo un problema cuando recupero fechas de una > BD, me lanza la siguiente excepcion: > > Traceback (most recent call last): > File "/home/developer/chevalier/MnuClche.py", line > 445, in OnBuscar > > self.rut,self.dv,self.rz,self.di,self.co,self.pc,self.gi,self.tc,self.nc,self.ncc,self.ba,self.te1,self.te2,self.fc,self.com,self.es=cur.fetchone() > File > "/usr/lib/python2.3/site-packages/pyPgSQL/PgSQL.py", > line 3139, in fetchone > return self.__fetchOneRow() > File > "/usr/lib/python2.3/site-packages/pyPgSQL/PgSQL.py", > line 2776, in __fetchOneRow > _r.getvalue(self._idx_, _i))) > File > "/usr/lib/python2.3/site-packages/pyPgSQL/PgSQL.py", > line 804, in typecast > return DateTime.ISO.ParseAny(value) > File > "/usr/lib/python2.3/site-packages/mx/DateTime/ISO.py", > line 313, in ParseAny > raise ValueError,'unsupported format: "%s"' % > isostring > ValueError: unsupported format: "21-12-2004" > > Como lo puedo solucionar? > > Fernando Villarroel N. > > > > __________________________________ > Do you Yahoo!? > Meet the all-new My Yahoo! - Try it today! > http://my.yahoo.com > > > > > ______________________________________________________________________ > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es From juan_aliseda en diserpe.com Thu Dec 23 12:38:30 2004 From: juan_aliseda en diserpe.com (juan L. Aliseda) Date: Thu, 23 Dec 2004 12:38:30 +0100 Subject: Problemas con smbtar en python Message-ID: <001c01c4e8e3$f182adf0$bf0ac80a@valdisme.net> Buenas, Soy completamente novato en Python y tengo un problema en el trabajo. La cuestión es que ejecuto el siguiente script: #!/usr/bin/env python import subProcess, logging, logging.handlers logger = logging.getLogger('myapp') #Primer handler hdlr = logging.handlers.RotatingFileHandler('backup_log.log','a', maxBytes=2560000, backupCount=5) hdlr.setFormatter(logging.Formatter('%(asctime)s %(levelname)5s %(module)s %(lineno)d %(message)s')) MAILHOST = '***.***.***.***' FROM = 'usuario en dominio.com' TO = ['usuario2 en dominio.com'] SUBJECT = 'Proceso de copia de seguridad' #Segundo Handler ##################################### hdlr2 = logging.handlers.SMTPHandler(MAILHOST, FROM , TO,'BACKUP del SERVIDOR') hdlr2.setFormatter(logging.Formatter('%(asctime)s %(levelname)5s %(module)s %(lineno)d %(message)s')) #Añadimos los handlers ############################## logger.addHandler(hdlr) logger1.addHandler(hdlr2) #Ponemos el nivel de LOG ############################# logger.setLevel(logging.INFO) logger1.setLevel(logging.INFO) process = subProcess.subProcess('smbtar -v -s urales -x carpeta -u usuario -p ******** -t fichero_destino.tar') process.read() #timeout is optional #handle(process.outdata, process.errdata) errores = 0 if process.errdata == '': logger.info(process.outdata) print process.outdata print 'ok' else: logger.error(process.errdata) print process.errdata print 'MAL' errores = 1 del(process) f errores == 1 : logger1.error("\nSe han producido errores en la copia de seguridad") else: logger1.info("\nLa copia de seguridad se ha realizado correctamente") El fichero se crea pero "process" devuelve un error. Si ejecuto la misma sentencia directamente la salida es correcta. Agradecería cualquier información al respecto lo más urgente posible. From o.merchan en bussitel.es Thu Dec 23 13:14:16 2004 From: o.merchan en bussitel.es (Oscar Merchan) Date: Thu, 23 Dec 2004 13:14:16 +0100 Subject: FELIZ NAVIDAD Message-ID: <20041223131416.59141518.o.merchan@bussitel.es> Bueno gente, esto va para todos/as FELIZ NAVIDAD y PROSPERO AÑO NUEVO. Esto lo escribo ahora, por que hoy es mi ultimo dia de curro del año, mañana ya estoy de vacaciones y no regreso hasta el dia 7 de Enero. Y como el para mi las vacaciones, es desconectar de todo ( o sea que ni tan siquiera recojo el correo ) pues prefiero felicitaros a todos ahora. Saludos, Oscar Merchan. From joolivar en ing.uchile.cl Thu Dec 23 14:10:20 2004 From: joolivar en ing.uchile.cl (OLIVAREZ COTAL JOSE LUIS) Date: Thu, 23 Dec 2004 10:10:20 -0300 (CLST) Subject: Alguna Guia para imagenes animadas web In-Reply-To: <20041223131416.59141518.o.merchan@bussitel.es> References: <20041223131416.59141518.o.merchan@bussitel.es> Message-ID: Saludos y felices fiestas para todos. Necesito hacer una aplicacion de imagenes animadas de procesos industriales (maquinitas que se arrancan,se detienen y tiene fallas si es posible en 3D) La idea es tener un servidor de estas pantallas las cuales se puedan acceder via un navegador web. Lo natural seria relizarlas via javascrip pero me gustaria hacer el esfuerzo de hacerlo en python. Me gustaria me dieran algun consejo de antemano muchas gracias. O O ---------------------------oOOo--U--oOOo------------------------------------- ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From hernan en orgmf.com.ar Thu Dec 23 14:34:06 2004 From: hernan en orgmf.com.ar (=?iso-8859-1?Q?Hernan_Mart=EDnez_Foffani?=) Date: Thu, 23 Dec 2004 14:34:06 +0100 Subject: regalo para las fiestas Message-ID: Si papa noel o los reyes os traen un cacharro de estos: http://www.forum.nokia.com/main/0,,015-Platform-60-1,00.html#matrix podríais instalarle el Python: http://redivi.com/~bob/s60_python.pdf Los agraciados con un móvil de esos podéis bajaros el python aquí: http://www.forum.nokia.com/main/0,,034-821,00.html Tengo entendido que varios modelos de esos móviles se consiguen muy baratos e incluso en algun caso hasta gratis. Buen año para todos! -H. From rapto en arrakis.es Thu Dec 23 14:00:46 2004 From: rapto en arrakis.es (Marcos =?ISO-8859-1?Q?S=E1nchez?= Provencio) Date: Thu, 23 Dec 2004 14:00:46 +0100 Subject: Problemas con smbtar en python In-Reply-To: <001c01c4e8e3$f182adf0$bf0ac80a@valdisme.net> References: <001c01c4e8e3$f182adf0$bf0ac80a@valdisme.net> Message-ID: <1103806847.4323.5.camel@cynar.proteus> Deberías sacar qué hay en process.errdata, que dará pistas. del(process) está mal, 'del' no es una función. Lo correcto es del process Y suele ser superfluo, ya que las variables se mueren solitas. El jue, 23-12-2004 a las 12:38 +0100, juan L. Aliseda escribió: > Buenas, > > Soy completamente novato en Python y tengo un problema en el trabajo. > > La cuestión es que ejecuto el siguiente script: > > #!/usr/bin/env python > > import subProcess, logging, logging.handlers > > logger = logging.getLogger('myapp') > #Primer handler > hdlr = logging.handlers.RotatingFileHandler('backup_log.log','a', maxBytes=2560000, backupCount=5) > hdlr.setFormatter(logging.Formatter('%(asctime)s %(levelname)5s %(module)s %(lineno)d %(message)s')) > > MAILHOST = '***.***.***.***' > FROM = 'usuario en dominio.com' > TO = ['usuario2 en dominio.com'] > SUBJECT = 'Proceso de copia de seguridad' > > #Segundo Handler ##################################### > hdlr2 = logging.handlers.SMTPHandler(MAILHOST, FROM , TO,'BACKUP del SERVIDOR') > hdlr2.setFormatter(logging.Formatter('%(asctime)s %(levelname)5s %(module)s %(lineno)d %(message)s')) > > #Añadimos los handlers ############################## > logger.addHandler(hdlr) > logger1.addHandler(hdlr2) > > #Ponemos el nivel de LOG ############################# > logger.setLevel(logging.INFO) > logger1.setLevel(logging.INFO) > > process = subProcess.subProcess('smbtar -v -s urales -x carpeta -u usuario -p ******** -t fichero_destino.tar') > > process.read() #timeout is optional > #handle(process.outdata, process.errdata) > > errores = 0 > if process.errdata == '': > logger.info(process.outdata) > print process.outdata > print 'ok' > else: > logger.error(process.errdata) > print process.errdata > print 'MAL' > errores = 1 > del(process) > > f errores == 1 : > logger1.error("\nSe han producido errores en la copia de seguridad") > else: > logger1.info("\nLa copia de seguridad se ha realizado correctamente") > > > El fichero se crea pero "process" devuelve un error. > > Si ejecuto la misma sentencia directamente la salida es correcta. > > > Agradecería cualquier información al respecto lo más urgente posible. > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es -- Marcos Sánchez Provencio ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From py en ch3m4.org Thu Dec 23 15:03:59 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Thu, 23 Dec 2004 15:03:59 +0100 Subject: [OT] Re: =?iso-8859-1?q?Gram=E1tica?= In-Reply-To: References: <200412221924.36151.jesus@roncero.org> Message-ID: <200412231504.02864.py@ch3m4.org> El Miércoles, 22 de Diciembre de 2004 20:31, Jeremias escribió: > Talvez sea OT, a no ser que este hecho en Python, pero me gusto el > 'drae' lo podes pasar. ;-) Me parecía una pena que no hubiera algo así para python...así que me puse manos a la obra y aquí tenéis una versión 100%. Que la disfrutéis: http://ch3m4.org/blog/index.php/py/2004/12/23/consultas_a_la_rae ------------ 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 py en ch3m4.org Thu Dec 23 15:09:27 2004 From: py en ch3m4.org (Chema =?iso-8859-15?q?Cort=E9s?=) Date: Thu, 23 Dec 2004 15:09:27 +0100 Subject: Alguna Guia para imagenes animadas web In-Reply-To: References: <20041223131416.59141518.o.merchan@bussitel.es> Message-ID: <200412231509.27681.py@ch3m4.org> El Jueves, 23 de Diciembre de 2004 14:10, OLIVAREZ COTAL JOSE LUIS escribió: > Saludos y felices fiestas para todos. > Necesito hacer una aplicacion de imagenes animadas de procesos > industriales (maquinitas que se arrancan,se detienen y tiene fallas si es > posible en 3D) > La idea es tener un servidor de estas pantallas las cuales se puedan > acceder via un navegador web. > Lo natural seria relizarlas via javascrip pero me gustaria hacer el > esfuerzo de hacerlo en python. Me gustaria me dieran algun > consejo de antemano muchas gracias. Mira el VPython: http://www.vpython.org No puedo asegurarte que te vaya a servir para esas webs, pero seguro que le sacarás partido para alguna otra cosa. ------------ 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 dpico en dsic.upv.es Thu Dec 23 16:37:14 2004 From: dpico en dsic.upv.es (=?ISO-8859-1?Q?David_Pic=F3_Vila?=) Date: Thu, 23 Dec 2004 16:37:14 +0100 Subject: [OT] Re: =?ISO-8859-1?Q?Gram=E1tica?= In-Reply-To: <200412231504.02864.py@ch3m4.org> References: <200412221924.36151.jesus@roncero.org> <200412231504.02864.py@ch3m4.org> Message-ID: <41CAE62A.4060307@dsic.upv.es> Chema Cortés wrote: >El Miércoles, 22 de Diciembre de 2004 20:31, Jeremias escribió: > > >>Talvez sea OT, a no ser que este hecho en Python, pero me gusto el >>'drae' lo podes pasar. ;-) >> >> > >Me parecía una pena que no hubiera algo así para python...así que me puse >manos a la obra y aquí tenéis una versión 100%. Que la disfrutéis: > >http://ch3m4.org/blog/index.php/py/2004/12/23/consultas_a_la_rae > > > ¡Muchas gracias! Está muy bien. De todas formas, a mí me falla cuando busco palabras con acentos. ¿Sabes por qué puede ser eso? Saludos David From juan_aliseda en diserpe.com Thu Dec 23 18:21:08 2004 From: juan_aliseda en diserpe.com (juan L. Aliseda) Date: Thu, 23 Dec 2004 18:21:08 +0100 Subject: Problemas con smbtar en python Message-ID: <004801c4e913$cd1173e0$bf0ac80a@valdisme.net> Esto es lo que saca process.errdata : added interface ip=***.***.***.*** bcast=***.***.***.*** nmask=***.***.***.*** added interface ip=***.***.***.*** bcast=***.***.***.*** nmask=***.***.***.*** Domain=[DOMINIO] OS=[SISTEMA] Server=[SERVIDOR] tarmode is now full, system, hidden, noreset, verbose directory \Dir1\ 5632 ( 611.1 kb/s) \Dir1\fichero1 directory \Dir2\ directory \Dir3\ 40960 ( 512.8 kb/s) \ Dir3\fichero2 directory \Dir4\ 5120 ( 416.7 kb/s) \Dir4\fichero3 directory \Dir5\ tar: dumped 8 files and directories Total bytes written: 53248 MAL From pepe en diselpro.com Fri Dec 24 01:32:21 2004 From: pepe en diselpro.com (Pepe Aracil) Date: Fri, 24 Dec 2004 01:32:21 +0100 Subject: Python para =?iso-8859-1?q?tel=E9fonos?= Nokia. Message-ID: <200412240132.21556.pepe@diselpro.com> Por si alguien no ha leído barrapunto ;) http://barrapunto.com/article.pl?sid=04/12/23/1226248 http://www.forum.nokia.com/main/0,,034-821,00.html PY2ME la nueva plataforma para dispositivos móviles. XD Me parece que me voy a regalar un cacharrito de esos estas navidades.... ¡¡¡ Porque Yo lo valgo !!! ;D Saludos. From pepe en diselpro.com Fri Dec 24 01:39:19 2004 From: pepe en diselpro.com (Pepe Aracil) Date: Fri, 24 Dec 2004 01:39:19 +0100 Subject: Python para =?iso-8859-1?q?tel=E9fonos?= Nokia. In-Reply-To: <200412240132.21556.pepe@diselpro.com> References: <200412240132.21556.pepe@diselpro.com> Message-ID: <200412240139.19207.pepe@diselpro.com> Opss!! No habia leido el post de Hernan. :) El Viernes, 24 de Diciembre de 2004 01:32, Pepe Aracil escribió: > Por si alguien no ha leído barrapunto ;) > > http://barrapunto.com/article.pl?sid=04/12/23/1226248 > > http://www.forum.nokia.com/main/0,,034-821,00.html > > PY2ME la nueva plataforma para dispositivos móviles. XD > > Me parece que me voy a regalar un cacharrito de esos estas > navidades.... ¡¡¡ Porque Yo lo valgo !!! ;D > > > > Saludos. > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es From ch3m4 en ch3m4.org Fri Dec 24 01:37:10 2004 From: ch3m4 en ch3m4.org (ch3m4 en ch3m4.org) Date: Thu, 23 Dec 2004 19:37:10 -0500 Subject: [OT] Re: =?iso-8859-1?b?R3JhbeF0aWNh?= In-Reply-To: <41CAE62A.4060307@dsic.upv.es> References: <200412221924.36151.jesus@roncero.org> <200412231504.02864.py@ch3m4.org> <41CAE62A.4060307@dsic.upv.es> Message-ID: <1103848630.41cb64b622356@ch3m4.org> Mensaje citado por David Picó Vila : > ¡Muchas gracias! Está muy bien. De todas formas, a mí me falla cuando > busco palabras con acentos. ¿Sabes por qué puede ser eso? Seguramente tu terminal esté utilizando utf8. Prueba a cambiar en el código: in_latin1_please=False Si no lo solucionas, comprueba que la configuración de tu terminal utilice un tipo de letra compatible con unicode. Por ejemplo, en el konsole hay que cambiar a letra "unicode" para ver bien estos caracteres. (Si pruebas, por ejemplo, con el vocablo "aritmética" deberías ver su escritura en griego). From artstreet en gmail.com Fri Dec 24 18:22:14 2004 From: artstreet en gmail.com (aRtS) Date: Fri, 24 Dec 2004 18:22:14 +0100 Subject: Xlib: unexpected async reply Message-ID: Hola saludos a toda la lista de python en castellano y Feliz Navidad (tipico de hoy). ¿Alguien sabe algo sobre el error " Xlib: unexpected async reply " ? Este error me aparece cuando utilizo start_new_thread de thread ,utilizando Xorg, desarrollando bajo Boa Constructor, Python2.3 y wxPython4.2.4.2. Muchas gracias a todos por mantener esta lista activa !!!!!!. From artstreet en gmail.com Fri Dec 24 18:25:48 2004 From: artstreet en gmail.com (aRtS) Date: Fri, 24 Dec 2004 18:25:48 +0100 Subject: Xlib: unexpected async reply Message-ID: Lo siento se me fueron el dedo y la cabeza me referia a las wxPython2.4.2.4...... Muchas gracias. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From csotelop en yahoo.es Fri Dec 24 18:49:10 2004 From: csotelop en yahoo.es (Carlos Edurado Sotelo Pinto) Date: Fri, 24 Dec 2004 12:49:10 -0500 Subject: Variables globales a travez de formularios wxpython Message-ID: <41CC5696.4030001@yahoo.es> hola gente sigo con problemas en las globales, sucede que quiero hacer, buenos estoy en progreso de una apliciaon, esta tiene un formulario midi de parent y obviamente midis child, el asunto que busco es cargar una tabla de configuracion, los valores de dicha tabla se usan a los largo de toda la apliciaon, entonces en vez de cargarlos cada vez que lo necesito, cargarlos de una sola vez al inicio, el detalle que sucede es que cuando hago esto en el modulo principal de la apliciaon no los leen los formularios la sentencia que uso es global mivariable y la llamo mediante mivariable. o algo esta mal y debo hacerlo de otra forma Por cierto Una feliz navida y que la paz y felicidad reino en todos ustedes esta noche buena y a lo largo de todo el año Carlos From alfabit en gmail.com Sun Dec 26 02:37:45 2004 From: alfabit en gmail.com (Alfabit) Date: Sat, 25 Dec 2004 21:37:45 -0400 Subject: Buscar en una string Message-ID: Hola gente de python-es, me gustaria saber como buscar una palabra en una string, muchas gracias, Felices Fiestas. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From rapto en arrakis.es Sun Dec 26 08:55:13 2004 From: rapto en arrakis.es (Marcos =?ISO-8859-1?Q?S=E1nchez?= Provencio) Date: Sun, 26 Dec 2004 08:55:13 +0100 Subject: Buscar en una string In-Reply-To: References: Message-ID: <1104047713.4201.1.camel@localhost.localdomain> A ver si esto te vale: >>> 'palabra' in 'lista de palabras' True >>> 'otra palabra' in 'lista de palabras' False El sáb, 25-12-2004 a las 21:37 -0400, Alfabit escribió: > Hola gente de python-es, me gustaria saber como buscar una palabra en > una string, muchas gracias, Felices Fiestas. > _______________________________________________ > 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 Sun Dec 26 08:59:19 2004 From: rapto en arrakis.es (Marcos =?ISO-8859-1?Q?S=E1nchez?= Provencio) Date: Sun, 26 Dec 2004 08:59:19 +0100 Subject: Variables globales a travez de formularios wxpython In-Reply-To: <41CC5696.4030001@yahoo.es> References: <41CC5696.4030001@yahoo.es> Message-ID: <1104047959.4201.6.camel@localhost.localdomain> Prueba con un módulo globales.py en el que definas todas las variables. Por ejemplo: #globales.py var1=27 Luego, en cada uno de los otros módulos, le das #otrofichero.py import globales y puedes hacer print globales.var1 ¿Es esto? El vie, 24-12-2004 a las 12:49 -0500, Carlos Edurado Sotelo Pinto escribió: > hola gente sigo con problemas en las globales, sucede que quiero hacer, > buenos estoy en progreso de una apliciaon, esta tiene un formulario midi > de parent y obviamente midis child, el asunto que busco es cargar una > tabla de configuracion, los valores de dicha tabla se usan a los largo > de toda la apliciaon, entonces en vez de cargarlos cada vez que lo > necesito, cargarlos de una sola vez al inicio, > el detalle que sucede es que cuando hago esto en el modulo principal de > la apliciaon no los leen los formularios > la sentencia que uso es global mivariable > y la llamo mediante mivariable. o algo esta mal y debo hacerlo de otra forma > Por cierto > Una feliz navida y que la paz y felicidad reino en todos ustedes esta > noche buena y a lo largo de todo el año > > Carlos > _______________________________________________ > 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 erny en sicem.biz Sun Dec 26 13:21:12 2004 From: erny en sicem.biz (Ernesto Revilla) Date: Sun, 26 Dec 2004 13:21:12 +0100 Subject: Variables globales a travez de formularios wxpython In-Reply-To: <1104047959.4201.6.camel@localhost.localdomain> References: <41CC5696.4030001@yahoo.es> <1104047959.4201.6.camel@localhost.localdomain> Message-ID: <41CEACB8.5000507@sicem.biz> Creo que sería interesante que entendieses en concepto de global en Python que no es como en VisualBasic u otros leguajes sino más bien como en Java. Cada módulo (para ti ahora mismo, archivo de Python) es un espacio de nombre. Puedes referirte del espacio de otro módulo importándolo inicialmente. El código de ese módulo sólo se ejecuta en la primera importación. Si haces otros imports, simplemente se establece una referencia, no se ejecuta de nuevo. Yo suelo hacer siguiente (parecido a Marcos): mi archivo Config.py tiene todo tipo de configuraciones. Normalmente son asignaciones a variables simplemente. Después desde cualquier otro módulo hago un import Config y accedo a cada una de las variables de configuración con Config.variable . Te aconsejo la lectura de: http://docs.python.org/tut/node11.html especialmente el punto 9.2 Erny Marcos Sánchez Provencio escribió: >Prueba con un módulo globales.py en el que definas todas las variables. >Por ejemplo: >#globales.py >var1=27 > >Luego, en cada uno de los otros módulos, le das >#otrofichero.py >import globales > >y puedes hacer >print globales.var1 > >¿Es esto? > >El vie, 24-12-2004 a las 12:49 -0500, Carlos Edurado Sotelo Pinto >escribió: > > >>hola gente sigo con problemas en las globales, sucede que quiero hacer, >>buenos estoy en progreso de una apliciaon, esta tiene un formulario midi >>de parent y obviamente midis child, el asunto que busco es cargar una >>tabla de configuracion, los valores de dicha tabla se usan a los largo >>de toda la apliciaon, entonces en vez de cargarlos cada vez que lo >>necesito, cargarlos de una sola vez al inicio, >>el detalle que sucede es que cuando hago esto en el modulo principal de >>la apliciaon no los leen los formularios >>la sentencia que uso es global mivariable >>y la llamo mediante mivariable. o algo esta mal y debo hacerlo de otra forma >>Por cierto >>Una feliz navida y que la paz y felicidad reino en todos ustedes esta >>noche buena y a lo largo de todo el año >> >>Carlos >>_______________________________________________ >>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 > > -- Ernesto Revilla sicem sl Pol. Ind. Juncaril, c/ Loja Parc. 7 Local 13 18220 Albolote http://www.sicem.biz Tel: 637 716189 MSN: aerd en mx3.redestb.es ICQ: 163888521 --- avast! Antivirus: Saliente mensaje limpio. Base de datos de Virus (VPS): 0452-2, 23/12/2004 Comprobado en: 26/12/2004 13:21:16 avast! tiene los derechos reservados (c) 2000-2004 ALWIL Software. http://www.avast.com ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From rapto en arrakis.es Sun Dec 26 13:38:33 2004 From: rapto en arrakis.es (Marcos =?ISO-8859-1?Q?S=E1nchez?= Provencio) Date: Sun, 26 Dec 2004 13:38:33 +0100 Subject: Variables globales a travez de formularios wxpython In-Reply-To: <41CEACB8.5000507@sicem.biz> References: <41CC5696.4030001@yahoo.es> <1104047959.4201.6.camel@localhost.localdomain> <41CEACB8.5000507@sicem.biz> Message-ID: <1104064713.8938.1.camel@localhost.localdomain> Por si acaso te resulta más fácil el castellano, http://pyspanishdoc.sourceforge.net/tut/node11.html [ojo, que ya tiene 4 años, que en Internet son 40 :-D] PS ¿Hay quorum para sincronizar la traducción de la documentación? El dom, 26-12-2004 a las 13:21 +0100, Ernesto Revilla escribió: > Creo que sería interesante que entendieses en concepto de global en > Python que no es como en VisualBasic u otros leguajes sino más bien como > en Java. Cada módulo (para ti ahora mismo, archivo de Python) es un > espacio de nombre. Puedes referirte del espacio de otro módulo > importándolo inicialmente. El código de ese módulo sólo se ejecuta en la > primera importación. Si haces otros imports, simplemente se establece > una referencia, no se ejecuta de nuevo. Yo suelo hacer siguiente > (parecido a Marcos): mi archivo Config.py tiene todo tipo de > configuraciones. Normalmente son asignaciones a variables simplemente. > Después desde cualquier otro módulo hago un import Config y > accedo a cada una de las variables de configuración con > Config.variable . > > Te aconsejo la lectura de: > http://docs.python.org/tut/node11.html especialmente el punto 9.2 > > Erny > > Marcos Sánchez Provencio escribió: > > >Prueba con un módulo globales.py en el que definas todas las variables. > >Por ejemplo: > >#globales.py > >var1=27 > > > >Luego, en cada uno de los otros módulos, le das > >#otrofichero.py > >import globales > > > >y puedes hacer > >print globales.var1 > > > >¿Es esto? > > > >El vie, 24-12-2004 a las 12:49 -0500, Carlos Edurado Sotelo Pinto > >escribió: > > > > > >>hola gente sigo con problemas en las globales, sucede que quiero hacer, > >>buenos estoy en progreso de una apliciaon, esta tiene un formulario midi > >>de parent y obviamente midis child, el asunto que busco es cargar una > >>tabla de configuracion, los valores de dicha tabla se usan a los largo > >>de toda la apliciaon, entonces en vez de cargarlos cada vez que lo > >>necesito, cargarlos de una sola vez al inicio, > >>el detalle que sucede es que cuando hago esto en el modulo principal de > >>la apliciaon no los leen los formularios > >>la sentencia que uso es global mivariable > >>y la llamo mediante mivariable. o algo esta mal y debo hacerlo de otra forma > >>Por cierto > >>Una feliz navida y que la paz y felicidad reino en todos ustedes esta > >>noche buena y a lo largo de todo el año > >> > >>Carlos > >>_______________________________________________ > >>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 ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From jasalgir en querysoft.es Sun Dec 26 23:13:43 2004 From: jasalgir en querysoft.es (Powerbook) Date: Sun, 26 Dec 2004 23:13:43 +0100 Subject: =?iso-8859-1?q?Representaci=F3n_Gr=E1fica_consulta_B?= =?iso-8859-1?q?D?= Message-ID: <6798C804-578B-11D9-830E-000A95A852C4@querysoft.es> Necesito realizar una aplicación que consulte una BD y represente gráficamente las consultas en modo tabla de datos. De lo que he visto, lo que más se ajusta al resultado que necesito es en wxpython, la clase grid. ¿Conocéis de alguna otra mejor solución? Felices Fiestas a Tod en s! From pabloreysobral en gmail.com Mon Dec 27 03:38:30 2004 From: pabloreysobral en gmail.com (Pablo Rey Sobral) Date: Mon, 27 Dec 2004 03:38:30 +0100 Subject: =?ISO-8859-1?Q?Re:__Representaci=F3n_Gr=E1fica_consulta_B_D?= In-Reply-To: <6798C804-578B-11D9-830E-000A95A852C4@querysoft.es> References: <6798C804-578B-11D9-830E-000A95A852C4@querysoft.es> Message-ID: <4c01c85a0412261838acb6325@mail.gmail.com> SI trabajas en Linux y GPL puedes probar con pyQT que te haría bastante más trabajo que wxPython. Tienes también pyGTK, sin soporte de acceso a datos sino simplemente el control (creo que treeview) que implementa una grid con arbol, que es multiplataforma y además tiene un aspecto similar en todos. Un saludo. On Sun, 26 Dec 2004 23:13:43 +0100, Powerbook wrote: > Necesito realizar una aplicación que consulte una BD y represente > gráficamente las consultas en modo tabla de datos. De lo que he visto, > lo que más se ajusta al resultado que necesito es en wxpython, la clase > grid. ¿Conocéis de alguna otra mejor solución? > > Felices Fiestas a Tod en s! > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > From lcatalin en siadv.com Mon Dec 27 08:34:15 2004 From: lcatalin en siadv.com (Catalin Lungu) Date: Mon, 27 Dec 2004 08:34:15 +0100 Subject: Buscar en una string References: Message-ID: <003501c4ebe6$7c8a2450$d900a8c0@catalin> También si quieres saber la posición de la palabra: posición = cadena.index(palabra) posición = cadena.find(palabra) Saludos. ----- Original Message ----- From: "Alfabit" To: Sent: Sunday, December 26, 2004 2:37 AM Subject: [Python-es] Buscar en una string > Hola gente de python-es, me gustaria saber como buscar una palabra en > una string, muchas gracias, Felices Fiestas. > -------------------------------------------------------------------------------- _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From jasalgir en querysoft.es Mon Dec 27 10:22:05 2004 From: jasalgir en querysoft.es (Powerbook) Date: Mon, 27 Dec 2004 10:22:05 +0100 Subject: =?ISO-8859-1?Q?Re:__Representaci=F3n_Gr=E1fica_consul?= =?ISO-8859-1?Q?ta_B_D?= In-Reply-To: <4c01c85a0412261838acb6325@mail.gmail.com> References: <6798C804-578B-11D9-830E-000A95A852C4@querysoft.es> <4c01c85a0412261838acb6325@mail.gmail.com> Message-ID: Muchas Gracias Pablo, voy a por tus consideraciones. El 27/12/2004, a las 3:38, Pablo Rey Sobral escribió: > SI trabajas en Linux y GPL puedes probar con pyQT que te haría > bastante más trabajo que wxPython. > > Tienes también pyGTK, sin soporte de acceso a datos sino simplemente > el control (creo que treeview) que implementa una grid con arbol, que > es multiplataforma y además tiene un aspecto similar en todos. > > Un saludo. > > On Sun, 26 Dec 2004 23:13:43 +0100, Powerbook > wrote: >> Necesito realizar una aplicación que consulte una BD y >> represente >> gráficamente las consultas en modo tabla de datos. De lo que he visto, >> lo que más se ajusta al resultado que necesito es en wxpython, la >> clase >> grid. ¿Conocéis de alguna otra mejor solución? >> >> Felices Fiestas a Tod en s! >> >> _______________________________________________ >> 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 csotelop en yahoo.es Mon Dec 27 16:38:02 2004 From: csotelop en yahoo.es (Carlos Edurado Sotelo Pinto) Date: Mon, 27 Dec 2004 10:38:02 -0500 Subject: Variables globales a travez de formularios wxpython In-Reply-To: <41CEACB8.5000507@sicem.biz> References: <41CC5696.4030001@yahoo.es> <1104047959.4201.6.camel@localhost.localdomain> <41CEACB8.5000507@sicem.biz> Message-ID: <41D02C5A.5020501@yahoo.es> estuve revisando estos datos, si se me paso eso pr la cabeza, pero mi duda esta sobre estos estos datos de configuracion deben ser cargados a una base de datos, lo que busco es que al iniciar estos datos sean cargados, si los pongo en un modulo global, puede ser como config.py, estos valores serian constantes y no globales, como podria hacer entocnes para cargar estos valores o alguna manera de cargar al inicio valores de configuracion de una base de datos que puedan ser leidos en cualquier momento la solucion mas fcail es acceder a cada momento que los necesite a la base de datos, pero esto solo me lentearia el sistema, pense una forma mas rapida cargar una sola ves estos datos y nada mas proponganme una solocion urgente. Un saludo\ Carlos Ernesto Revilla wrote: > Creo que sería interesante que entendieses en concepto de global en > Python que no es como en VisualBasic u otros leguajes sino más bien > como en Java. Cada módulo (para ti ahora mismo, archivo de Python) es > un espacio de nombre. Puedes referirte del espacio de otro módulo > importándolo inicialmente. El código de ese módulo sólo se ejecuta en > la primera importación. Si haces otros imports, simplemente se > establece una referencia, no se ejecuta de nuevo. Yo suelo hacer > siguiente (parecido a Marcos): mi archivo Config.py tiene todo tipo > de configuraciones. Normalmente son asignaciones a variables > simplemente. Después desde cualquier otro módulo hago un import > Config y accedo a cada una de las variables de configuración > con Config.variable . > > Te aconsejo la lectura de: > http://docs.python.org/tut/node11.html especialmente el punto 9.2 > > Erny > > Marcos Sánchez Provencio escribió: > >> Prueba con un módulo globales.py en el que definas todas las variables. >> Por ejemplo: >> #globales.py >> var1=27 >> >> Luego, en cada uno de los otros módulos, le das >> #otrofichero.py >> import globales >> >> y puedes hacer >> print globales.var1 >> >> ¿Es esto? >> >> El vie, 24-12-2004 a las 12:49 -0500, Carlos Edurado Sotelo Pinto >> escribió: >> >> >>> hola gente sigo con problemas en las globales, sucede que quiero >>> hacer, buenos estoy en progreso de una apliciaon, esta tiene un >>> formulario midi de parent y obviamente midis child, el asunto que >>> busco es cargar una tabla de configuracion, los valores de dicha >>> tabla se usan a los largo de toda la apliciaon, entonces en vez de >>> cargarlos cada vez que lo necesito, cargarlos de una sola vez al >>> inicio, >>> el detalle que sucede es que cuando hago esto en el modulo principal >>> de la apliciaon no los leen los formularios >>> la sentencia que uso es global mivariable >>> y la llamo mediante mivariable. o algo esta mal y debo hacerlo de >>> otra forma >>> Por cierto >>> Una feliz navida y que la paz y felicidad reino en todos ustedes >>> esta noche buena y a lo largo de todo el año >>> >>> Carlos >>> _______________________________________________ >>> 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 > > ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From josu en ubera.net Tue Dec 28 11:57:26 2004 From: josu en ubera.net (Josu Oyanguren) Date: Tue, 28 Dec 2004 11:57:26 +0100 Subject: Variables globales a travez de formularios wxpython In-Reply-To: <41D02C5A.5020501@yahoo.es> References: <41CC5696.4030001@yahoo.es> <1104047959.4201.6.camel@localhost.localdomain> <41CEACB8.5000507@sicem.biz> <41D02C5A.5020501@yahoo.es> Message-ID: <41D13C16.4000803@ubera.net> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Yo suelo utilizar un sistema parecido. Esquemáticamente: * tengo un config.py con los datos por defecto de las variables * el mismo módulo config.py u otro al inicio pueden cargar diferentes valores a las variables desde una base de datos, un archivo de configuración o lo que sea. * cualquier módulo puede utilizar "import config" y hacer uso de las variables como config.VAR Por ejemplo: #----------------------------------------------- # config.py VAR1 = None def cargarVariables(): ~ # Aquí se cargan los valores de las variables ~ # Esto puede hacerse en config.py o en otro módulo ~ # que gestione el inicio de la aplicación ~ ... ~ VAR1 = tomarDeLaBaseDeDatos('VAR1') ~ ... #----------------------------------------------- para usar estas variables #----------------------------------------------- # modulo1.py import config print config.VAR1 #----------------------------------------------- Carlos Edurado Sotelo Pinto escribió: | estuve revisando estos datos, si se me paso eso pr la cabeza, pero mi | duda esta sobre estos | estos datos de configuracion deben ser cargados a una base de datos, lo | que busco es que al iniciar estos datos sean cargados, si los pongo en | un modulo global, puede ser como config.py, estos valores serian | constantes y no globales, como podria hacer entocnes para cargar estos | valores o alguna manera de cargar al inicio valores de configuracion de | una base de datos que puedan ser leidos en cualquier momento | la solucion mas fcail es acceder a cada momento que los necesite a la | base de datos, pero esto solo me lentearia el sistema, pense una forma | mas rapida cargar una sola ves estos datos y nada mas | proponganme una solocion urgente. | Un saludo\ | Carlos | | Ernesto Revilla wrote: | |> Creo que sería interesante que entendieses en concepto de global en |> Python que no es como en VisualBasic u otros leguajes sino más bien |> como en Java. Cada módulo (para ti ahora mismo, archivo de Python) es |> un espacio de nombre. Puedes referirte del espacio de otro módulo |> importándolo inicialmente. El código de ese módulo sólo se ejecuta en |> la primera importación. Si haces otros imports, simplemente se |> establece una referencia, no se ejecuta de nuevo. Yo suelo hacer |> siguiente (parecido a Marcos): mi archivo Config.py tiene todo tipo |> de configuraciones. Normalmente son asignaciones a variables |> simplemente. Después desde cualquier otro módulo hago un import |> Config y accedo a cada una de las variables de configuración |> con Config.variable . |> |> Te aconsejo la lectura de: |> http://docs.python.org/tut/node11.html especialmente el punto 9.2 |> |> Erny |> |> Marcos Sánchez Provencio escribió: |> |>> Prueba con un módulo globales.py en el que definas todas las variables. |>> Por ejemplo: |>> #globales.py |>> var1=27 |>> |>> Luego, en cada uno de los otros módulos, le das |>> #otrofichero.py |>> import globales |>> |>> y puedes hacer |>> print globales.var1 |>> |>> ¿Es esto? |>> |>> El vie, 24-12-2004 a las 12:49 -0500, Carlos Edurado Sotelo Pinto |>> escribió: |>> |>> |>>> hola gente sigo con problemas en las globales, sucede que quiero |>>> hacer, buenos estoy en progreso de una apliciaon, esta tiene un |>>> formulario midi de parent y obviamente midis child, el asunto que |>>> busco es cargar una tabla de configuracion, los valores de dicha |>>> tabla se usan a los largo de toda la apliciaon, entonces en vez de |>>> cargarlos cada vez que lo necesito, cargarlos de una sola vez al |>>> inicio, |>>> el detalle que sucede es que cuando hago esto en el modulo principal |>>> de la apliciaon no los leen los formularios |>>> la sentencia que uso es global mivariable |>>> y la llamo mediante mivariable. o algo esta mal y debo hacerlo de |>>> otra forma |>>> Por cierto |>>> Una feliz navida y que la paz y felicidad reino en todos ustedes |>>> esta noche buena y a lo largo de todo el año |>>> |>>> Carlos |>>> _______________________________________________ |>>> 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 - -- -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org iD8DBQFB0TwV5ju4HVxhuqQRAiGQAJ90Fsw0d/nL5BKpETVZpE3suFy/aQCg0Asw R/vbCWyAse4uKgUp4zEciU0= =acwK -----END PGP SIGNATURE----- ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From pabloreysobral en gmail.com Tue Dec 28 12:57:04 2004 From: pabloreysobral en gmail.com (Pablo Rey Sobral) Date: Tue, 28 Dec 2004 12:57:04 +0100 Subject: Variables globales a travez de formularios wxpython In-Reply-To: <41D13C16.4000803@ubera.net> References: <41CC5696.4030001@yahoo.es> <1104047959.4201.6.camel@localhost.localdomain> <41CEACB8.5000507@sicem.biz> <41D02C5A.5020501@yahoo.es> <41D13C16.4000803@ubera.net> Message-ID: <4c01c85a04122803575680368f@mail.gmail.com> Hola, Quizás deberíais echarle un vistazo a pyContainer, que es una manera más ordenada de hacer eso mismo, pero sin variables globales de las que preocuparos. Un saludo. On Tue, 28 Dec 2004 11:57:26 +0100, Josu Oyanguren wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > Yo suelo utilizar un sistema parecido. Esquemáticamente: > > * tengo un config.py con los datos por defecto de las variables > * el mismo módulo config.py u otro al inicio pueden cargar diferentes > valores a las variables desde una base de datos, un archivo de > configuración o lo que sea. > * cualquier módulo puede utilizar "import config" y hacer uso de las > variables como config.VAR > > Por ejemplo: > > #----------------------------------------------- > # config.py > > VAR1 = None > > def cargarVariables(): > ~ # Aquí se cargan los valores de las variables > ~ # Esto puede hacerse en config.py o en otro módulo > ~ # que gestione el inicio de la aplicación > ~ ... > ~ VAR1 = tomarDeLaBaseDeDatos('VAR1') > ~ ... > #----------------------------------------------- > > para usar estas variables > #----------------------------------------------- > # modulo1.py > > import config > > print config.VAR1 > #----------------------------------------------- > > > Carlos Edurado Sotelo Pinto escribió: > | estuve revisando estos datos, si se me paso eso pr la cabeza, pero mi > | duda esta sobre estos > | estos datos de configuracion deben ser cargados a una base de datos, lo > | que busco es que al iniciar estos datos sean cargados, si los pongo en > | un modulo global, puede ser como config.py, estos valores serian > | constantes y no globales, como podria hacer entocnes para cargar estos > | valores o alguna manera de cargar al inicio valores de configuracion de > | una base de datos que puedan ser leidos en cualquier momento > | la solucion mas fcail es acceder a cada momento que los necesite a la > | base de datos, pero esto solo me lentearia el sistema, pense una forma > | mas rapida cargar una sola ves estos datos y nada mas > | proponganme una solocion urgente. > | Un saludo\ > | Carlos > | > | Ernesto Revilla wrote: > | > |> Creo que sería interesante que entendieses en concepto de global en > |> Python que no es como en VisualBasic u otros leguajes sino más bien > |> como en Java. Cada módulo (para ti ahora mismo, archivo de Python) es > |> un espacio de nombre. Puedes referirte del espacio de otro módulo > |> importándolo inicialmente. El código de ese módulo sólo se ejecuta en > |> la primera importación. Si haces otros imports, simplemente se > |> establece una referencia, no se ejecuta de nuevo. Yo suelo hacer > |> siguiente (parecido a Marcos): mi archivo Config.py tiene todo tipo > |> de configuraciones. Normalmente son asignaciones a variables > |> simplemente. Después desde cualquier otro módulo hago un import > |> Config y accedo a cada una de las variables de configuración > |> con Config.variable . > |> > |> Te aconsejo la lectura de: > |> http://docs.python.org/tut/node11.html especialmente el punto 9.2 > |> > |> Erny > |> > |> Marcos Sánchez Provencio escribió: > |> > |>> Prueba con un módulo globales.py en el que definas todas las variables. > |>> Por ejemplo: > |>> #globales.py > |>> var1=27 > |>> > |>> Luego, en cada uno de los otros módulos, le das > |>> #otrofichero.py > |>> import globales > |>> > |>> y puedes hacer > |>> print globales.var1 > |>> > |>> ¿Es esto? > |>> > |>> El vie, 24-12-2004 a las 12:49 -0500, Carlos Edurado Sotelo Pinto > |>> escribió: > |>> > |>> > |>>> hola gente sigo con problemas en las globales, sucede que quiero > |>>> hacer, buenos estoy en progreso de una apliciaon, esta tiene un > |>>> formulario midi de parent y obviamente midis child, el asunto que > |>>> busco es cargar una tabla de configuracion, los valores de dicha > |>>> tabla se usan a los largo de toda la apliciaon, entonces en vez de > |>>> cargarlos cada vez que lo necesito, cargarlos de una sola vez al > |>>> inicio, > |>>> el detalle que sucede es que cuando hago esto en el modulo principal > |>>> de la apliciaon no los leen los formularios > |>>> la sentencia que uso es global mivariable > |>>> y la llamo mediante mivariable. o algo esta mal y debo hacerlo de > |>>> otra forma > |>>> Por cierto > |>>> Una feliz navida y que la paz y felicidad reino en todos ustedes > |>>> esta noche buena y a lo largo de todo el año > |>>> > |>>> Carlos > |>>> _______________________________________________ > |>>> 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 > > - -- > > > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.2.1 (GNU/Linux) > Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org > > iD8DBQFB0TwV5ju4HVxhuqQRAiGQAJ90Fsw0d/nL5BKpETVZpE3suFy/aQCg0Asw > R/vbCWyAse4uKgUp4zEciU0= > =acwK > -----END PGP SIGNATURE----- > > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > > > From py en ch3m4.org Tue Dec 28 12:44:17 2004 From: py en ch3m4.org (Chema =?iso-8859-15?q?Cort=E9s?=) Date: Tue, 28 Dec 2004 12:44:17 +0100 Subject: Variables globales a travez de formularios wxpython In-Reply-To: <41D02C5A.5020501@yahoo.es> References: <41CC5696.4030001@yahoo.es> <41CEACB8.5000507@sicem.biz> <41D02C5A.5020501@yahoo.es> Message-ID: <200412281244.20671.py@ch3m4.org> El Lunes, 27 de Diciembre de 2004 16:38, Carlos Edurado Sotelo Pinto escribió: > lo > que busco es que al iniciar estos datos sean cargados, si los pongo en > un modulo global, puede ser como config.py, estos valores serian > constantes y no globales No te equivoques, en python no hay "constantes" como en otros lenguajes. Aunque en 'config.py' tenga un valor dado, puedes cambiar sus valores "globalmente". ------------ 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 josu en ubera.net Tue Dec 28 15:48:09 2004 From: josu en ubera.net (Josu Oyanguren) Date: Tue, 28 Dec 2004 15:48:09 +0100 Subject: Variables globales a travez de formularios wxpython In-Reply-To: <4c01c85a04122803575680368f@mail.gmail.com> References: <41CC5696.4030001@yahoo.es> <1104047959.4201.6.camel@localhost.localdomain> <41CEACB8.5000507@sicem.biz> <41D02C5A.5020501@yahoo.es> <41D13C16.4000803@ubera.net> <4c01c85a04122803575680368f@mail.gmail.com> Message-ID: <41D17229.8090101@ubera.net> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Pablo Rey Sobral escribió: | Hola, | | Quizás deberíais echarle un vistazo a pyContainer, que es una manera | más ordenada de hacer eso mismo, pero sin variables globales de las | que preocuparos. | supongo que es cuestión de gustos, pero prefiero no utilizar paquetes externos para resolver un problema que se soluciona con 10 líneas de código simple. He echado un vistazo a pyContainer, como sugieres, y en mi opinión sería "matar mosquitos a cañonazos". Por otro lado, gracias por la referencia. Tiene unas cuantas ideas muy interesantes. Josu. - -- -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org iD8DBQFB0XIo5ju4HVxhuqQRApykAJ0bq6Gdhql38CwjZVKUGrcrEsTW8ACgpyMu SnZ5pkzVQt91NHHjvljNmvs= =gA1s -----END PGP SIGNATURE----- ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From arn_python en yahoo.com.ar Tue Dec 28 23:17:53 2004 From: arn_python en yahoo.com.ar (Ariel Nardelli) Date: Tue, 28 Dec 2004 19:17:53 -0300 Subject: Error de Mysql y como arreglarlo Message-ID: <41D1DB91.4070304@yahoo.com.ar> Hola a todos!. Estoy teniendo un problema con mysql desde python. Tengo que hacer actualizaciones intensivas sobre la base o sea hago varias actualizaciones y en algun momento de las actualizaciones al azar en cualquier momento se me corta el proceso con este error... * Mysqlerror : -(6011)- E: 2013 Lost connection to MySQL server during query * Mysqlerror : -([1L, 3221506L, 6011])- E: 2013 Lost connection to MySQL server during query Segun puedo entender es porque se me cae el servidor mysql y en realidad no es que se para sino que deja de atender porque esta ocupado. La idea mia es si tengo este error detener la actualizacion por 5 segundos y luego volver a intentar actualizar la base ya que pasado un ratito mysql sigue atendiendo y corriendo sin problemas, el tema mas bien es que para por sobrecarga. Esta es mi rutina que graba los datos en mysql... def sql01(db,sql,k): # Procesa sobre Mysql para procesos que no devuelvan datos!!! """ Hace una operacion sobre Mysql """ try: if k == 'NULL': # Es cuando no viene los datos del sql aparte. db.execute(sql) else: db.execute(sql,k) return 0 except db.MySQLError, e: print e linea = "* Mysqlerror : " + str(e[0]) + " " + e[1] gl(linea) print linea return -1 Mi idea es en el except preguntar por el error y si es ese el error el 2013 hacer una pausa de 5 segundos y despues reintentar grabar... Pero hay 2 cosas que no se hacer y por eso pido ayuda.. una es hacer la pausa con que comando se hace pausa de xx segundos? y la otra es como hacer para despues de la pausa vuelva a intentarlo o sea vuelva a try: para reintentar la grabacion, algo asi como un goto que en python no existe.. :) Alguien puede tirarme una mano?, ya que la maquina es chica en donde esta el mysql este va a ser un error normal mas de una vez va a quedar en espera porque la pobre maquinita no da a vasto para lo que quiero hacer asi que es normal que me largue este tipo de errores. Gracias a todo por la ayuda!!! FELIZ 2005! Ariel From dortega en polinux.upv.es Tue Dec 28 18:14:41 2004 From: dortega en polinux.upv.es (David Ortega =?ISO-8859-1?Q?Berd=FAn?=) Date: Tue, 28 Dec 2004 18:14:41 +0100 Subject: Error de Mysql y como arreglarlo In-Reply-To: <41D1DB91.4070304@yahoo.com.ar> References: <41D1DB91.4070304@yahoo.com.ar> Message-ID: <1104254081.26203.4.camel@Gondor> A ver esto, creo que tengo las dos respuestas. Para el sleep prueba con poner time.sleep(delay), habiendo hecho un import time. Para el bucle podias probar con algo por el estilo a esto: seguir=1 while seguir==1: try: if k=='NULL': db.execute(sql) else: db.execute(sql,k) return 0 except db.MySQLError, e: print e linea = "* Mysqlerror : "+str(e[0]) + " " + e[1] gl(linea) print linea return -1 seguir=0 Así si pasa del except pondrá seguir a 0 y ya no entrará más al bucle. No lo he probado, pero creo que funcionará y sino que me corrijan :P Un saludo y feliz 2005. El mar, 28-12-2004 a las 19:17 -0300, Ariel Nardelli escribió: > Hola a todos!. > > Estoy teniendo un problema con mysql desde python. > Tengo que hacer actualizaciones intensivas sobre la base o sea hago > varias actualizaciones y en algun momento de las actualizaciones al azar > en cualquier momento se me corta el proceso con este error... > > * Mysqlerror : -(6011)- E: 2013 Lost connection to MySQL server during query > * Mysqlerror : -([1L, 3221506L, 6011])- E: 2013 Lost connection to MySQL > server during query > > Segun puedo entender es porque se me cae el servidor mysql y en realidad > no es que se para sino que deja de atender porque esta ocupado. > > La idea mia es si tengo este error detener la actualizacion por 5 > segundos y luego volver a intentar actualizar la base ya que pasado un > ratito mysql sigue atendiendo y corriendo sin problemas, el tema mas > bien es que para por sobrecarga. > > Esta es mi rutina que graba los datos en mysql... > > def sql01(db,sql,k): > # Procesa sobre Mysql para procesos que no devuelvan datos!!! > """ Hace una operacion sobre Mysql """ > try: > if k == 'NULL': # Es cuando no viene los datos del sql aparte. > db.execute(sql) > else: > db.execute(sql,k) > return 0 > except db.MySQLError, e: > print e > linea = "* Mysqlerror : " + str(e[0]) + " " + e[1] > gl(linea) > print linea > return -1 > > Mi idea es en el except preguntar por el error y si es ese el error el > 2013 hacer una pausa de 5 segundos y despues reintentar grabar... > Pero hay 2 cosas que no se hacer y por eso pido ayuda.. > una es hacer la pausa con que comando se hace pausa de xx segundos? > y la otra es como hacer para despues de la pausa vuelva a intentarlo o > sea vuelva a try: para reintentar la grabacion, algo asi como un goto > que en python no existe.. :) > > Alguien puede tirarme una mano?, ya que la maquina es chica en donde > esta el mysql este va a ser un error normal mas de una vez va a quedar > en espera porque la pobre maquinita no da a vasto para lo que quiero > hacer asi que es normal que me largue este tipo de errores. > > Gracias a todo por la ayuda!!! > FELIZ 2005! > > Ariel > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es -- David Ortega Berdún Encargado de Infraestructuras y CoAdministrador en PoLinux Obtén mi clave pública de: http://www.polinux.upv.es/~dortega/dortega.gpg ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: Esta parte del mensaje está firmada digitalmente URL: ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From morillas en posta.unizar.es Tue Dec 28 23:58:59 2004 From: morillas en posta.unizar.es (luis miguel morillas) Date: Tue, 28 Dec 2004 23:58:59 +0100 Subject: Error de Mysql y como arreglarlo In-Reply-To: <41D1DB91.4070304@yahoo.com.ar> References: <41D1DB91.4070304@yahoo.com.ar> Message-ID: <20041228225859.GA6580@marmota> Asunto: [Python-es] Error de Mysql y como arreglarlo Fecha: mar, dic 28, 2004 at 07:17:53 -0300 Citando a Ariel Nardelli (arn_python en yahoo.com.ar): > Hola a todos!. > > Estoy teniendo un problema con mysql desde python. > Tengo que hacer actualizaciones intensivas sobre la base o sea hago > varias actualizaciones y en algun momento de las actualizaciones al azar > en cualquier momento se me corta el proceso con este error... > > * Mysqlerror : -(6011)- E: 2013 Lost connection to MySQL server during query > * Mysqlerror : -([1L, 3221506L, 6011])- E: 2013 Lost connection to MySQL > server during query > > Segun puedo entender es porque se me cae el servidor mysql y en realidad > no es que se para sino que deja de atender porque esta ocupado. > Bueno, pueden ser varios los motivos. Es más fácil (por lo que cuentas) que al servidor le llegue una trama demasiado larga. Prueba a aumentar la variable max_allowed_packet que creo que por defecto está puesta a 1Mb mysql> mysql --max_allowed_packet=32M Puedes hacerlo en los ficheros de configuración (¿Qué versión de mysql usas, por cierto?) [mysqld] max_allowed_packet=32M Evita también dejar cursores sin cerrar. Ya nos contarás. Un saludo, > La idea mia es si tengo este error detener la actualizacion por 5 > segundos y luego volver a intentar actualizar la base ya que pasado un > ratito mysql sigue atendiendo y corriendo sin problemas, el tema mas > bien es que para por sobrecarga. > > Esta es mi rutina que graba los datos en mysql... > > def sql01(db,sql,k): > # Procesa sobre Mysql para procesos que no devuelvan datos!!! > """ Hace una operacion sobre Mysql """ > try: > if k == 'NULL': # Es cuando no viene los datos del sql aparte. > db.execute(sql) > else: > db.execute(sql,k) > return 0 > except db.MySQLError, e: > print e > linea = "* Mysqlerror : " + str(e[0]) + " " + e[1] > gl(linea) > print linea > return -1 > > Mi idea es en el except preguntar por el error y si es ese el error el > 2013 hacer una pausa de 5 segundos y despues reintentar grabar... > Pero hay 2 cosas que no se hacer y por eso pido ayuda.. > una es hacer la pausa con que comando se hace pausa de xx segundos? > y la otra es como hacer para despues de la pausa vuelva a intentarlo o > sea vuelva a try: para reintentar la grabacion, algo asi como un goto > que en python no existe.. :) > > Alguien puede tirarme una mano?, ya que la maquina es chica en donde > esta el mysql este va a ser un error normal mas de una vez va a quedar > en espera porque la pobre maquinita no da a vasto para lo que quiero > hacer asi que es normal que me largue este tipo de errores. > > Gracias a todo por la ayuda!!! > FELIZ 2005! > > Ariel > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es -- Luis Miguel No a las patentes de software en Europa EuropeSwPatentFree http://EuropeSwPatentFree.hispalinux.es From magmax9 en yahoo.es Tue Dec 28 23:47:51 2004 From: magmax9 en yahoo.es (Miguel Angel Garcia) Date: Tue, 28 Dec 2004 23:47:51 +0100 Subject: Error de Mysql y como arreglarlo In-Reply-To: <41D1DB91.4070304@yahoo.com.ar> References: <41D1DB91.4070304@yahoo.com.ar> Message-ID: <1104274071.10112.12.camel@lobezno> No tengo mucha idea de SQL, así que perdona si digo alguna estupidez. > Estoy teniendo un problema con mysql desde python. > Tengo que hacer actualizaciones intensivas sobre la base o sea hago > varias actualizaciones y en algun momento de las actualizaciones al azar > en cualquier momento se me corta el proceso con este error... Quizá sea porque está haciendo un "commit". ¿Lanzas tú el "commit" después de cada transacción? Si lo haces después de cada una es posible que las haga más rápidas y no tengas ese problema. > def sql01(db,sql,k): > # Procesa sobre Mysql para procesos que no devuelvan datos!!! > """ Hace una operacion sobre Mysql """ > try: > if k == 'NULL': # Es cuando no viene los datos del sql aparte. > db.execute(sql) > else: > db.execute(sql,k) > return 0 > except db.MySQLError, e: > print e > linea = "* Mysqlerror : " + str(e[0]) + " " + e[1] > gl(linea) > print linea > return -1 > > Mi idea es en el except preguntar por el error y si es ese el error el > 2013 hacer una pausa de 5 segundos y despues reintentar grabar... > Pero hay 2 cosas que no se hacer y por eso pido ayuda.. > una es hacer la pausa con que comando se hace pausa de xx segundos? > y la otra es como hacer para despues de la pausa vuelva a intentarlo o > sea vuelva a try: para reintentar la grabacion, algo asi como un goto > que en python no existe.. :) ¿Qué tal con un "while (true)"? Ya saldrás del "while" con los "return"s. Y... ¡Por favor! Aunque un lenguaje tenga la instrucción maldita, ésta NUNCA se debe usar. Jamás de los jamases ;) Si quieres saber por qué, te remito al libro "la práctica de la programación", de un tal Kernighan (muy recomendable). Lo de los segundos es muy fácil: --------------- import time time.sleep(5) --------------- Además, no consume CPU en la espera ;) Ale, suerte y coméntanos cual fue la solución :D From csotelop en yahoo.es Wed Dec 29 00:01:12 2004 From: csotelop en yahoo.es (Carlos Edurado Sotelo Pinto) Date: Tue, 28 Dec 2004 18:01:12 -0500 Subject: Problema de manejo de fechas Message-ID: <41D1E5B8.4090707@yahoo.es> Hola LIsta hablando de fechas, tengo una pequeña pregunta he usado las funciones timedelta para la adicion de una fecha a otra, pero esto esta dado en dias y tiempo, pero como hago si lo que deseo es no agregar dias, si no meses y/o años, que me dices, alguno ha hecho algun codigo para esto. un saludo nos vemos Carlos From magmax9 en yahoo.es Tue Dec 28 23:59:45 2004 From: magmax9 en yahoo.es (Miguel Angel Garcia) Date: Tue, 28 Dec 2004 23:59:45 +0100 Subject: Error de Mysql y como arreglarlo In-Reply-To: <1104254081.26203.4.camel@Gondor> References: <41D1DB91.4070304@yahoo.com.ar> <1104254081.26203.4.camel@Gondor> Message-ID: <1104274785.10112.23.camel@lobezno> casi ;) Creo que habría que quitar el "return" del except y que podría ser más simple: def mifunc(blablabla): while true: try: if k=='NULL': db.execute(sql) else: db.execute(sql,k) return 0 except db.MySQLError, e: print e linea = "* Mysqlerror : "+str(e[0]) + " " + e[1] gl(linea) print linea Así sólo continúa en caso de pasar por el except From jordinas en gmail.com Wed Dec 29 09:02:06 2004 From: jordinas en gmail.com (Joan Ordinas) Date: Wed, 29 Dec 2004 09:02:06 +0100 Subject: =?iso-8859-1?q?Traducci=F3n_de_m=E9todos_especiales?= Message-ID: <9140533f04122900026edc24bd@mail.gmail.com> No he conseguido encontrar documentación que describa lo que creo es un comportamiento correcto de Python 2.3.3. El caso es que al ejecutar un método especial (__str__, por ejemplo) la documentación dice que, por ejemplo, str(o) se traduce a o.__str__() pero el caso es que se traduce a type(o).__str__(o) o escrito de otra forma, para las nuevas clases o.__class__.__str__(o) Esto sucede con todos los métodos especiales. Demostración: >>> class C(object): ... def __str__(self): ... return 'C.__str__' >>> o = C() >>> o.__str__ = lambda : 'o.__str__' >>> o.__str__() 'o.__str__' >>> str(o) 'C.__str__' >>> print o C.__str__ ¿Alguien ha encontrado documentació que confirme esta impresión? JJOR -- WYSIWYG victims: the lost generation! From py en ch3m4.org Wed Dec 29 10:05:36 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Wed, 29 Dec 2004 10:05:36 +0100 Subject: [OT] Re: Error de Mysql y como arreglarlo In-Reply-To: <1104274071.10112.12.camel@lobezno> References: <41D1DB91.4070304@yahoo.com.ar> <1104274071.10112.12.camel@lobezno> Message-ID: <200412291005.40289.py@ch3m4.org> El Martes, 28 de Diciembre de 2004 23:47, Miguel Angel Garcia escribió: > Y... ¡Por favor! Aunque un lenguaje tenga la instrucción maldita, ésta > NUNCA se debe usar. Jamás de los jamases ;) > > Si quieres saber por qué, te remito al libro "la práctica de la > programación", de un tal Kernighan (muy recomendable). Aunque estoy de acuerdo en que no hay que abusar del goto, no lo estoy tanto como para descartarlo. Hace bastante tiempo vi un artículo de una revista (DrDobb's) que implementaba una máquina de estados con gotos. El goto quedaba oculto dentro de un macro de C que lo hacía seguro de usar y bastante simple de entender. No hay que olvidar que hay cosas similares al goto que se usan bastante como los 'longjumps' de C o los "continuadores" del stackless-python. ------------ 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 pepe en diselpro.com Wed Dec 29 10:25:21 2004 From: pepe en diselpro.com (Pepe Aracil) Date: Wed, 29 Dec 2004 10:25:21 +0100 Subject: Problema de manejo de fechas In-Reply-To: <41D1E5B8.4090707@yahoo.es> References: <41D1E5B8.4090707@yahoo.es> Message-ID: <200412291025.22179.pepe@diselpro.com> Hola. En teoria ninguna función de que realice operaciones aritméticas con tiempo, debería dejar sumar meses, ya que el tiempo que dura cada mes es variable. Lo que si que puedes hacer es sumar meses con meses . Ej: -- codigo -- mes = 12 anyo = 2004 #para sumarle 15 meses .... anyo += (mes + 15) / 12 mes = (mes + 15) % 12 --- Saludos. El Miércoles, 29 de Diciembre de 2004 00:01, Carlos Edurado Sotelo Pinto escribió: > Hola LIsta > hablando de fechas, tengo una pequeña pregunta > he usado las funciones timedelta para la adicion de una fecha a otra, > pero esto esta dado en dias y tiempo, > pero como hago si lo que deseo es no agregar dias, si no meses y/o años, > que me dices, alguno ha hecho algun codigo para esto. > un saludo > nos vemos > > Carlos > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es From FBatista en uniFON.com.ar Wed Dec 29 14:19:44 2004 From: FBatista en uniFON.com.ar (Batista, Facundo) Date: Wed, 29 Dec 2004 10:19:44 -0300 Subject: Problema de manejo de fechas Message-ID: [Carlos Edurado Sotelo Pinto] #- he usado las funciones timedelta para la adicion de una #- fecha a otra, #- pero esto esta dado en dias y tiempo, #- pero como hago si lo que deseo es no agregar dias, si no #- meses y/o años, No puedes, por un problema conceptual. ¿Cuánto es 31/May + 1 mes? ¿30/Mar - 1 mes? ¿29/Feb/2004 + 1 año? Es por eso que los plazos fijos en los bancos son a 30/60/etc días y no por meses, ;) . Facundo Bitácora De Vuelo: http://www.taniquetil.com.ar/plog PyAr - Python Argentina: http://pyar.decode.com.ar/ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ADVERTENCIA. La información contenida en este mensaje y cualquier archivo anexo al mismo, son para uso exclusivo del destinatario y pueden contener información confidencial o propietaria, cuya divulgación es sancionada por la ley. Si Ud. No es uno de los destinatarios consignados o la persona responsable de hacer llegar este mensaje a los destinatarios consignados, no está autorizado a divulgar, copiar, distribuir o retener información (o parte de ella) contenida en este mensaje. Por favor notifíquenos respondiendo al remitente, borre el mensaje original y borre las copias (impresas o grabadas en cualquier medio magnético) que pueda haber realizado del mismo. Todas las opiniones contenidas en este mail son propias del autor del mensaje y no necesariamente coinciden con las de Telefónica Comunicaciones Personales S.A. o alguna empresa asociada. Los mensajes electrónicos pueden ser alterados, motivo por el cual Telefónica Comunicaciones Personales S.A. no aceptará ninguna obligación cualquiera sea el resultante de este mensaje. Muchas Gracias. From csotelop en yahoo.es Wed Dec 29 15:05:49 2004 From: csotelop en yahoo.es (Carlos Edurado Sotelo Pinto) Date: Wed, 29 Dec 2004 09:05:49 -0500 Subject: paquetes.... Message-ID: <41D2B9BD.9050207@yahoo.es> Hola gente tengo una estructura de archivos mas o menos asi raiz /dir1 file11 file12 __init__ /dir2 file21 file22 __init__ file0 file0 import dir.file11 pero como puedo importar desde file21 el archivo file11 GRacias From py en ch3m4.org Wed Dec 29 15:46:38 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Wed, 29 Dec 2004 15:46:38 +0100 Subject: paquetes.... In-Reply-To: <41D2B9BD.9050207@yahoo.es> References: <41D2B9BD.9050207@yahoo.es> Message-ID: <200412291546.41774.py@ch3m4.org> El Miércoles, 29 de Diciembre de 2004 15:05, Carlos Edurado Sotelo Pinto escribió: > Hola gente > tengo una estructura de archivos mas o menos asi > raiz > /dir1 > file11 > file12 > __init__ > /dir2 > file21 > file22 > __init__ > file0 > > file0 > import dir.file11 > > > pero como puedo importar desde file21 el archivo file11 Hace poco hablamos de algo parecido: http://listas.aditel.org/archivos/python-es/2004-November/011187.html Todo el truco consiste en manipular la ruta de búsquedas 'sys.path' para que file21 pueda ver al otro paquete: import sys sys.insert(0,"/dir1") Lo aconsejable es utilizar pkgutil tal como comento en un mensaje del hilo que te he puesto más arriba: http://listas.aditel.org/archivos/python-es/2004-November/011200.html PD: Igual no te he entendido bien. Si no te he resuelto nada, intenta explicar mejor qué es lo que quieres hacer. ------------ 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 magmax9 en yahoo.es Wed Dec 29 17:49:40 2004 From: magmax9 en yahoo.es (Miguel Angel Garcia) Date: Wed, 29 Dec 2004 17:49:40 +0100 Subject: [OT] Re: Error de Mysql y como arreglarlo In-Reply-To: <200412291005.40289.py@ch3m4.org> References: <41D1DB91.4070304@yahoo.com.ar> <1104274071.10112.12.camel@lobezno> <200412291005.40289.py@ch3m4.org> Message-ID: <1104338980.23947.10.camel@localhost> Independientemente de la forma en que se utilice el "goto", estarás de acuerdo conmigo en que rompe la ejecución normal del programa. Es el mismo caso que "return", "continue" o "break" (no sé si todas ellas están en python). Sin embargo, el ámbito de uso de estas tres instrucciones queda reducido a la propia función, como mucho. "goto" es una instrucción cuyo ámbito no está definido, y no sólo puede cambiar el flujo normal del programa, sino también su estructura. En ensamblador no se puede hacer otra cosa: o se utiliza "goto" o la hemos liao :) . Sin embargo, en los lenguajes de alto nivel no debería utilizarse. Los casos en los que podría pensarse el utilizar "goto" se pueden contar con los dedos de una mano. A menudo existe otra solución más simple, segura, eficiente, bonita, lógica o, simplemente mejor estructurada de hacer las cosas que utilizar un "goto". Si a esto le añadimos que estamos hablando de python, un lenguaje de muy alto nivel que está orientado a objetos, no veo lógico utilizar "goto". Te aseguro que puedes hacer máquinas de estados en python sin utilizar "goto"s. De todas maneras, estoy seguro que estás de acuerdo conmigo con que es muy sencillo _abusar_ del "goto". Y usarlo mal es peor que tener un "main" de mil y pico líneas... ;D PD: me has dejao con la mosca detrás de la oreja... Para programar una máquina de estados se podría utilizar un vector de punteros a función. ¡Quedaría muy chulo! (y no se utiliza goto). ¿Qué opinas? El mié, 29-12-2004 a las 10:05 +0100, Chema Cortés escribió: > El Martes, 28 de Diciembre de 2004 23:47, Miguel Angel Garcia escribió: > > Y... ¡Por favor! Aunque un lenguaje tenga la instrucción maldita, ésta > > NUNCA se debe usar. Jamás de los jamases ;) > > > > Si quieres saber por qué, te remito al libro "la práctica de la > > programación", de un tal Kernighan (muy recomendable). > > Aunque estoy de acuerdo en que no hay que abusar del goto, no lo estoy tanto > como para descartarlo. > > Hace bastante tiempo vi un artículo de una revista (DrDobb's) que implementaba > una máquina de estados con gotos. El goto quedaba oculto dentro de un macro > de C que lo hacía seguro de usar y bastante simple de entender. > > No hay que olvidar que hay cosas similares al goto que se usan bastante como > los 'longjumps' de C o los "continuadores" del stackless-python. > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: Esta parte del mensaje está firmada digitalmente URL: ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From csotelop en yahoo.es Wed Dec 29 22:50:23 2004 From: csotelop en yahoo.es (Carlos Edurado Sotelo Pinto) Date: Wed, 29 Dec 2004 16:50:23 -0500 Subject: mensajes de Debug con wxpython Message-ID: <41D3269F.2000501@yahoo.es> Hola gente. es porsible direccionar los mensajes de debug a alguna venta de wxpython, si es posible como se hace esto gracias\un saludo Carlos From fvillarroel en yahoo.com Thu Dec 30 04:11:20 2004 From: fvillarroel en yahoo.com (FERNANDO VILLARROEL) Date: Wed, 29 Dec 2004 19:11:20 -0800 (PST) Subject: mensajes de Debug con wxpython In-Reply-To: <41D3269F.2000501@yahoo.es> References: <41D3269F.2000501@yahoo.es> Message-ID: <20041230031121.66067.qmail@web41204.mail.yahoo.com> Puedes direccionar a una ventana o a un file, para eso te apoyas en las clausulas try y except consultalas.... Feliz A?o nuevo a todos.... --- Carlos Edurado Sotelo Pinto wrote: > Hola gente. > es porsible direccionar los mensajes de debug a > alguna venta de > wxpython, si es posible como se hace esto > gracias\un saludo > Carlos > _______________________________________________ > Python-es mailing list > Python-es en aditel.org > http://listas.aditel.org/listinfo/python-es > __________________________________ Do you Yahoo!? Read only the mail you want - Yahoo! Mail SpamGuard. http://promotions.yahoo.com/new_mail ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From csotelop en yahoo.es Thu Dec 30 16:47:27 2004 From: csotelop en yahoo.es (Carlos Edurado Sotelo Pinto) Date: Thu, 30 Dec 2004 10:47:27 -0500 Subject: CodeBase Message-ID: <41D4230F.5030900@yahoo.es> Hola gente actualmente me encuentro trabajando en una maquina con Microsoft Windows 2000 Server, instale el codebase de esta forma Inclui en el PATH C:/python23 y el PYTHONPATH C:/python23 copie el archivo CodeBase.py y el _CodeBase.pyd a c:/ python 23 luego copie el c4fox.dll a c:/python c4dll.dll prove con el archivo que viene de ejemplo el ex8.py y me salio el siguiente error Error -1095 Error 91091 Aplication/Library version mismatch code4init Library 6500 Headers 6502 y no funcionao UN saludo a todos y Feliz AÑO que el proximo sea un mejor año y que el softlibre siga creciendo Carlos From py en ch3m4.org Thu Dec 30 11:15:11 2004 From: py en ch3m4.org (Chema =?iso-8859-15?q?Cort=E9s?=) Date: Thu, 30 Dec 2004 11:15:11 +0100 Subject: [OT] =?iso-8859-15?q?M=E1quinas_de_estados?= (Re: [OT] Re: Error de Mysql y como arreglarlo) In-Reply-To: <1104338980.23947.10.camel@localhost> References: <41D1DB91.4070304@yahoo.com.ar> <200412291005.40289.py@ch3m4.org> <1104338980.23947.10.camel@localhost> Message-ID: <200412301115.14354.py@ch3m4.org> El Miércoles, 29 de Diciembre de 2004 17:49, Miguel Angel Garcia escribió: > Independientemente de la forma en que se utilice el "goto", estarás de > acuerdo conmigo en que rompe la ejecución normal del programa. Es el > mismo caso que "return", "continue" o "break" (no sé si todas ellas > están en python). Sin embargo, el ámbito de uso de estas tres > instrucciones queda reducido a la propia función, como mucho. > > "goto" es una instrucción cuyo ámbito no está definido, y no sólo puede > cambiar el flujo normal del programa, sino también su estructura. El goto, como bien dices, se ha camuflado bajo muchas formas y nombres. Ahora recuerdo, como cosa rara, los "entry points" que tenía fortran y que llegó a tener el C primitivo. Con éllos podrías entrar en mitad de una función saltándote las primeras líneas. Tampoco hay que olvidarse de los "generadores" del python, que en sí también rompen con el flujo "normal" del programa, y tantas otras variaciones sobre el mismo tema. Lo que llamas flujo "normal" no es otra cosa que flujo "lineal", y no se puede asegurar que sea siempre así. A parte de ejecución multihilo/multiproceso, puedes tener una ejecución regida por un árbol de decisiones como el que a veces se emplea en una máquina de estados. En este caso, se va "recomponiendo" el flujo de ejecución para adaptarlo en tiempo de ejecución. Hablas (más abajo) de utilizar un vector de funciones; pero no llego a verlo tan claro ni elegante como usando "continuadores" (que es similar a la técnica de usar gotos del artículo que comentaba). Por supuesto, está demostrado científicamente que se puede hacer sin gotos, pero no es razón suficiente para descartarlos por completo. > En ensamblador no se puede hacer otra cosa: o se utiliza "goto" o la > hemos liao :) . Sin embargo, en los lenguajes de alto nivel no debería > utilizarse. Los casos en los que podría pensarse el utilizar "goto" se > pueden contar con los dedos de una mano. A menudo existe otra solución > más simple, segura, eficiente, bonita, lógica o, simplemente mejor > estructurada de hacer las cosas que utilizar un "goto". > > Si a esto le añadimos que estamos hablando de python, un lenguaje de muy > alto nivel que está orientado a objetos, no veo lógico utilizar "goto". > Te aseguro que puedes hacer máquinas de estados en python sin utilizar > "goto"s. > > De todas maneras, estoy seguro que estás de acuerdo conmigo con que es > muy sencillo _abusar_ del "goto". Y usarlo mal es peor que tener un > "main" de mil y pico líneas... ;D > > > PD: me has dejao con la mosca detrás de la oreja... Para programar una > máquina de estados se podría utilizar un vector de punteros a función. > ¡Quedaría muy chulo! (y no se utiliza goto). ¿Qué opinas? Como te decía, no lo veo claro. Por ejemplo, ¿cómo piensas que se podría implementar un "analizador léxico" con un vector así? ------------ 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 py en ch3m4.org Thu Dec 30 13:44:34 2004 From: py en ch3m4.org (Chema =?iso-8859-15?q?Cort=E9s?=) Date: Thu, 30 Dec 2004 13:44:34 +0100 Subject: Clase str In-Reply-To: <200412301320.21904.pepe@diselpro.com> References: <200412301232.45266.pepe@diselpro.com> <200412301311.52728.py@ch3m4.org> <200412301320.21904.pepe@diselpro.com> Message-ID: <200412301344.36988.py@ch3m4.org> El Jueves, 30 de Diciembre de 2004 13:20, Pepe Aracil escribió: > Ya está claro, Gracias ;D. > > Además he descubierto que el método __init__() es llamado por el método > __new__(). > > >>> class strA(str): > > ... def __init__(self,value): > ... print "función init valor=%s" % value > ... def __new__(cls,value): > ... print "función new clase=%s" % cls > ... print "función new valor=%s" % value > ... > > >>> j=strA("Hola") > > función new clase= > función new valor=Hola > > >>> j ¡Ojo!, que el método __new__ debe devolver _obligatoriamente_ una instacia de la clase. Si lo haces bien, todo sale como debería: >>> class strA(str): ... def __init__(self,value): ... print "función init valor=%s" % value ... def __new__(cls,value): ... print "función new clase=%s" % cls ... print "función new valor=%s" % value ... return str.__new__(cls,value) ... >>> s=strA("Hola") función new clase= función new valor=Hola función init valor=Hola Y aclarar que el método __new__ nunca llama al __init__. Son dos pasos independientes, la creación y la inicialización de una instancia. ------------ 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 artstreet en gmail.com Thu Dec 30 18:04:26 2004 From: artstreet en gmail.com (aRtS) Date: Thu, 30 Dec 2004 18:04:26 +0100 Subject: unsopported operand types..... Message-ID: Hola buenas a toda la lista: alguien sabe si podria hacer de alguna manera la siguiente operacion 3.2 ^ 2 sin que me diera error?? o esto es imposible en python ??? Muchas gracias. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From csotelop en yahoo.es Thu Dec 30 18:08:51 2004 From: csotelop en yahoo.es (Carlos Edurado Sotelo Pinto) Date: Thu, 30 Dec 2004 12:08:51 -0500 Subject: unsopported operand types..... In-Reply-To: References: Message-ID: <41D43623.6050506@yahoo.es> HOla debes usar el 3.2**2 el ** indica potenciacion Un sludo Cralos aRtS wrote: >Hola buenas a toda la lista: >alguien sabe si podria hacer de alguna manera la siguiente operacion >3.2 ^ 2 sin que me diera error?? o esto es imposible en python ??? >Muchas 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 magmax9 en yahoo.es Thu Dec 30 13:14:49 2004 From: magmax9 en yahoo.es (Miguel Angel Garcia) Date: Thu, 30 Dec 2004 13:14:49 +0100 Subject: [OT] =?ISO-8859-1?Q?M=E1quinas?= de estados (Re: [OT] Re: Error de Mysql y como arreglarlo) In-Reply-To: <200412301115.14354.py@ch3m4.org> References: <41D1DB91.4070304@yahoo.com.ar> <200412291005.40289.py@ch3m4.org> <1104338980.23947.10.camel@localhost> <200412301115.14354.py@ch3m4.org> Message-ID: <1104408889.2731.16.camel@localhost> Bueno... ya nos estamos saliendo mucho del tema :-D Ada también tiene los "entry points". Te voy a poner un ejemplo (por favor, no hagan esto en su casa): ------------------- class coche: [...] def malaprogramacion(self): [...] goto etiqueta [...] class rueda: [...] def malaprogramacion(self): [...] self.mover() [...] --------------------- Creo que no es nada lógico el goto en la programación orientada a objetos. Si python quiere quitar malas costumbres, es lógico que quiera quitar cosas como esta. Para hacer una máquina de estados, lo mejor es fiarse de los más antiguos: lex y bison. Ambos utilizan un simple switch. Perdón por lo del array de punteros a función, pero fue un lapsus mental :-D ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 189 bytes Desc: Esta parte del mensaje está firmada digitalmente URL: ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From python en ammsoft.com Thu Dec 30 18:15:37 2004 From: python en ammsoft.com (Amm-Python) Date: Thu, 30 Dec 2004 18:15:37 +0100 Subject: unsopported operand types..... In-Reply-To: References: Message-ID: <002001c4ee93$30dd28e0$640010ac@nombref31twj9b> Esta me la se. Estas mezclando cosas (^) es un operador a nivel de bits, en este caso concreto un or exclusivo. Si lo que quieres es utilizar potencias usa (**) o pow(a,b) Un saludo, Tnoi > -----Mensaje original----- > De: python-es-bounces en aditel.org > [mailto:python-es-bounces en aditel.org] En nombre de aRtS > Enviado el: dijous, 30 / desembre / 2004 18:04 > Para: python-es en aditel.org > Asunto: [Python-es] unsopported operand types..... > > > Hola buenas a toda la lista: > alguien sabe si podria hacer de alguna manera la siguiente > operacion 3.2 ^ 2 sin que me diera error?? o esto es > imposible en python ??? Muchas gracias. > From pepe en diselpro.com Thu Dec 30 13:20:21 2004 From: pepe en diselpro.com (Pepe Aracil) Date: Thu, 30 Dec 2004 13:20:21 +0100 Subject: Clase str In-Reply-To: <200412301311.52728.py@ch3m4.org> References: <200412301232.45266.pepe@diselpro.com> <200412301311.52728.py@ch3m4.org> Message-ID: <200412301320.21904.pepe@diselpro.com> Ya está claro, Gracias ;D. Además he descubierto que el método __init__() es llamado por el método __new__(). >>> class strA(str): ... def __init__(self,value): ... print "función init valor=%s" % value ... def __new__(cls,value): ... print "función new clase=%s" % cls ... print "función new valor=%s" % value ... >>> j=strA("Hola") función new clase= función new valor=Hola >>> j >>> ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From py en ch3m4.org Thu Dec 30 13:11:50 2004 From: py en ch3m4.org (Chema =?iso-8859-1?q?Cort=E9s?=) Date: Thu, 30 Dec 2004 13:11:50 +0100 Subject: Clase str In-Reply-To: <200412301232.45266.pepe@diselpro.com> References: <200412301232.45266.pepe@diselpro.com> Message-ID: <200412301311.52728.py@ch3m4.org> El Jueves, 30 de Diciembre de 2004 12:32, Pepe Aracil escribió: > Hola. > > Obtengo este comportamiento: > > --- codigo --- > > >>> class strA(str): > > ... def __init__(self,value): > ... print "me han pasado la cadena %s" % value > ... > > >>> s = strA("Pepe") > > me han pasado la cadena Pepe > > >>> s > > 'Cadena' > -------- > > porque al imprimir la variable s me saca el valor de la cadena si en el > constructor no he hecho nada con ella ¿¿¿??? > > ¿Trata python la calase str de forma especial? Supongo que te suena lo de la "inmutabilidad" de objetos, ¿no? ;-) Los objetos inmutables (eg: str, unicode, tuple,...) obtienen su valor "inmutable" cuando son creados dentro del método __new__, no afectándoles lo que hagas en el __init__ > No es nada importante pero me gusta saber como funcionan las cosas :) Éso está bien. ;-) ------------ 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 pepe en diselpro.com Thu Dec 30 12:32:45 2004 From: pepe en diselpro.com (Pepe Aracil) Date: Thu, 30 Dec 2004 12:32:45 +0100 Subject: Clase str Message-ID: <200412301232.45266.pepe@diselpro.com> Hola. Obtengo este comportamiento: --- codigo --- >>> class strA(str): ... def __init__(self,value): ... print "me han pasado la cadena %s" % value ... >>> s = strA("Pepe") me han pasado la cadena Pepe >>> s 'Cadena' -------- porque al imprimir la variable s me saca el valor de la cadena si en el constructor no he hecho nada con ella ¿¿¿??? ¿Trata python la calase str de forma especial? No es nada importante pero me gusta saber como funcionan las cosas :) Gracias. From pepe en diselpro.com Thu Dec 30 12:39:52 2004 From: pepe en diselpro.com (Pepe Aracil) Date: Thu, 30 Dec 2004 12:39:52 +0100 Subject: Clase str In-Reply-To: <200412301232.45266.pepe@diselpro.com> References: <200412301232.45266.pepe@diselpro.com> Message-ID: <200412301239.52011.pepe@diselpro.com> En el código donde pone: 'Cadena' quería poner 'Pepe' Problemas de copypaste :) From artstreet en gmail.com Thu Dec 30 19:38:45 2004 From: artstreet en gmail.com (aRtS) Date: Thu, 30 Dec 2004 19:38:45 +0100 Subject: unsopported operand types..... In-Reply-To: <002001c4ee93$30dd28e0$640010ac@nombref31twj9b> References: <002001c4ee93$30dd28e0$640010ac@nombref31twj9b> Message-ID: Oye muchas gracias ese era el problema que confundia el ^ de C por el ** de python , gracias a todos. ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From arn_python en yahoo.com.ar Thu Dec 30 21:46:35 2004 From: arn_python en yahoo.com.ar (Ariel Nardelli) Date: Thu, 30 Dec 2004 17:46:35 -0300 Subject: [OT] Re: Error de Mysql y como arreglarlo In-Reply-To: <200412291005.40289.py@ch3m4.org> References: <41D1DB91.4070304@yahoo.com.ar> <1104274071.10112.12.camel@lobezno> <200412291005.40289.py@ch3m4.org> Message-ID: <41D4692B.2030806@yahoo.com.ar> Exacto Chema. Yo creo que en determinados casos es bueno usarlo siempre y cuando no rompas las estructuras, pero en ocaciones es mas simple un goto que una estructura de while. Ademas ya pasa por usos personales, cada programador con su librito y hay gente que lo odia y hay gente que no puede programar sin el. Yo recien era la primera vez que andaba buscando un goto en python, es mas fue una de mis preguntas porque realmente no sabia si existia el goto. Feliz 2005!!!! y gracias porque en este año que me inicie en python muchas veces aclaraste mis dudas!! Ariel Chema Cortés wrote: >El Martes, 28 de Diciembre de 2004 23:47, Miguel Angel Garcia escribió: > > >>Y... ¡Por favor! Aunque un lenguaje tenga la instrucción maldita, ésta >>NUNCA se debe usar. Jamás de los jamases ;) >> >>Si quieres saber por qué, te remito al libro "la práctica de la >>programación", de un tal Kernighan (muy recomendable). >> >> > >Aunque estoy de acuerdo en que no hay que abusar del goto, no lo estoy tanto >como para descartarlo. > >Hace bastante tiempo vi un artículo de una revista (DrDobb's) que implementaba >una máquina de estados con gotos. El goto quedaba oculto dentro de un macro >de C que lo hacía seguro de usar y bastante simple de entender. > >No hay que olvidar que hay cosas similares al goto que se usan bastante como >los 'longjumps' de C o los "continuadores" del stackless-python. > > >------------------------------------------------------------------------ > >_______________________________________________ >Python-es mailing list >Python-es en aditel.org >http://listas.aditel.org/listinfo/python-es > > From arn_python en yahoo.com.ar Thu Dec 30 21:43:49 2004 From: arn_python en yahoo.com.ar (Ariel Nardelli) Date: Thu, 30 Dec 2004 17:43:49 -0300 Subject: [OT] Re: Error de Mysql y como arreglarlo In-Reply-To: <1104338980.23947.10.camel@localhost> References: <41D1DB91.4070304@yahoo.com.ar> <1104274071.10112.12.camel@lobezno> <200412291005.40289.py@ch3m4.org> <1104338980.23947.10.camel@localhost> Message-ID: <41D46885.6000105@yahoo.com.ar> :) Te cuento que yo hace un tiempo que no uso goto solo en casos excepcionales y si molestan un poco en la esctructuras del programa. Si embargo mi idea del goto era para que vuelva al principio de la funcion, en el momento que quise hacerlo se me borro el while y me emperre que queria mi viejo goto. Yo habitualmente no uso goto es mas desde hace bastante tiempo no lo uso pero creo que en determinados casos es bueno usarlo en rutinas pequeñas porque te simplifican un poco las cosas, pero como todo en casos excepcionales. Siempre todo el mundo es muy enemigo del goto ya lo se, pero te repito por ahi en determinados casos es mas facil poner un goto que poner un while. Ademas es como todo :) depende mucho de los gustos y como el programador arma las cosas, hay gente por ejemplo como vos que odia el goto y conozco programadores que no usan lenguajes que no tengan goto :). Esta es mas bien una discucion teologica sobre la programacion :) cada uno tiene sus pro y contras del uso, yo te repito creo que en determinadas rutinas es bueno usarlo porque con una sentencia te evitas el while y ni hablar si tenes que ir en preguntas logicas a varias partes, terminas anidando todo y se complica la estructura. Saludos y FELIZ 2005!!! Ariel Miguel Angel Garcia wrote: >Independientemente de la forma en que se utilice el "goto", estarás de >acuerdo conmigo en que rompe la ejecución normal del programa. Es el >mismo caso que "return", "continue" o "break" (no sé si todas ellas >están en python). Sin embargo, el ámbito de uso de estas tres >instrucciones queda reducido a la propia función, como mucho. > >"goto" es una instrucción cuyo ámbito no está definido, y no sólo puede >cambiar el flujo normal del programa, sino también su estructura. > >En ensamblador no se puede hacer otra cosa: o se utiliza "goto" o la >hemos liao :) . Sin embargo, en los lenguajes de alto nivel no debería >utilizarse. Los casos en los que podría pensarse el utilizar "goto" se >pueden contar con los dedos de una mano. A menudo existe otra solución >más simple, segura, eficiente, bonita, lógica o, simplemente mejor >estructurada de hacer las cosas que utilizar un "goto". > >Si a esto le añadimos que estamos hablando de python, un lenguaje de muy >alto nivel que está orientado a objetos, no veo lógico utilizar "goto". >Te aseguro que puedes hacer máquinas de estados en python sin utilizar >"goto"s. > >De todas maneras, estoy seguro que estás de acuerdo conmigo con que es >muy sencillo _abusar_ del "goto". Y usarlo mal es peor que tener un >"main" de mil y pico líneas... ;D > > >PD: me has dejao con la mosca detrás de la oreja... Para programar una >máquina de estados se podría utilizar un vector de punteros a función. >¡Quedaría muy chulo! (y no se utiliza goto). ¿Qué opinas? > > >El mié, 29-12-2004 a las 10:05 +0100, Chema Cortés escribió: > > >>El Martes, 28 de Diciembre de 2004 23:47, Miguel Angel Garcia escribió: >> >> >>>Y... ¡Por favor! Aunque un lenguaje tenga la instrucción maldita, ésta >>>NUNCA se debe usar. Jamás de los jamases ;) >>> >>>Si quieres saber por qué, te remito al libro "la práctica de la >>>programación", de un tal Kernighan (muy recomendable). >>> >>> >>Aunque estoy de acuerdo en que no hay que abusar del goto, no lo estoy tanto >>como para descartarlo. >> >>Hace bastante tiempo vi un artículo de una revista (DrDobb's) que implementaba >>una máquina de estados con gotos. El goto quedaba oculto dentro de un macro >>de C que lo hacía seguro de usar y bastante simple de entender. >> >>No hay que olvidar que hay cosas similares al goto que se usan bastante como >>los 'longjumps' de C o los "continuadores" del stackless-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 >> >> From arn_python en yahoo.com.ar Thu Dec 30 22:07:56 2004 From: arn_python en yahoo.com.ar (Ariel Nardelli) Date: Thu, 30 Dec 2004 18:07:56 -0300 Subject: Error de Mysql y como arreglarlo In-Reply-To: <1104274785.10112.23.camel@lobezno> References: <41D1DB91.4070304@yahoo.com.ar> <1104254081.26203.4.camel@Gondor> <1104274785.10112.23.camel@lobezno> Message-ID: <41D46E2C.5070801@yahoo.com.ar> ok!!! GRACIAS!!!! ahi ya lo estoy implementando. solo falta los errores y ver como los manejo segun la ocacion... GRACIAS!!! Ariel Miguel Angel Garcia wrote: >casi ;) > >Creo que habría que quitar el "return" del except y que podría ser más >simple: > >def mifunc(blablabla): > while true: > try: > if k=='NULL': > db.execute(sql) > else: > db.execute(sql,k) > return 0 > except db.MySQLError, e: > print e > linea = "* Mysqlerror : "+str(e[0]) + " " + e[1] > gl(linea) > print linea > > >Así sólo continúa en caso de pasar por el except > >_______________________________________________ >Python-es mailing list >Python-es en aditel.org >http://listas.aditel.org/listinfo/python-es > > From arn_python en yahoo.com.ar Thu Dec 30 22:40:32 2004 From: arn_python en yahoo.com.ar (Ariel Nardelli) Date: Thu, 30 Dec 2004 18:40:32 -0300 Subject: Error de Mysql y como arreglarlo In-Reply-To: <1104254081.26203.4.camel@Gondor> References: <41D1DB91.4070304@yahoo.com.ar> <1104254081.26203.4.camel@Gondor> Message-ID: <41D475D0.5070202@yahoo.com.ar> Gracias David Te cuento que justamente ahora estoy probando una mezcla de time.sleep y del bucle para que cuando me da ese error quede "a la espera" por 5 segundos y reintente grabar a ver como me va, podria decir que es la beta 00000 de mi rutinita! Gracias! FELIZ 2005 David Ortega Berdún wrote: >A ver esto, creo que tengo las dos respuestas. > >Para el sleep prueba con poner time.sleep(delay), habiendo hecho un >import time. > >Para el bucle podias probar con algo por el estilo a esto: > >seguir=1 >while seguir==1: > try: > if k=='NULL': > db.execute(sql) > else: > db.execute(sql,k) > return 0 > except db.MySQLError, e: > print e > linea = "* Mysqlerror : "+str(e[0]) + " " + e[1] > gl(linea) > print linea > return -1 > seguir=0 > >Así si pasa del except pondrá seguir a 0 y ya no entrará más al bucle. >No lo he probado, pero creo que funcionará y sino que me corrijan :P > >Un saludo y feliz 2005. > >El mar, 28-12-2004 a las 19:17 -0300, Ariel Nardelli escribió: > > >>Hola a todos!. >> >>Estoy teniendo un problema con mysql desde python. >>Tengo que hacer actualizaciones intensivas sobre la base o sea hago >>varias actualizaciones y en algun momento de las actualizaciones al azar >>en cualquier momento se me corta el proceso con este error... >> >>* Mysqlerror : -(6011)- E: 2013 Lost connection to MySQL server during query >>* Mysqlerror : -([1L, 3221506L, 6011])- E: 2013 Lost connection to MySQL >>server during query >> >>Segun puedo entender es porque se me cae el servidor mysql y en realidad >>no es que se para sino que deja de atender porque esta ocupado. >> >>La idea mia es si tengo este error detener la actualizacion por 5 >>segundos y luego volver a intentar actualizar la base ya que pasado un >>ratito mysql sigue atendiendo y corriendo sin problemas, el tema mas >>bien es que para por sobrecarga. >> >>Esta es mi rutina que graba los datos en mysql... >> >>def sql01(db,sql,k): >> # Procesa sobre Mysql para procesos que no devuelvan datos!!! >> """ Hace una operacion sobre Mysql """ >> try: >> if k == 'NULL': # Es cuando no viene los datos del sql aparte. >> db.execute(sql) >> else: >> db.execute(sql,k) >> return 0 >> except db.MySQLError, e: >> print e >> linea = "* Mysqlerror : " + str(e[0]) + " " + e[1] >> gl(linea) >> print linea >> return -1 >> >>Mi idea es en el except preguntar por el error y si es ese el error el >>2013 hacer una pausa de 5 segundos y despues reintentar grabar... >>Pero hay 2 cosas que no se hacer y por eso pido ayuda.. >>una es hacer la pausa con que comando se hace pausa de xx segundos? >>y la otra es como hacer para despues de la pausa vuelva a intentarlo o >>sea vuelva a try: para reintentar la grabacion, algo asi como un goto >>que en python no existe.. :) >> >>Alguien puede tirarme una mano?, ya que la maquina es chica en donde >>esta el mysql este va a ser un error normal mas de una vez va a quedar >>en espera porque la pobre maquinita no da a vasto para lo que quiero >>hacer asi que es normal que me largue este tipo de errores. >> >>Gracias a todo por la ayuda!!! >>FELIZ 2005! >> >>Ariel >>_______________________________________________ >>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 arn_python en yahoo.com.ar Thu Dec 30 23:03:37 2004 From: arn_python en yahoo.com.ar (Ariel Nardelli) Date: Thu, 30 Dec 2004 19:03:37 -0300 Subject: Error de Mysql y como arreglarlo In-Reply-To: <1104274071.10112.12.camel@lobezno> References: <41D1DB91.4070304@yahoo.com.ar> <1104274071.10112.12.camel@lobezno> Message-ID: <41D47B39.5020503@yahoo.com.ar> Hola Miguel. Miguel Angel Garcia wrote: >No tengo mucha idea de SQL, así que perdona si digo alguna estupidez. > > > >>Estoy teniendo un problema con mysql desde python. >>Tengo que hacer actualizaciones intensivas sobre la base o sea hago >>varias actualizaciones y en algun momento de las actualizaciones al azar >>en cualquier momento se me corta el proceso con este error... >> >> > >Quizá sea porque está haciendo un "commit". ¿Lanzas tú el "commit" >después de cada transacción? Si lo haces después de cada una es posible >que las haga más rápidas y no tengas ese problema. > > Si, te cuento que tengo habitualmente activado el autoconmit pero en este caso estaba activando y desactivando y haciendo a mano el conmit. Termine dejando directamente el autocommit activado y listo ya es un problema menos. > > >>def sql01(db,sql,k): >> # Procesa sobre Mysql para procesos que no devuelvan datos!!! >> """ Hace una operacion sobre Mysql """ >> try: >> if k == 'NULL': # Es cuando no viene los datos del sql aparte. >> db.execute(sql) >> else: >> db.execute(sql,k) >> return 0 >> except db.MySQLError, e: >> print e >> linea = "* Mysqlerror : " + str(e[0]) + " " + e[1] >> gl(linea) >> print linea >> return -1 >> >>Mi idea es en el except preguntar por el error y si es ese el error el >>2013 hacer una pausa de 5 segundos y despues reintentar grabar... >>Pero hay 2 cosas que no se hacer y por eso pido ayuda.. >>una es hacer la pausa con que comando se hace pausa de xx segundos? >>y la otra es como hacer para despues de la pausa vuelva a intentarlo o >>sea vuelva a try: para reintentar la grabacion, algo asi como un goto >>que en python no existe.. :) >> >> > >¿Qué tal con un "while (true)"? Ya saldrás del "while" con los >"return"s. > > > Si asi lo tengo ahora!!! >Y... ¡Por favor! Aunque un lenguaje tenga la instrucción maldita, ésta >NUNCA se debe usar. Jamás de los jamases ;) > >Si quieres saber por qué, te remito al libro "la práctica de la >programación", de un tal Kernighan (muy recomendable). > > :) como dije por ahi en determinados casos a veces aclara el codigo usar gotos. Aunque es mas bien algo mas personal, para algunos programadores el uso del goto es mala palabra y para otros tiene que tenerlo si o si. Creo que por ahi es algo mas bien sobre gustos de programadores. >Lo de los segundos es muy fácil: >--------------- >import time >time.sleep(5) >--------------- > >Además, no consume CPU en la espera ;) > >Ale, suerte y coméntanos cual fue la solución :D > > Y si ya lo estoy probandoooo!!!!! Te cuento que esta andando con el while y ademas ya estoy haciendo las primeras pruebas de mi superrutina :) vamos a ver como anda... GRACIAS!!!! FELIZ 2005!!!!!!!!!!! Ariel >_______________________________________________ >Python-es mailing list >Python-es en aditel.org >http://listas.aditel.org/listinfo/python-es > > From alxgnar en esdebian.org Fri Dec 31 03:30:06 2004 From: alxgnar en esdebian.org (alexander rodriguez) Date: Thu, 30 Dec 2004 18:30:06 -0800 (PST) Subject: ..... Message-ID: <20041231023006.D711E23E92@sitemail.everyone.net> hola, solo para desearles un feliz año a todos los de la lista y gracias por mantenerla, agradezco su ayuda. chema gracias por tu oportuna colaboración a este novato. att. alx. _____________________________________________________________ Create tu cuenta de email en www.esdebian.org ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From pepe en diselpro.com Fri Dec 31 10:47:27 2004 From: pepe en diselpro.com (Pepe Aracil) Date: Fri, 31 Dec 2004 10:47:27 +0100 Subject: [OT] Re: Error de Mysql y como arreglarlo In-Reply-To: <41D46885.6000105@yahoo.com.ar> References: <41D1DB91.4070304@yahoo.com.ar> <1104338980.23947.10.camel@localhost> <41D46885.6000105@yahoo.com.ar> Message-ID: <200412311047.27672.pepe@diselpro.com> El Jueves, 30 de Diciembre de 2004 21:43, Ariel Nardelli escribió: > Yo habitualmente no uso goto es mas desde hace bastante tiempo no lo > uso pero creo que en determinados casos es bueno usarlo en rutinas > pequeñas porque te simplifican un poco las cosas, pero como todo en > casos excepcionales. Yo cuando necesito un goto imperiosamente P. Ej . cuando quiero salir de un montón de bucles anidados de manera rápida sin tener que andar haciendo if .. : break en cada nivel, lo que hago es provocar una excepción que capturo al final de las estructura de bucles. Obviamente es una excepción definida por mi, y no ando haciendo Divide by zero ;) Es como un goto pero sin usar goto ;P Saludos. From nakarar386 en hotmail.com Fri Dec 31 13:19:51 2004 From: nakarar386 en hotmail.com (Rasta Popoulus) Date: Fri, 31 Dec 2004 12:19:51 +0000 Subject: Como ordenar fechas de menor a mayor Message-ID: El problema es que tengo q crear un programa que lea una lista de fechas, y hasta ahí va bien la cosa. El problema es que se pide que se ordene esa lista de menor a mayor, con algun algoritmo de ordenación e imprimir las fechas debidamente ordenadas. A continuación pongo el esquema de lo hecho hasta ahora, para ver como se puede cuadrar y si hace falta cambia algo: from record import record class TFecha(record): anyo=0 mes=0 dia=0 #Función para crear el registro y leer sus datos def leerFecha(): fec=TFecha() fec.anyo=int(raw_input("Introduzca e año: ")) fec.mes=int(raw_input("Introduce el mes: ")) fec.dia=int(raw_input("Introduce el dia: ")) return fec #Función para leer las fechas e introducirlas en la lista hasta que el usuario quiera def leerListaFecha(lista): opc="s" while opc=="s" or opc== "S": fec=leerFecha() lista.append(fec) opc=raw_input("¿Desea introducir más fechas (S/N)? ") #Función para imprimir las fechas de menos a mayor def imprimirMenMay(lista): ¿Y ahora qué? #Programa principal #Creamos el vector vacio lista=[] leerListaPersonas(lista) imprimirMenMay _________________________________________________________________ Acepta el reto MSN Premium: Correos más divertidos con fotos y textos increíbles en MSN Premium. Descárgalo y pruébalo 2 meses gratis. http://join.msn.com?XAPID=1697&DI=1055&HL=Footer_mailsenviados_correosmasdivertidos From pepe en diselpro.com Fri Dec 31 13:35:03 2004 From: pepe en diselpro.com (Pepe Aracil) Date: Fri, 31 Dec 2004 13:35:03 +0100 Subject: cx-freeze y PyGTK Message-ID: <200412311335.03557.pepe@diselpro.com> Por fin!!! He conseguido congelar una aplicación que usa PyGTK con el cx-freeze. :-D Antes mis clientes se tenían que instalar estos paquetes ... - python 2.3 - GTK para windows - PyGtk - extensiones para win32 - PySerial ... y por este orden si no querían tener problemas. Ahora solo tienen ejecutar el install.exe hecho con el inno setup, y queda mucho más profesional. Lo que más guerra me dió, fue detectar y copiar los ficheros necesarios de GTK,PyGTK y win32 al directorio de mi aplicación. También me dió algo por cu** la inclusión de los encodings latin-1 y utf-8. Si alguien tiene que hacer un instalador para una aplicación que use python y pygtk que me lo diga y así no tendrá que sufrir tanto ;-) Saludos. From python en ammsoft.com Fri Dec 31 13:51:22 2004 From: python en ammsoft.com (Amm-Python) Date: Fri, 31 Dec 2004 13:51:22 +0100 Subject: cx-freeze y PyGTK In-Reply-To: <200412311335.03557.pepe@diselpro.com> References: <200412311335.03557.pepe@diselpro.com> Message-ID: <000801c4ef37$6f6caf50$640010ac@nombref31twj9b> Estas cosas hay que colgarlas en el apartado recertas de www.pythonhispano.org > -----Mensaje original----- > De: python-es-bounces en aditel.org > [mailto:python-es-bounces en aditel.org] En nombre de Pepe Aracil > Enviado el: divendres, 31 / desembre / 2004 13:35 > Para: La lista de python en castellano > Asunto: [Python-es] cx-freeze y PyGTK > > > Por fin!!! > > He conseguido congelar una aplicación que usa PyGTK con el > cx-freeze. :-D > > Antes mis clientes se tenían que instalar estos paquetes ... > - python 2.3 > - GTK para windows > - PyGtk > - extensiones para win32 > - PySerial > ... y por este orden si no querían tener problemas. > > Ahora solo tienen ejecutar el install.exe hecho con el inno > setup, y queda > mucho más profesional. > > Lo que más guerra me dió, fue detectar y copiar los ficheros > necesarios de > GTK,PyGTK y win32 al directorio de mi aplicación. > También me dió algo por cu** la inclusión de los encodings > latin-1 y utf-8. > > Si alguien tiene que hacer un instalador para una aplicación > que use python y > pygtk que me lo diga y así no tendrá que sufrir tanto ;-) > > Saludos. > > _______________________________________________ > Python-es mailing list > Python-es en aditel.org http://listas.aditel.org/listinfo/python-es > From ripolles en aditel.org Fri Dec 31 13:52:18 2004 From: ripolles en aditel.org (Daniel Ripolles) Date: Fri, 31 Dec 2004 13:52:18 +0100 Subject: cx-freeze y PyGTK In-Reply-To: <200412311335.03557.pepe@diselpro.com> References: <200412311335.03557.pepe@diselpro.com> Message-ID: <1104497538.4758.1.camel@turing> El vie, 31-12-2004 a las 13:35 +0100, Pepe Aracil escribió: > Por fin!!! > > He conseguido congelar una aplicación que usa PyGTK con el cx-freeze. :-D > > Antes mis clientes se tenían que instalar estos paquetes ... > - python 2.3 > - GTK para windows > - PyGtk > - extensiones para win32 > - PySerial > ... y por este orden si no querían tener problemas. > > Ahora solo tienen ejecutar el install.exe hecho con el inno setup, y queda > mucho más profesional. > > Lo que más guerra me dió, fue detectar y copiar los ficheros necesarios de > GTK,PyGTK y win32 al directorio de mi aplicación. > También me dió algo por cu** la inclusión de los encodings latin-1 y utf-8. > > Si alguien tiene que hacer un instalador para una aplicación que use python y > pygtk que me lo diga y así no tendrá que sufrir tanto ;-) Molaría que cuando tuvieras un rato lo explicaras en la lista, así saldría al buscar en google y tal :D Bueno, si te apetece, el mundo te lo agradecerá. Ah y felizañonuevo :P -- Daniel Ripolles ( Eru ) http://elrenglontorcido.blogspot.com/ $n=<>;(sprintf('%b',$_)=~y:1::==$n)&&print"$_\n"for 0..255 ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From aragorn en pythonhispano.org Fri Dec 31 14:08:18 2004 From: aragorn en pythonhispano.org (Jose) Date: Fri, 31 Dec 2004 14:08:18 +0100 Subject: cx-freeze y PyGTK In-Reply-To: <000801c4ef37$6f6caf50$640010ac@nombref31twj9b> References: <000801c4ef37$6f6caf50$640010ac@nombref31twj9b> Message-ID: <1104498497.4233.0.camel@demeter.speriaitc.com> El vie, 31-12-2004 a las 13:51, Amm-Python escribió: > Estas cosas hay que colgarlas en el apartado recertas de > www.pythonhispano.org +1 Saludos, Jose ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From pepe en diselpro.com Fri Dec 31 14:07:11 2004 From: pepe en diselpro.com (Pepe Aracil) Date: Fri, 31 Dec 2004 14:07:11 +0100 Subject: cx-freeze y PyGTK In-Reply-To: <1104497538.4758.1.camel@turing> References: <200412311335.03557.pepe@diselpro.com> <1104497538.4758.1.camel@turing> Message-ID: <200412311407.11273.pepe@diselpro.com> El Viernes, 31 de Diciembre de 2004 13:52, Daniel Ripolles escribió: > > Molaría que cuando tuvieras un rato lo explicaras en la lista, así > saldría al buscar en google y tal :D En cuanto se me pase la resaca de fin de año, haré una receta con todos los pasos que he dado para conseguirlo. > > Ah y felizañonuevo :P > Ídem ;D > -- > Daniel Ripolles ( Eru ) > http://elrenglontorcido.blogspot.com/ > $n=<>;(sprintf('%b',$_)=~y:1::==$n)&&print"$_\n"for 0..255 ------------ próxima parte ------------ _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es From miguel.hernandez en icr-sa.com Fri Dec 31 14:19:03 2004 From: miguel.hernandez en icr-sa.com (=?ISO-8859-1?Q?Miguel_Hern=E1ndez_Martos?=) Date: Fri, 31 Dec 2004 14:19:03 +0100 Subject: cx-freeze y PyGTK In-Reply-To: <200412311335.03557.pepe@diselpro.com> References: <200412311335.03557.pepe@diselpro.com> Message-ID: <41D551C7.5020608@icr-sa.com> Pepe Aracil wrote: >Por fin!!! > >He conseguido congelar una aplicación que usa PyGTK con el cx-freeze. :-D > > Jo tio, casualidades de la vida! Esta misma mañana he terminado un CD autorrancable para windws 98 con py2exe, pygtk, glade y sqlite y me habia puesto a explicar en mi blog los pasos aseguir :))) Por si a alguien le interesa: - http://enlavin.com/blogs/index.php?title=como_hacer_un_ejecutable_a_partir_de_un&more=1&c=1&tb=1&pb=1 A lo mejor era interesante hacer una receta conjunta sobre py2exe y cx_freeze para colgarla en pythonhispano como comentan mas arriba. En cualquier caso ahi esta la mia para quien quiera usarla. Nos vemos! -- |...... Miguel Hernández Martos | Ingeniería y Control Remoto, S.A ...| |..... Departamento de Software | Pol. Ind. Juncaril C/Baza Parc. 207.| |.............................. | 18220 Albolote-Granada (España) ....| |. | Tels.: + 34 902 43 00 05 ...........| |........ http://www.icr-sa.com | Fax: + 34 958 46 79 08 .............| From python en ammsoft.com Fri Dec 31 16:05:45 2004 From: python en ammsoft.com (Amm-Python) Date: Fri, 31 Dec 2004 16:05:45 +0100 Subject: goto In-Reply-To: <200412311047.27672.pepe@diselpro.com> References: <200412311047.27672.pepe@diselpro.com> Message-ID: <001b01c4ef4a$34d48da0$640010ac@nombref31twj9b> Lleváis varios días dándole vueltas a lo del "herético" goto. El comando maldito. Hay un proyecto que permite usar el goto en python, espero no haber abierto "la Caja de Pandora". http://www.entrian.com/goto/ Es interesante ya que no acepta saltos entre funciones y o módulos, saltar dentro de un bucle o de una excepción. Es decir; es un goto muy controlado. Una comparación simple: # Ejemplo: Salir de un bucle profundamente anidado: #1.- Con banderas. flag=0 for i in range(1, 10): print i for j in range(1, 20): print i, j for k in range(1, 30): print i, j, k if k == 3: flag=1 break if flag: break if flag1: break print "Finished with flags\n" #2.- Con try try: for i in range(1, 10): print i for j in range(1, 20): print i, j for k in range(1, 30): print i, j, k if k == 3: raise "fin" except "fin": print "Finished with try\n" #3.- Usando una funcion def funcion(): for i in range(1, 10): print i for j in range(1, 20): print i, j for k in range(1, 30): print i, j, k if k == 3: return funcion() print "Finished with function\n" #4.- Con goto 8-O from goto import goto, comefrom, label for i in range(1, 10): print i for j in range(1, 20): print i, j for k in range(1, 30): print i, j, k if k == 3: goto .end label .end print "Finished with goto\n" Visto lo visto: La simulación de gotos con Try es casi idéntica al uso del propio "goto". Por lo que pregunto: Es ortodoxo usar el comando try en estas situaciones ? En caso afirmativo: Sería lícito usar el módulo "goto" en lugar de try ? En caso contrario: Cuál es la solución ? En cualquier caso agradecería más ejemplos basados en este modelo. #............. #............. Un saludo, Toni From python en ammsoft.com Fri Dec 31 16:32:12 2004 From: python en ammsoft.com (Amm-Python) Date: Fri, 31 Dec 2004 16:32:12 +0100 Subject: Como ordenar fechas de menor a mayor In-Reply-To: References: Message-ID: <001c01c4ef4d$e6b55420$640010ac@nombref31twj9b> Para ordenar una lista es suficiente con lista.sort() Como son fechas, lo que quieres ordenar, la cosa se complica. Pero si la lista es de tres colunnas año, mes y dia ... Mirate esta receta, puede que que ayude. http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/305321 Incluso,a lo mejor, es más fácil todavía: >>> import datetime >>> a = datetime.date(2004,2,1) >>> b = datetime.date(2004,1,21) >>> l =[a,b] >>> l [datetime.date(2004, 2, 1), datetime.date(2004, 1, 21)] >>> l.sort() >>> l [datetime.date(2004, 1, 21), datetime.date(2004, 2, 1)] >>> > -----Mensaje original----- > De: python-es-bounces en aditel.org > [mailto:python-es-bounces en aditel.org] En nombre de Rasta Popoulus > Enviado el: divendres, 31 / desembre / 2004 13:20 > Para: python-es en aditel.org > Asunto: [Python-es] Como ordenar fechas de menor a mayor > > > El problema es que tengo q crear un programa que lea una > lista de fechas, y > hasta ahí va bien la cosa. El problema es que se pide que se > ordene esa > lista de menor a mayor, con algun algoritmo de ordenación e > imprimir las > fechas debidamente ordenadas. A continuación pongo el esquema > de lo hecho > hasta ahora, para ver como se puede cuadrar y si hace falta > cambia algo: > > from record import record > > class TFecha(record): > anyo=0 > mes=0 > dia=0 > > #Función para crear el registro y leer sus datos > def leerFecha(): > fec=TFecha() > fec.anyo=int(raw_input("Introduzca e año: ")) > fec.mes=int(raw_input("Introduce el mes: ")) > fec.dia=int(raw_input("Introduce el dia: ")) > return fec > > #Función para leer las fechas e introducirlas en la lista > hasta que el > usuario quiera > def leerListaFecha(lista): > opc="s" > while opc=="s" or opc== "S": > fec=leerFecha() > lista.append(fec) > opc=raw_input("¿Desea introducir más fechas (S/N)? ") > > #Función para imprimir las fechas de menos a mayor > def imprimirMenMay(lista): > ¿Y ahora qué? > > #Programa principal > #Creamos el vector vacio > lista=[] > leerListaPersonas(lista) > imprimirMenMay > > _________________________________________________________________ > Acepta el reto MSN Premium: Correos más divertidos con fotos y textos > increíbles en MSN Premium. Descárgalo y pruébalo 2 meses gratis. > http://join.msn.com?XAPID=1697&DI=1055&HL=Footer_mailsenviados _correosmasdivertidos _______________________________________________ Python-es mailing list Python-es en aditel.org http://listas.aditel.org/listinfo/python-es