我需要将带有字节(字符串视图)的字符串转换为Python中的字节对象。
string = input() # string = '\xff\x00B'
bs = samefunc(string) # typeof(bs) == bytes, len(bs) == 3
print(bs[0]) # b'\xff'
print(bs[1]) # b'\x00'
print(bs[2]) # b'B'
在我的应用程序中,字符串输入太大,自解析器将非常慢。
答案 0 :(得分:1)
您可以使用eval
(或ast.literal_eval
,如果输入不是100%,则更安全:
s = input() # s = '\\xff\\x00B'
bs = eval("b'%s'" % s) # typeof(bs) == bytes, len(bs) == 3
print(bs[0]) # 255
print(bs[1]) # 0
print(bs[2]) # 66