Roh*_*ani 3 python csv python-3.x
示例文件对象数据包含以下内容,
b'QmFyY29kZSxRdHkKQTIzMjMsMTAKQTIzMjQsMTUKNjUxMDA1OTUzMjkyNSwxMgpBMjMyNCwxCkEyMzI0LDEKQTIzMjMsMTAK'
Run Code Online (Sandbox Code Playgroud)
python 文件包含以下代码
string_data = BytesIO(base64.decodestring(csv_rec))
read_file = csv.reader(string_data, quotechar='"', delimiter=',')
next(read_file)
Run Code Online (Sandbox Code Playgroud)
当我在 python 中运行上面的代码时,出现以下异常
_csv.Error:迭代器应该返回字符串,而不是整数(您是否以文本模式打开文件?)
如何以文本模式打开字节数据?
你快到了。事实上,csv.reader期望迭代器返回字符串(而不是字节)。BytesIO这样的迭代器由-的兄弟提供io.StringIO。
from io import StringIO
csv_rec = b'QmFyY29kZSxRdHkKQTIzMjMsMTAKQTIzMjQsMTUKNjUxMDA1OTUzMjkyNSwxMgpBMjMyNCwxCkEyMzI0LDEKQTIzMjMsMTAK'
bytes_data = base64.decodestring(csv_rec)
# decode() method is used to decode bytes to string
string_data = StringIO(bytes_data.decode())
read_file = csv.reader(string_data, quotechar='"', delimiter=',')
next(read_file)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
697 次 |
| 最近记录: |