[英]string - Python 3.5 write a bytes-like object is required, not 'str'
My following python code works for Python 2,我的以下 Python 代码适用于 Python 2,
if header_written == False:
header = out_data.keys()
writer.writerow(out_data.keys()) # write headers
header_written = True
writer.writerow(out_data.values()) #write rows
del out_data #del object
del row_data #del dict object
but in Python 3, it returns the following error:但在 Python 3 中,它返回以下错误:
TypeError: a bytes-like object is required, not 'str'类型错误:需要类似字节的对象,而不是“str”
You have to convert it to bytes.您必须将其转换为字节。 You can do it like this.你可以这样做。
bytes = string.encode(encoding='UTF-8')
More info here更多信息在这里
Best way to convert string to bytes in Python 3? 在 Python 3 中将字符串转换为字节的最佳方法?
It is about the initial part.这是关于初始部分。
Change改变
with open('r2.csv', 'r') as infile , open("output2.csv",'wb') as resultFile:
To到
with open('r2.csv', 'r') as infile , open("output2.csv",'w') as resultFile:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.