2024-06-26 13:22:13 发布
网友
有人能辨认出这些bytes的符号是什么吗?乍一看,我倾向于认为“十六进制”,但我不知道xf1Y和{}是什么:
bytes
xf1Y
b'vy\xe9\xb5\xa2\xba\xf1Y\xe8\xe1fl\x1d\x87\xacC'
当我用some_text.encode('utf-8')编码时,我得到了这个。在
some_text.encode('utf-8')
我正在尝试获取可以传递给使用python2字节字符串的加密方法的字节。在
你说得对-这是一个十六进制符号。在
在字节文字中,任何不能用可打印的ASCII字符(或标准转义符\n、\t或{})表示为\xNN,其中NN是字节的2位十六进制表示。在
\n
\t
\xNN
让您困惑的是,您将\xf1Y误认为是单个转义序列,而实际上它代表两个独立的字节:
\xf1Y
>>> len(b'\xf1Y') 2 >>> [bytes([b]) for b in b'\xf1Y'] [b'\xf1', b'Y']
如果迭代一个bytes对象,将得到bytes的整数值:
escape sequences in Python string and bytes objects的文档中有更多关于Python理解的转义序列的信息(尽管上面的是它用来表示bytes对象的唯一的转义序列)。在
你说得对-这是一个十六进制符号。在
在字节文字中,任何不能用可打印的ASCII字符(或标准转义符})表示为
\n
、\t
或{\xNN
,其中NN是字节的2位十六进制表示。在让您困惑的是,您将
\xf1Y
误认为是单个转义序列,而实际上它代表两个独立的字节:如果迭代一个bytes对象,将得到bytes的整数值:
^{pr2}$escape sequences in Python string and bytes objects的文档中有更多关于Python理解的转义序列的信息(尽管上面的是它用来表示bytes对象的唯一的转义序列)。在
相关问题 更多 >
编程相关推荐