我想测试二进制数组b'volume\n1'
是否包含换行符"\n"
我怎么做?我测试了'\n' in word
和"\n" in word
,两者都给出了同样的错误。
TypeError: Type str doesn't support the buffer API
答案 0 :(得分:1)
基本上,bytearray
是一个可变的小整数数组,而string
的类型为string
,因此您无法询问它是否包含字符串文字。
尝试 ord('\n')
在单词中,ord
是一个函数,它将大小为1的string
转换为char
的ascii,这是一个整数。
出于同样的原因,您无法word[1] = 'a'
或word[1] = b'a'
,但您可以执行word[1] = ord('b')
或word[1] = b'a'[0]
答案 1 :(得分:1)
b'\n' in b'volume\n1'
(由falsetru提供)
答案 2 :(得分:0)
>>> a = b"volume\n1"
>>> "\n" in a
True
>>> "\b" in a
False
>>> b"\n" in a
True
>>>
但是,代码就在这里。