我正在编写一个Python来向字符串中添加对话标记(在U+03XX范围内)。然而,每当我试图将该范围内的数字转换为字符时,chr()都会抱怨。(这是Python3,所以没有unichr。)
下面是我的代码的截断版本:
strl = list(input())
args = input().split(" ")
strl[int(args[0])]+=chr(int(args[1])+0x300) #this is the line that breaks它会崩溃,但有以下例外:
UnicodeEncodeError: 'charmap' codec can't encode character '\u0300' in position 16: character maps to <undefined>那么,如何将整数转换为组合对话框的字符串表示呢?
(例如,如果我将字符串"accent marks"放在strl中,"0 0"放在args中,则希望strl以["à","c","c","e","n","t"," ","m","a","r","k","s"]结尾
更新:在评论中,delnan向我解释说chr()工作正常,但是程序拒绝打印字符串。如何打印包含此代码块中的字符的字符串(已存储在变量中)?
发布于 2014-05-16 21:51:38
这里的问题不是chr();问题只是Windows无法显示所讨论的字符。感谢所有在评论中帮助我解决这个问题的人。
https://stackoverflow.com/questions/23318219
复制相似问题