【发布时间】:2021-05-13 21:41:56
【问题描述】:
我有一个数据框,我正在使用将该数据框更改为 csv
new_csv = df.to_csv()
现在我想将此 new_csv 转换为字节对象。当我尝试这个时:
new_bytes_obj = io.BytesIO(new_csv)
我收到一个错误:
TypeError: 需要一个类似字节的对象,而不是 'str
有什么办法吗?
【问题讨论】:
-
字节类对象是什么意思??
-
@U11-Forward 在执行此操作时出现此错误 new_bytes_obj = io.BytesIO(new_csv) TypeError: a bytes-like object is required, not 'str
-
@ankursuman:好问题是为什么你需要像对象这样的字节。你可以使用
new_str_obj = io.StringIO(new_csv)。如果需要字节,可以使用encode:new_bytes_obj = io.BytesIO(new_csv.encode())将字符串转换为字节。 -
@ankursuman 字符串使用 str.encode() 转换为字节。默认编码为 UTF-8。 Python 字符串是 Unicode,所以 UTF-8 是最好的选择
标签: python python-3.x csv