我在这段代码中看到一个字符串:
data[:2] == '\xff\xfe'
我不知道'\ xff \ xfe'是什么,
所以我想逃避它,但没有成功
import cgi
print cgi.escape('\xff\xfe')#print \xff\xfe
我怎么能得到它。
感谢
答案 0 :(得分:11)
'\ xFF'表示十六进制值为FF的字节。 '\ xff \ xfe'是字节顺序标记:http://en.wikipedia.org/wiki/Byte_order_mark
您也可以将其表示为两个单独的字符,但这可能不会告诉您任何有用的信息。
答案 1 :(得分:2)
>>> print '\xff\xfe'.encode('string-escape')
\xff\xfe
答案 2 :(得分:2)
“我不知道'\ xff \ xfe'是什么'和”之间有什么联系?所以我想逃避它“? “逃避”它的目的是什么?
如果你给出比data[:2] == '\xff\xfe'
更多的上下文(比如之前和之后的几行),那将会有很大帮助...但是看起来它正在测试data
的前两个字节可能代表UTF-16 littleendian字节顺序标记。在这种情况下,您可以执行以下操作:
UTF16_LE_BOM = "\xff\xfe"
# much later
if data[:2] == UTF16_LE_BOM:
do_something()
答案 3 :(得分:-2)