Python运用tk写一个信息显示窗口,感觉是内容溢出问题,总是报keyerror错误,删掉两个属性就不报错了,但是要求至少八个属性!

def display_students(self):
    str1 = ''
    if len(self.student_list) == 0:
        return "无成员"
    else:
        for dict1 in self.student_list:
            str1 += "姓名:%s 学号:%s 年龄:%s 性别:%s Python成绩:%s 英语成绩:%s 邮箱:%s 心情:%s \n" \
                    % ( dict1.__dict__["sName"],
                       dict1.__dict__["sNo"], dict1.__dict__["sAge"],
                       dict1.__dict__["sSex"], dict1.__dict__["sPython_scord"],
                       dict1.__dict__["sEnglish_scord"],dict1.__dict__["sEmail"],
                       dict1.__dict__["sMood"] )
                       
        return str1

img

你,dict1对象没有"sEmail"属性吧?
如果有"sEmail"属性检查下是不是名字写错了