1
wampyl 2017-11-21 14:01:09 +08:00
关注,我上次服务器转码死活不行,最后直接用 iconv 命令了。
|
2
wang9571 2017-11-21 14:43:19 +08:00 1
没有报错信息,我不知道你遇到的情况跟我的是不是一样。我说一下我碰到的情况。
Pandas 的 read_excel 是基于 xlrd 的,但是这个方法会接收多余的参数,直接 coding=utf8 是传不到 xlrd 那里的。 你可以先用 book = xlrd.open_workbook(文件, encoding_override='gb18030'), 再使用 pandas.read_excel(book, engine='xlrd') |
3
wx8600 2017-11-22 01:24:33 +08:00
你们能不能不要用 Py2 了…这都 2017 年了…
|
4
billgreen1 2017-11-22 10:32:04 +08:00
@wx8600 赞同
|
5
data2world 2017-11-22 16:12:16 +08:00
哥们儿,1,你的平台是什么? linux 还是 win。2。你这是 csv 不是 excel。3。一般来讲 sys.setdefaultencoding("utf-8") 几乎不能解决乱码问题。4. 你可以测试新建一个包含中文的 csv 文件,看是否乱码。5.以前我遇到过读文件只有一个字是乱码的。。。但是在 office 显示是正常的。。。
|
6
ulster02 2017-11-24 08:57:46 +08:00
encoding= 'gb18030'
|
8
krisbai OP import numpy as np
import pandas as pd import xlrd import openpyxl book = xlrd.open_workbook('op.xlsx', encoding_override='gb18030') df = pd.DataFrame(pd.read_excel(book, engine='xlrd')) df_inner = df.loc[df['标题'].isin(['提取内容'])] df_inner.to_excel('/opt/op_test.xlsx') |