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

使用gspread向Google Sheets追加数据时自动添加单引号问题求助

解决Google Sheets追加数据自动加单引号的问题

你遇到的单引号问题,是因为RAW模式会原样写入数据,而DataFrame转成list后,数值可能还是numpy的数值类型(比如numpy.int64),Google Sheets会把这类非原生Python数值识别成文本,自动加单引号标记。

给你两个可行的解决方法:

  • 方法一:转换为Python原生数值类型
    在转成list前,把DataFrame的数值列转成Python原生的int/float:

    import numpy as np
    
    try:
        # 把DataFrame里的numpy数值转成Python原生类型
        merge_values = merge.applymap(lambda x: x.item() if isinstance(x, (np.integer, np.floating)) else x).values.tolist()
        gs.values_append('Merged', {'valueInputOption': 'RAW'}, {'values': merge_values})
    except: 
        print('No new data')
    

    或者更简单的方式,直接把整个DataFrame转成object类型:

    try:
        merge_values = merge.astype(object).values.tolist()
        gs.values_append('Merged', {'valueInputOption': 'RAW'}, {'values': merge_values})
    except: 
        print('No new data')
    
  • 方法二:改用USER_ENTERED模式
    把valueInputOption改成USER_ENTERED,这个模式会模拟手动输入的解析逻辑,自动识别数值类型,不需要额外转换:

    try:
        merge_values = merge.values.tolist()
        gs.values_append('Merged', {'valueInputOption': 'USER_ENTERED'}, {'values': merge_values})
    except: 
        print('No new data')
    

推荐先试方法二,操作更简单,一般就能直接解决单引号问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 10:47:38