我正在尝试从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/