python 最后一个函数出问题了



from openpyxl import load_workbook,Workbook
management=[]
def print_1():
    print('=='*50)
    print('学生信息管理系统')
    print('1.添加学生信息')
    print('2.删除学生信息')
    print('3.修改学生信息')
    print('4.显示所有学生信息')
    print('5.退出系统')
    print('6.保存所输入的信息')
    print('=='*50)
def main():
    while True:
        print_1()
        choice_1=int(input("你所选择的功能:"))
        if choice_1==1:
            add()
        elif choice_1==2:
            delete()
        elif choice_1==3:
            change()
        elif choice_1==4:
            display()
        elif choice_1==5:
            answer=input("是否退出?")
            if answer=="是":
                print('谢谢使用')
                break
            else:
                print_1()
        elif choice_1==6:
            savething()
def add():
    newname=input('输入新学生的名字:')
    newsex=input('输入新学生的性别:')
    newgrade=input('输入新学生的成绩:')
    dict_1={}
    dict_1['name']=newname
    dict_1['sex']=newsex
    dict_1['grade']=newgrade
    management.append(dict_1)
def delete():
    del_1=int(input("你想删除的学生序号:"))-1
    del management[del_1]
def change():
    num=int(input('你想修改的学生的学号:'))-1
    newname=input('输入修改后学生的名字:')
    newsex=input('输入修改后学生的性别:')
    newgrade=input('输入修改后学生的成绩:')
    management[num]['name']=newname
    management[num]['sex']=newsex
    management[num]['grade']=newgrade
def display():
    i=1
    for people in management:
        print("第{}位同学,姓名为{},性别为{},成绩为{}".format(i,people['name'],people['sex'],people['grade']))
        i+=1

def savething():
    wb_1=Workbook()
    ws_1=wb_1.active
    for people in management:
        ws_1.append(people)
    wb_1.save('C:\\Users\\WH\\Desktop\\信息管理系统.xlsx')
main()

img

append 的参数是元组或列表
一般是先写标题栏,再写数据。 把要写的数据改成元组或列表,你现在是字典。