簡體   English   中英

gspread 更新不在范圍內的多個單元格

[英]gspread update multiple cells not in range

在我的應用程序中,我有一堆不在范圍內的單元格。 目前我正在一一更新它們,但這需要很多時間。 我想通過一個電話來批量更新它們。

我查看了其他一些 SO 線程,例如this ,但在我的情況下,單元格不在范圍內。

為了簡化這里是我試圖實現的一個例子:

worksheet.update_acell("A1", "test1")
worksheet.update_acell("C5", "test2")

是否可以在一次調用中更新不在范圍內的單元格?

是的,這是可能的。 您可以為此使用Worksheet.update_cells方法。

該方法的參數是一個Cell對象列表,這個列表來自哪里並不重要。 您可以從range方法中獲取它或自己創建列表:

a1 = worksheet.acell('A1')
c5 = worksheet.acell('C5')
a1.value = 'Hello'
c5.value = 'World'
wk.update_cells([a1, c5])

這會在一次調用中更新多個單元格。

Burnhash 是正確的,因為沒有請求就無法獲得 Cell。 但是,我能夠使用虛擬類實現所需的行為:

    class Cell:
        def __init__(self, c, r, v):
            self.col = c
            self.row = r
            self.value = v

    cell1 = Cell(1, 1, 'value1')  # A1
    cell2 = Cell(2, 1, 'value2')  # B1
    wk.update_cells([cell1, cell2])

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM