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

如何解决pandas读取Excel时字符串内双引号显示为x94的问题

问题原因

\x94是Windows-1252(CP1252)编码下的智能右双引号对应的十六进制编码,左智能双引号对应\x93。Windows环境下生成的Excel默认会将普通双引号替换为智能引号,pandas读取时如果编码匹配失败就会将这类字符显示为十六进制转义格式,你遇到的[DSEGCODE]="g"变成[DSEGCODE]=\x94g\x94就是这个原因导致的。

修复方案
  • 方案1:读取时指定适配编码
    若读取的是.xls格式文件,可在调用读取方法时直接指定编码为cp1252:

    import pandas as pd
    df = pd.read_excel("你的文件路径.xls", encoding="cp1252", engine="xlrd")
    
  • 方案2:读取后统一替换异常字符(通用方案,兼容.xlsx/.xls格式)
    直接将数据中的智能引号替换为普通双引号即可,若只需处理单列:

    # 替换单列的左右智能引号为普通双引号
    df["目标列名"] = df["目标列名"].str.replace("\x93", '"').str.replace("\x94", '"')
    

    若需要批量处理所有字符串类型的列:

    for col in df.select_dtypes(include="object").columns:
        df[col] = df[col].str.replace("\x93", '"').str.replace("\x94", '"')
    

补充:如果还遇到其他同类智能标点异常,比如\x92(智能右单引号),可按照相同逻辑替换为对应的普通标点即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 20:54:01