Python十六进制字符串中,0x和\x的含义有什么区别?

33
我正在进行一些二进制操作,通常以十六进制显示。我看到过前缀为0x和\ x的两种情况。 在哪种情况下使用哪种呢?
2个回答

51

0x用于表示数值字面量。在字符串中,"\x"表示一个字符。

>>> 0x41
65
>>> "\x41"
'A'

>>> "\x01" # a non printable character
'\x01'

@mgilson,对于输出,它们用于非打印字符。但是它们可以表示文字字符串中的任何字符。 - John La Rooy
那么 "\x" 符号与十六进制数字没有任何关系吗? - TheMeaningfulEngineer
1
@Alan,\x后面的2个数字是十六进制。因此"\x41" == chr(65) - John La Rooy
所以,对于不可打印字符,"\x" 表示法会以两个十六进制数字的形式显示一字节的原始二进制数据? - TheMeaningfulEngineer
0x 表示十六进制(基数为 16)。 - Nicolas S.Xu

-3

0x后面跟数字,表示十六进制数

\x后面跟数字,表示十六进制ASCII字符

在这里查看: ASCII表


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接