我已经简化了我的代码来说明我正在尝试做什么。我有一个列表的东西,在该列表中也是我的字典键。我正在尝试做一个for循环,它接受列表中的每个元素,在该元素上运行一个函数,然后我想用函数返回的函数扩展我的字典。我在这里做错了什么?
student_list = ['Whitney', 'Jason']
first_dict = {'Whitney':'Math', "Jason":"Biology"}
def schedule(student):
B = 'Science'
C = 'Social Studies'
D = 'Gym'
E = 'Lunch'
for student in student_list:
schedule(student)
first_dict[student].append([B, C, D, E])
我的错误是:'str' object has no attribute 'append'
虽然我确定我做错了其他事。
答案 0 :(得分:1)
您正在尝试将值附加到字符串,这是您无法做到的。将first_dict
中的值从字符串更改为列表(例如'Math'
到['Math']
),您的问题就会得到解决。
答案 1 :(得分:0)
尝试这样的事情。
student_list = ['Whitney', 'Jason']
first_dict = {'Whitney':['Math'], "Jason":["Biology"]}
def schedule(student):
B = 'Science'
C = 'Social Studies'
D = 'Gym'
E = 'Lunch'
first_dict[student].extend([B, C, D, E])
for student in student_list:
schedule(student)