在 google colaboratory 中使用 for 循环阅读多个 google sheet 工作簿

Read in multiple google sheet workbooks with a for loop in google colaboratory

我有多个 google 工作簿,所有工作簿都以结构化的方式命名,例如:

Math_Student Assessment Sheet Grade 10 2021-2022

Math_Student Assessment Sheet Grade 9 2021-2022

我为所有工作簿名称和变量创建了一个 dic,我想将它们声明为:

grade_dict = {'Grade K': 'grade_k',
'Grade 1': 'grade_1',
'Grade 2': 'grade_2',
'Grade 3': 'grade_3',
'Grade 4': 'grade_4',
'Grade 5': 'grade_5',
'Grade 6': 'grade_6',
'Grade 7': 'grade_7',
'Grade 8': 'grade_8',
'Grade 9': 'grade_9',
'Grade 10': 'grade_10'}

我试着阅读它们:

for key, val in grade_dict:
  vars()['math_student_assessment_sheet_' + val + '_2021_2022'] = gc.open('Math_Student Assessment Sheet' + key + '2021-2022') 

但是我得到这个错误:

ValueError                                Traceback (most recent call last)
<ipython-input-20-ec7184dea63b> in <module>()
----> 6 for key, val in grade_dict:
      7   vars()['math_student_assessment_sheet' + val + '_2021_2022'] = gc.open('Math_Student Assessment Sheet' + key + '2021-2022')

ValueError: too many values to unpack (expected 2)

我很困惑:我的代码有什么问题?

您正在迭代 dictionary。最后需要 .items() 来从字典中解压键和值。喜欢

for key, val in grade_dict.items():