如何将字符串转换为 Python 中的字节(已关闭)
How to convert string to bytes in Python (Closed)
我在 python
中使用 crc-16
和 libscrc
库
我想把字符串变成字节
例如:
a = '32'
b = '45'
c = '54'
d = '78'
e = '43'
f = '21'
----------------------------编码为------------ ------------------
预期结果:
b'\x32\x45\x54\x78\x43\x21'
如果您的输入值由 a,b,c,d,e,f
定义,那么您可以只给出:
print ("b'\x" + '\x'.join([a,b,c,d,e,f]) + "'")
这将导致:
b'\x32\x45\x54\x78\x43\x21'
当我尝试转换它时,结果是 b'2ETxC!'
我不确定你需要什么。
如果你需要b'2ETxC!'
,那么@Arty的回答就足够了。
print(bytes([int(x, 16) for x in [a, b, c, d, e, f]]))
但是,如果您想要 `b'\x32....\x21' 值,则必须使用上述连接语句。
下一段代码将您的输入字符串(a、b、c、d、e、f)转换为字节。尽管打印的字节看起来与您的预期输出在视觉上有所不同,但这些字节的值与您的预期相同,因为我的代码中的断言不会失败。
a = '32'; b = '45'; c = '54'; d = '78'; e = '43'; f = '21'
res = bytes([int(x, 16) for x in [a, b, c, d, e, f]])
assert res == b'\x32\x45\x54\x78\x43\x21'
print(res)
输出:
b'2ETxC!'
(按值等于预期 b'\x32\x45\x54\x78\x43\x21'
)
我在 python
中使用crc-16
和 libscrc
库
我想把字符串变成字节
例如:
a = '32'
b = '45'
c = '54'
d = '78'
e = '43'
f = '21'
----------------------------编码为------------ ------------------
预期结果:
b'\x32\x45\x54\x78\x43\x21'
如果您的输入值由 a,b,c,d,e,f
定义,那么您可以只给出:
print ("b'\x" + '\x'.join([a,b,c,d,e,f]) + "'")
这将导致:
b'\x32\x45\x54\x78\x43\x21'
当我尝试转换它时,结果是 b'2ETxC!'
我不确定你需要什么。
如果你需要b'2ETxC!'
,那么@Arty的回答就足够了。
print(bytes([int(x, 16) for x in [a, b, c, d, e, f]]))
但是,如果您想要 `b'\x32....\x21' 值,则必须使用上述连接语句。
下一段代码将您的输入字符串(a、b、c、d、e、f)转换为字节。尽管打印的字节看起来与您的预期输出在视觉上有所不同,但这些字节的值与您的预期相同,因为我的代码中的断言不会失败。
a = '32'; b = '45'; c = '54'; d = '78'; e = '43'; f = '21'
res = bytes([int(x, 16) for x in [a, b, c, d, e, f]])
assert res == b'\x32\x45\x54\x78\x43\x21'
print(res)
输出:
b'2ETxC!'
(按值等于预期 b'\x32\x45\x54\x78\x43\x21'
)