我有一个字符串,我想为它添加唯一的非ASCII字符。我需要在循环中执行它,因为我可能需要添加多个。问题是我不知道如何在循环中构造一个合适的Unicode字符串。
例如,我想在我的字符串中添加\u2713
,\u2714
,\u2715
等。我不知道该怎么做。
s = 'ABCD'
for j in range(10):
s = s + u'\u2713'
#s = s + (u'\u2713' + j) # This doesn't work
print s
答案 0 :(得分:4)
您可以使用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))
OR
s = 'ABCD' + u''.join(unichr(ch) for ch in range(0x2713, 0x271d))
OR
s = 'ABCD' + u''.join(map(unichr, range(0x2713, 0x271d)))