我想把汉字转换成unicode格式,比如'\uxxx' 但当我使用str.encode('utf-16be')时,它将显示:
b'\xOO\xOO'
因此,我编写了一些代码来执行我的请求,如下所示:
data="index=索引?"
print(data.encode('UTF-16LE'))
def convert(s):
returnCode=[]
temp=''
for n in s.encode('utf-16be'):
if temp=='':
if str.replace(hex(n),'0x','')=='0':
temp='00'
continue
temp+=str.replace(hex(n),'0x','')
else:
returnCode.append(temp+str.replace(hex(n),'0x',''))
temp=''
return returnCode
print(convert(data))
有人能给我建议在Python3.x中进行这种转换吗?
我不确定我是否理解你。
Unicode就像一种类型。在python 3中,所有字符串都是unicode,所以当您编写
data = "index=索引?"
时,数据已经是unicode了。如果只想获得用于显示的替代表示,可以使用:请注意,字符串现在有真正的反斜杠和数字表示,而不是unicode字符。
但可能还有其他选择
尝试先解码,比如:
s.decode('utf-8').encode('utf-16be')
?相关问题 更多 >
编程相关推荐