我正在尝试从python中的sheetfu中读取数据,我尝试了gspread,但得到的是常量(身份验证不足)消息。

因此,我使用了sheetfu,并且看起来效果很好,我可以很好地检索所有值。

我无法弄清楚如何将特定列的值检索到数组中。

https://github.com/socialpoint-labs/sheetfu

我正在使用Python 3.7.0

我尝试打印为表格以查看是否可以以这种方式操作它,没有任何乐趣... :(

这就是我现在拥有的,它为我提供了所有值,但是我似乎无法弄清楚如何仅显示特定列的结果,

from sheetfu import SpreadsheetApp
from sheetfu import Table

def main():

  spreadsheet = SpreadsheetApp('/Users/myuser/Downloads/myJson.json').open_by_id('randomspreadsheetID')
  sheet = spreadsheet.get_sheet_by_name('data')
  data_range = sheet.get_data_range()

  values = data_range.get_values()
  print(values)


#   data_range2 = spreadsheet.get_sheet_by_name('data').get_data_range()

#   table = Table(data_range2, backgrounds=True)

#   for item in table:
#       who = item.get_field_value('Who?')

#   table.commit()
#   print(who)
#   print(table)


if __name__ == "__main__":
  main()


这是我得到的回报。

['Name', 'Date', 'Who', 'What', 'When', 'Why', 'Where', 'Confirmed', 'Ticked', 'Notes', 'Complete'], ['Dave ', 43627, 'Here', 'Collection','pm', 'no', 'boom', 'lhi', False, '', ''],

我想我可以操纵每行[]周围的文本,然后进行拆分,但是我正在想象该库将能够处理这个问题。

最佳答案

您可以简单地使用列表理解来做到这一点。从您的代码:

from sheetfu import SpreadsheetApp
from sheetfu import Table

def main():
    spreadsheet = SpreadsheetApp('/Users/myuser/Downloads/myJson.json').open_by_id('randomspreadsheetID')
    sheet = spreadsheet.get_sheet_by_name('data')
    data_range = sheet.get_data_range()

    table = Table(data_range)
    everyone = [item.get_field_value('Who?') for item in table]
    print(everyone)


if __name__ == "__main__":
  main()


这将有效地返回“谁”列的值列表。

关于python - 使用Sheetfu阅读专栏,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57609222/

10-10 18:20