2013/6/5 Alejandro Druetta <aledrue...@gmail.com>:
> Hola,
>
> Tengo un problema de iniciante que no logro resolver en el siguiente código:
>
> http://pastebin.com/uy4WEujK
>
> Las palabras con acentos, después de pasar por .title() presentan letras
> mayúsculas enseguida después de un acento. He probado colocando
> unicode(cadena, "utf-8") en varios lugares del código, pero no ha dado
> resultado.
>
> Si uso .capitalize() no hay problema, pero quisiera resolver el problema con
> .title() para aprender a usarlo correctamente.
>
> Cualquier ayuda, se agradece.
>

Prueba usando str.decode('utf-8') en tu cadena:

In [1]: print "ábcd éfghi".title()
áBcd éFghi

In [2]: print "ábcd éfghi".decode('utf-8').title()
Ábcd Éfghi

Yo prefiero convertir a unicode tan pronto como sea posible para no
tener que lidiar con encodings por todo lado:

    frase = raw_input( "Escriba una frase completa ('*' para
terminar): " ).decode('utf-8')


Saludos
--
A menudo unas pocas horas de "Prueba y error" podrán ahorrarte minutos
de leer manuales.
_______________________________________________
Python-es mailing list
Python-es@python.org
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a