[Tutor] How to iterate through unicode string.

2009-09-04 Thread zhang allen
Hi All,

Say i have unicode string * Büro*.
i want to iterate this string .

i write this python code which doesn't work.

s ='Büro'
for ch in s:
print ch

it seems *Büro* has 5 chars. *ü *consists of 2 bytes.

so does someone has any ideas?

how to iterate this string, so i can hava 4 chars, like "B, ü, r, o ".?

Thanks in advance.


-- 
Best Regards,
Allen
___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] How to iterate through unicode string.

2009-09-04 Thread zhang allen
Hi Andre,
i tried this.

s = u'Büro'
print len(s)

prints 5.

it seems not working  : )

2009/9/4 Andre Engels 

> On Fri, Sep 4, 2009 at 2:20 PM, zhang allen wrote:
> > Hi All,
> >
> > Say i have unicode string  Büro.
> > i want to iterate this string .
> >
> > i write this python code which doesn't work.
> >
> > s ='Büro'
> > for ch in s:
> > print ch
> >
> > it seems Büro has 5 chars. ü consists of 2 bytes.
> >
> > so does someone has any ideas?
> >
> > how to iterate this string, so i can hava 4 chars, like "B, ü, r, o ".?
> >
> > Thanks in advance.
>
> Try replacing
> s ='Büro'
> by
> s = u'Büro'
>
> The 'u' denotes that the string is to be interpretred as unicode.
>
>
>
> --
> André Engels, andreeng...@gmail.com
>



-- 
Best Regards,
Allen
___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] How to iterate through unicode string.

2009-09-04 Thread zhang allen
Hi Christian,

Thanks for your tip.

But it seems to me still not working again.

i wirte this python code

k = []
s = u'Büro'
for c in s:
 k.append(c)
print k

k=[u'B', u'\xa8', u'\xb9', u'r', u'o']

i still have 5 different chars.





2009/9/4 Christian Witts 

> zhang allen wrote:
>
>> Hi All,
>>
>> Say i have unicode string * Büro*.
>> i want to iterate this string .
>>
>> i write this python code which doesn't work.
>>
>> s ='Büro'
>> for ch in s:
>> print ch
>>
>> it seems *Büro* has 5 chars. *ü *consists of 2 bytes.
>>
>> so does someone has any ideas?
>>
>> how to iterate this string, so i can hava 4 chars, like "B, ü, r, o ".?
>>
>> Thanks in advance.
>>
>>
>> --
>> Best Regards,
>> Allen
>> 
>>
>> ___
>> Tutor maillist  -  Tutor@python.org
>> To unsubscribe or change subscription options:
>> http://mail.python.org/mailman/listinfo/tutor
>>
>>
> >>> s = 'Büro'
> >>> for ch in s:
> ... print ch
> ...
> B
>
> �
> r
> o
>
> You need to make it a unicode string.
>
> s = u'Büro'
> >>> for ch in s:
> ... print ch
> ...
> B
> ü
> r
> o
>
> --
> Kind Regards,
> Christian Witts
>
>
>


-- 
Best Regards,
Allen
___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] How to iterate through unicode string.

2009-09-04 Thread zhang allen
Thank you very much. :)

it works now.

2009/9/4 Christian Witts 

> If it's not you can put an encoding line @ the top of your script like
> # -*- encoding: utf-8 -*-
>
> David Stanek wrote:
>
>> Is the encoding of your file set?
>>
>>
>> On 9/4/09, zhang allen  wrote:
>>
>>
>>> Hi Christian,
>>>
>>> Thanks for your tip.
>>>
>>> But it seems to me still not working again.
>>>
>>> i wirte this python code
>>>
>>> k = []
>>> s = u'Büro'
>>> for c in s:
>>> k.append(c)
>>> print k
>>>
>>> k=[u'B', u'\xa8', u'\xb9', u'r', u'o']
>>>
>>> i still have 5 different chars.
>>>
>>>
>>>
>>>
>>>
>>> 2009/9/4 Christian Witts 
>>>
>>>
>>>
>>>> zhang allen wrote:
>>>>
>>>>
>>>>
>>>>> Hi All,
>>>>>
>>>>> Say i have unicode string * Büro*.
>>>>> i want to iterate this string .
>>>>>
>>>>> i write this python code which doesn't work.
>>>>>
>>>>> s ='Büro'
>>>>> for ch in s:
>>>>> print ch
>>>>>
>>>>> it seems *Büro* has 5 chars. *ü *consists of 2 bytes.
>>>>>
>>>>> so does someone has any ideas?
>>>>>
>>>>> how to iterate this string, so i can hava 4 chars, like "B, ü, r, o ".?
>>>>>
>>>>> Thanks in advance.
>>>>>
>>>>>
>>>>> --
>>>>> Best Regards,
>>>>> Allen
>>>>>
>>>>> 
>>>>>
>>>>> ___
>>>>> Tutor maillist  -  Tutor@python.org
>>>>> To unsubscribe or change subscription options:
>>>>> http://mail.python.org/mailman/listinfo/tutor
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>> s = 'Büro'
>>>>>>> for ch in s:
>>>>>>>
>>>>>>>
>>>>>> ... print ch
>>>> ...
>>>> B
>>>>
>>>> �
>>>> r
>>>> o
>>>>
>>>> You need to make it a unicode string.
>>>>
>>>> s = u'Büro'
>>>>
>>>>
>>>>>  for ch in s:
>>>>>>>
>>>>>>>
>>>>>> ... print ch
>>>> ...
>>>> B
>>>> ü
>>>> r
>>>> o
>>>>
>>>> --
>>>> Kind Regards,
>>>> Christian Witts
>>>>
>>>>
>>>>
>>>>
>>>>
>>> --
>>> Best Regards,
>>> Allen
>>>
>>>
>>>
>>
>>
>>
>
> --
> Kind Regards,
> Christian Witts
>
>
>


-- 
Best Regards,
Allen
___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor