我正在使用Python 2.7
如果我将变量设置为xx ='$£A',我会得到一个4字节的字符串。这是因为£字符的值> gt; 127。 在我的脚本中,第一行是:
编码= LATIN_1
然后再往下走了我试过了: xx = bytearray(B'$£A')。decode('latin_1') 如果我打印str(len(xx)),我得到值4。
所有我需要的是作为字节数组包含三个字节,ascii值为$,163 = ANSI Latin_1为£和ascii值为A.
我将不胜感激任何帮助。感谢
答案 0 :(得分:1)
在字符串常量中使用大于128的字符是非常危险的,除非:
# coding=xxx
作为第一行或第二行推荐的方法是逃避它们:
xx = b'$\xa3A'
(上面会给出Python 2中正确的latin1字符串或Python 3中正确的latin1编码字节,无论本地编码是什么)