String 如何在python3中不使用任何编码语法从字符串变量获取字节格式

String 如何在python3中不使用任何编码语法从字符串变量获取字节格式,string,python-3.x,byte,String,Python 3.x,Byte,s1='a\xff' 我想从s1中获取b'a\xff',但是s1是一个变量,不是纯已知字符串,如何在python3中获取b'a\xff'? 我试过这个: b'%s' % s1 但是得到类型错误,然后我尝试在这段代码中使用encode,但是结果是b'a\xc3\xbf'(因为python3使用默认编码“utf8”),而不是b'a\xff' In [149]: s1='a\xff' In [151]: s3=b"".join([b'%c' % ord(each) for each in s1])

s1='a\xff'

我想从s1中获取
b'a\xff'
,但是s1是一个变量,不是纯已知字符串,如何在python3中获取
b'a\xff'
? 我试过这个:

b'%s' % s1
但是得到类型错误,然后我尝试在这段代码中使用
encode
,但是结果是
b'a\xc3\xbf'
(因为python3使用默认编码“utf8”),而不是
b'a\xff'

In [149]: s1='a\xff'

In [151]: s3=b"".join([b'%c' % ord(each) for each in s1])

In [152]: s3==b'a\xff'
Out[152]: True

%s
用于
字符串
类型变量,
字符串
类型的范围为-128~128,但\xff为256(超出
字符串
范围),

而此代码可以回答问题,提供有关此代码回答问题的原因和/或方式的附加上下文,以提高其长期价值。