gpt4 book ai didi

python - Pandas read_excel : 'utf-8' codec can't decode byte 0xa8 in position 14: invalid start byte

转载 作者:太空狗 更新时间:2023-10-30 00:58:46 26 4
gpt4 key购买 nike

正在尝试读取 2016 版 MS Excel 文件。文件包含多个数据列表。从数据库下载的文件,可以在 MS Office 中正确打开。在下面的示例中,我更改了文件名。

编辑: 文件包含俄语和英语单词。很可能使用了 Latin-1 编码,但 encoding='latin-1' 没有帮助

import pandas as pd
with open('1.xlsx', 'r', encoding='utf8') as f:
data = pd.read_excel(f)

结果:

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xa8 in position 14: invalid start byte

没有encoding ='utf8'

'charmap' codec can't decode byte 0x9d in position 622: character maps to <undefined>

附言任务是处理52个文件,将每个sheet中的数据与52个文件中对应的sheet合并。所以,请不要处理工作建议。

最佳答案

您很可能正在使用 Python3。在 Python2 中,这不会发生。

xlsx 文件是二进制文件(实际上它们是一个 xml,但它是压缩的),因此您需要以二进制模式打开它们。使用此调用打开:

open('1.xlsx', 'rb')

没有完整的回溯,但我想 UnicodeDecodeError 来自文件对象,而不是来自 read_excel()。发生这种情况是因为字节流可以包含任何内容,但我们不希望解码发生得太快; read_excel() 必须接收原始字节并能够处理它们。

关于python - Pandas read_excel : 'utf-8' codec can't decode byte 0xa8 in position 14: invalid start byte,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48647122/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com