You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Pandas导入含中文字符的CSV文件时出现解码错误,求解决方法

解决Pandas导入含中文字符CSV的GBK解码错误

遇到这种GBK解码失败的问题,试试下面几种实用方法:

  • 换用更广兼容的中文编码
    GB18030是GBK的超集,支持更多生僻字符,把代码里的编码改成gb18030大概率能解决:

    import pandas as pd
    df = pd.read_csv(r'path/filename.csv', encoding='gb18030')
    print(df)
    

    也可以试试utf-8(如果文件是UTF-8编码但带BOM,用utf-8-sig):

    df = pd.read_csv(r'path/filename.csv', encoding='utf-8-sig')
    
  • 跳过错误字符(仅限非关键字符场景)
    如果不想纠结编码,只是想先把文件读进来,可以给read_csv加errors参数忽略或替换错误字节:

    # 直接忽略错误字符
    df = pd.read_csv(r'path/filename.csv', encoding='gbk', errors='ignore')
    # 用?替换无法解码的字符
    df = pd.read_csv(r'path/filename.csv', encoding='gbk', errors='replace')
    

    注意:这种方法会丢失或替换出错的字符,适合对数据完整性要求不高的场景。

  • 检测文件实际编码
    可以用chardet库自动检测文件编码,步骤如下:

    1. 先安装chardet:
      pip install chardet
      
    2. 检测编码:
      import chardet
      with open(r'path/filename.csv', 'rb') as f:
          result = chardet.detect(f.read())
      print(result['encoding'])
      

    拿到检测出的编码后,替换到read_csv的encoding参数里即可。

内容的提问来源于stack exchange,提问作者New

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 00:39:24