首页 > 解决方案 > Python & Google Sheets - 检查数据在哪一行

问题描述

所以我有这样的事情:

scope = ['https://spreadsheets.google.com/feeds', 'https://www.googleapis.com/auth/drive']
creds = ServiceAccountCredentials.from_json_keyfile_name(file_path, scope)
client = gspread.authorize(creds)
sheet = client.open('Test').sheet1

username = input('Username: ')

test = sheet.col_values(1)

if username in test:
    print(username.row) # This won't work

说明:我希望它“扫描”用户名的工作表,如果它存在,它应该告诉我它在哪一行。示例: print(username.row) = 5 (5 = 5. Row)

标签: pythongoogle-sheetsgoogle-sheets-api

解决方案


我知道您有一个用户名(已知字符串),并且您想知道它写在哪个单元格中(如果有的话)。在这种情况下,您需要读取每个单元格并迭代数据,直到找到匹配项。为此,您可以使用spreadsheets.values.get. 您可以在链接文档中查看示例。如果找到匹配项,则单元格将按范围数组的自然顺序排列(即,如果匹配项在 中array[4][2],则 A1 表示法将是第五行和第三列)。如果您有任何疑问,请随时问我。


推荐阅读