收集的一些常用中文亂碼轉(zhuǎn)換:
print("ord('我'):",ord('我'))
print("chr(25105):",chr(25105))
print('\n')
print("'我的簡書'.encode('unicode_escape'):",'我的簡書'.encode('unicode_escape'))
print("'\\u6211\\u7684\\u7b80\\u4e66'.encode().decode('unicode_escape'):",'\\u6211\\u7684\\u7b80\\u4e66'.encode().decode('unicode_escape'))
print("'\\u6211\\u7684\\u7b80\\u4e66'.encode('ascii').decode('unicode_escape'):",'\\u6211\\u7684\\u7b80\\u4e66'.encode('ascii').decode('unicode_escape'))
print('\n')
print("'我的簡書'.encode('gbk').decode('ISO-8859-1'):",'我的簡書'.encode('gbk').decode('ISO-8859-1'))
print("'?òμ??òêé'.encode('ISO-8859-1'):",'?òμ??òêé'.encode('ISO-8859-1'))
print(r"'\xce\xd2\xb5\xc4\xbc\xf2\xca\xe9'.encode('ISO-8859-1').decode('gbk'):",'\xce\xd2\xb5\xc4\xbc\xf2\xca\xe9'.encode('ISO-8859-1').decode('gbk'))
print("'?òμ??òêé'.encode('ISO-8859-1').decode('gbk'):",'?òμ??òêé'.encode('ISO-8859-1').decode('gbk'))
print('\n')
print("'我的簡書'.encode('utf-8').decode('utf-16'):",'我的簡書'.encode('utf-8').decode('utf-16'))
print("'裦\ue791蒚?\ue480?'.encode('utf-16').decode('utf8','ignore'):",'裦\ue791蒚?\ue480?'.encode('utf-16').decode('utf8','ignore'))
輸出結(jié)果:
ord('我'): 25105
chr(25105): 我
'我的簡書'.encode('unicode_escape'): b'\\u6211\\u7684\\u7b80\\u4e66'
'\u6211\u7684\u7b80\u4e66'.encode().decode('unicode_escape'): 我的簡書
'\u6211\u7684\u7b80\u4e66'.encode('ascii').decode('unicode_escape'): 我的簡書
'我的簡書'.encode('gbk').decode('ISO-8859-1'): ?òμ??òêé
'?òμ??òêé'.encode('ISO-8859-1'): b'\xce\xd2\xb5\xc4\xbc\xf2\xca\xe9'
'\xce\xd2\xb5\xc4\xbc\xf2\xca\xe9'.encode('ISO-8859-1').decode('gbk'): 我的簡書
'?òμ??òêé'.encode('ISO-8859-1').decode('gbk'): 我的簡書
'我的簡書'.encode('utf-8').decode('utf-16'): 裦蒚??
'裦蒚??'.encode('utf-16').decode('utf8','ignore'): 我的簡書
如果去掉ignore,
'裦\ue791蒚?\ue480?'.encode('utf-16').decode('utf8')
將拋出異常UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte
ord和chr互為相反,字符和ascii碼互換
斜杠加四位的亂碼可以.encode().decode('unicode_escape')恢復(fù)
斜杠加兩位的亂碼可以用.encode('ISO-8859-1').decode('gbk')恢復(fù)
類似拼音的亂碼可以用.encode('ISO-8859-1').decode('gbk')恢復(fù)
類似古文的亂碼可以用.encode('utf-16').decode('utf8','ignore')
每個人的智能新時代
如果您發(fā)現(xiàn)文章錯誤剔交,請不吝留言指正;
如果您覺得有用改衩,請點喜歡岖常;
如果您覺得很有用,歡迎轉(zhuǎn)載~
END