How to wrap a Japanese text in Python

Leo Kislov Leo.Kislov at gmail.com
Fri Jun 8 11:33:45 CEST 2007


On Jun 8, 2:24 am, Leo Kislov <Leo.Kis... at gmail.com> wrote:
> On Jun 7, 5:12 am, prashantkisanpa... at gmail.com wrote:
>
> > Hi All,
>
> > I am trying to wrap a japanese text in Python, by the following code.
>
> > if len(message) > 54:
> >    message = message.decode("UTF8")
> >    strlist = textwrap.wrap(message,54)
>
> > After this I am wirting it to you a CAD Software window. While
> > displaying in this window some Japanese characters at the end of the
> > line & some at the begining of the line are not displayed at all.
> > Meaning the text wrapping is not happening correctly.
>
> > Can any body please help me out in resolving this problem.
>
> First of all you should move message.decode('utf-8') call out of "if"
> and you don't need "if" anyway because if the line is less than 54
> textwrap won't touch it:
>
> message = message.decode('utf-8')
> strlist = textwrap.wrap(message, 54)
>
> I don't know Japanese but the following example *seems* to work fine
> for me:
>
> # -*- coding: utf-8 -*-
> sample=u"""                      
>                          """
>
> import textwrap
> for line in textwrap.wrap(sample, 6):
>     print line
> --------------------------------
> Result:

Oh, my. IE7 and/or Google groups ate my Japanese text :(  But I hope
you've got the idea: try to work on a small example python program
in a unicode-friendly IDE like for example IDLE.

> Can you post a short example that clearly demonstrates the problem?

This question is still valid.

  -- Leo.




More information about the Python-list mailing list