簡體   English   中英

如何在Python中迭代Unicode字符串?

[英]How to iterate a Unicode string in Python?

我有一個字符串,我想向其中添加唯一的非ASCII字符。 我需要循環執行此操作,因為可能需要添加多個。 問題是我不知道如何在循環中構造適當的Unicode字符串。

例如,我想在字符串中添加\✓\✔\✕等。 我不確定該怎么做。

s = 'ABCD'

for j in range(10):        
    s = s + u'\u2713'
    #s = s + (u'\u2713' + j) # This doesn't work

print s

您可以使用unichr (在Python 3.x中為chr )將int轉換為unicode字符串:

s = 'ABCD'

for i in range(10):
    s += unichr(0x2713 + i)

print s

打印ABCD✓✔✕✖✗✘✙✚✛✜


您可以使用str.join (或unicode.join )代替附加字符:

s = 'ABCD' + u''.join(unichr(0x2713 + i) for i in range(10))

要么

s = 'ABCD' + u''.join(unichr(ch) for ch in range(0x2713, 0x271d))

要么

s = 'ABCD' + u''.join(map(unichr, range(0x2713, 0x271d)))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM