日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

pandas讀取中文xlsx文件出現的問題_python

作者:啊!漂泊的魚 ? 更新時間: 2022-07-04 編程語言

panda讀取中文xlsx文件

1、數據為中文內容,xlsx文件保存。

2、直接讀取文件出錯(Python報錯:pandas.errors.ParserError: Error tokenizing data. C error: Expected 3……),將xlsx文件后綴保存為csv,仍出現格式問題(xlsx不能為多表,左下角可以切換多個窗口的那種),后**將xlsx文件另存為csv**解決此問題。

3、讀取csv文件出現編碼問題(UnicodeDecodeError: ‘utf-8’ codec can’t decode byte 0xb3 in position 0: invalid start byte),在讀取文件時改編碼content = pd.read_csv(‘news.csv’,encoding=‘gbk’)

解決pandas讀取xlsx時報錯

Must explicitly set engine if not passing in buffer or path for io.

今天在用低版本的pandas==0.24.2時,讀取xlsx文件報錯。

pd.read_excel(xlsx_file_IO_string)   # xlsx IO流

Must explicitly set engine if not passing in buffer or path for io.

查看了源代碼,如果未指定engine,那么默認使用xlrd來讀,而且我本地的xlrd==1.2.0,所以不存在xlrd版本問題。另外又嘗試指定了engine=openpyxl,仍然不能解決讀取xlsx文件錯誤的問題。確定是pandas版本過低導致的問題,有條件的可以升級pandas版本,沒條件的繼續往下看。

使用BytesIO對象,聲明流為bytes類型,成功解決問題。

from pandas.io.common import BytesIO
import pandas as pd
 
pd.read_excel(BytesIO(content)))  # 此處centent為你的xlsx文件內容

原文鏈接:https://blog.csdn.net/weixin_39965184/article/details/109235376

欄目分類
最近更新