python报错 TypeError: a bytes-like object is required, not ‘str‘

时间:2024-03-22 07:18:21

解决问题

原因:在python中有些函数和方法只能处理字节型数据,我们传入字符型当然会报错,只需要把类型转换一下即可。

示例:
我想用b2a_hex()方法将字符串flag{081bc661-d62e-48da-b898-b43c73a42182}转换为16进制,此时报错:
python报错 TypeError: a bytes-like object is required, not ‘str‘
解决这个问题只需要在字符串前加一个b,或者encode()一下把字符串类型转换为字节型就可以了。
python报错 TypeError: a bytes-like object is required, not ‘str‘
python报错 TypeError: a bytes-like object is required, not ‘str‘

字符串与字节型互相转换

我们可以用encode()函数和decode()函数来实现字符串与字节型之间的互相转换。

字符型转换为字节型

python报错 TypeError: a bytes-like object is required, not ‘str‘

字节型转换为字符型
python报错 TypeError: a bytes-like object is required, not ‘str‘