continuo con las listas de cadenas de caracteres

sonia siosss en hotmail.com
Vie Ago 30 19:07:41 CEST 2002


a ver! tengo 2 versiones del programa de la lista de cadenas de caracteres y
ninguno
me funciona. no se puede hacer sin utilizar el get??
aki os pongo los 2 errores de ejecucion. a ver si hay solucion!


Las palabras a mirar son: 
['pepe', 'dale', 'amigo', 'ernesto']
Traceback (innermost last):
  File "A:\def.py", line 28, in ?
    res = contar(lista)
  File "A:\def.py", line 10, in contar
    frecuencia[letra] = frecuencia.get(letra,0)+1 #cuenta todas las letras
AttributeError: get

Las lista inicial es: 
['pepe', 'dale', 'amigo', 'ernesto']
Traceback (innermost last):
  File "A:\pra4.py", line 35, in ?
    res = pra4(lista)
  File "A:\pra4.py", line 9, in ex
    frecuencia[letra]=frecuencia[letra,0]+1
TypeError: sequence index must be integer

-------Mensaje original-------

De: python-es en aditel.org
Fecha: viernes, 30 de agosto de 2002 09:28:41
A: python-es en aditel.org
Asunto: Re:[Python-es] RE: continuo con las listas de cadenas de caracteres

> o mejor aún, una de las propuestas por Chema ("achicada" en
> funcionalidad para seguir con el mismo ejemplo):
> 
> m=max(frecuencia.values())
> letra_max=[k for k,v in frecuencia.items() if v==m][0]
> # me quedo solo con una --------^^^

Pues para hacerlo así tenía otras "propuestas" que desistí de poner por ser
demasiado "bestias" y que lo hacían todo en una sóla línea usando la 
reducción":

letra_max=reduce(lambda a,b: (a,b)[frecuencia[a]<frecuencia[b]], frecuencia
keys())

una variante, algo más legible:

letra_max=reduce(lambda a,b: frecuencia[a]>=frecuencia[b] and a or b,
frecuencia.keys())

Como he dicho, son demasiado "bestias". Como consejo para seguir manteniendo
la salud mental, recomiendo utilizar cualquiera de las otras propuestas :-)

Saludos,
-- 
Chema Cortes (chemacortes en wanadoo.es)
_____________________________________________________________________
Horas ilimitadas para leer y enviar correos con Tarifa Plana Wanadoo 
¡¡ desde las 3 de la tarde!!
Compruébalo en http://www.wanadoo.es/acceso-internet

_______________________________________________
Python-es mailing list
Python-es en aditel.org
http://listas.aditel.org/listinfo.py/python-es
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20020830/de5dae33/attachment.html>
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: no disponible
Type: image/gif
Size: 494 bytes
Desc: no disponible
URL: <http://mail.python.org/pipermail/python-es/attachments/20020830/de5dae33/attachment.gif>


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