Лишняя кавычка в результате обработки запроса google sheets api

Дата передается с одной кавычкой в начале, хотя запрос идёт без кавычки. Все остальные поля передаются так как и должны были.

import gspread
sa = gspread.service_account('./credentials.json')
sh = sa.open('Reports')
main = sh.worksheet('main')


data = [["31.03.2022", 'Test', 0, 0, 0, 0, 0, 0, 0, 0, 'Test', 'Test']]


def add_row(result: list):
    all_colls = main.col_values(1)
    i = len(all_colls)+1

    cell_length = f"A{str(i)}:L{str(i+ len(result) -1)}"

    main.update(cell_length, result)

add_row(data)

введите сюда описание изображения


Ответы (2 шт):

Автор решения: A_Vaclav

Проблема не в коде, а в Googlesheets(Excel)... В определенных случаях при передаче данных из других программ добавляется (невидимый) одиночный апостроф перед строкой, который указывает, что данная информация - текстовая. В конкретном случае распознана дата, но как текст...

Но! Это совсем не значит, что с вашим кодом все в порядке.

→ Ссылка
Автор решения: Incover
import gspread
sa = gspread.service_account('./credentials.json')
sh = sa.open('Reports')
main = sh.worksheet('main')


data = [["31.03.2022", 'Test', 0, 0, 0, 0, 0, 0, 0, 0, 'Test', 'Test']]


def add_row(result: list):
    all_colls = main.col_values(1)
    i = len(all_colls)+1

    cell_length = f"A{str(i)}:L{str(i+ len(result) -1)}"

    main.update(cell_length, result, value_input_option='USER_ENTERED')

add_row(data)

В gspread есть свойство value_input_option='USER_ENTERED' которая решает данную проблему.

→ Ссылка