2016-02-29 18 views
4

我正在嘗試使用gspread在google電子表格的第一列中找到特定ID的單元格位置。gspread findall()只在1列內

有沒有辦法僅在第一列中搜索,而不是在整個電子表格中搜索?

我已經使用: gspread.Worksheet(實施例).findall(查詢)

但通過每個小區搜索是耗時的。

回答

0

可以使用Worksheet.range()功能來幫助你做到這一點:

query = "findme" 
worksheet = worksheet_object 
first_column = worksheet.range("A1:A{}".format(worksheet.row_count) 
found_cell_list = [found for found in first_column if found.value == query] 

我正在做的前提是你的第一列是列「A」,但如果不只是建立你自己的範圍內串用適當的列信或使用Worksheet.get_addr_int()

這給你一個你可以用來做你需要的單元列表。 儘管我不確定在非常大的紙張上的性能是否會好得多。