为了账号安全,请及时绑定邮箱和手机立即绑定

python 返回 nameError 类名未定义

python 返回 nameError 类名未定义

PHP
智慧大石 2023-11-09 16:46:15
我正在尝试编写一个程序,该程序从另一个名为 Student.txt 的 python 文件中调用已建立的类。在文件 Student 中,建立了一个名为 StudentInfo 的类,并且init检查数据是否有效(例如,成绩必须在 9-12 之间,课程代码必须符合格式等)。我尝试首先在此处获取用户的输入。import studentimport transcriptdef add_student(data):    dataDict = data    ID = str(len(dataDict) + 1)    student = StudentInfo(ID, input("Enter the student\'s last name: "), input("Enter the student\'s first name: "), input("Enter the student\'s grade: "), transcript.add_transcript(), input("Is the student registered: "))    return dataDict当我尝试将学生定义为 StudentInfo 类的对象时,它返回 NameError: name 'StudentInfo' is not defined.我不确定我做错了什么。我认为这可能是输入,但当我删除它们时,它似乎做了同样的事情。请提前提供帮助并致谢。
查看完整描述

2 回答

?
达令说

TA贡献1821条经验 获得超6个赞

student.StudentInfo如果您使用的是import student.

或者,您可以导入为:

from student import StudentInfo

使用您现在拥有的代码。


查看完整回答
反对 回复 2023-11-09
?
蝴蝶不菲

TA贡献1810条经验 获得超4个赞

看来您忘记了StudentInfo前缀student。您可以替换:

import student

和:

from student import StudentInfo

或者您可以替换:

student = StudentInfo(ID, input("Enter the student\'s last name: "), input("Enter the student\'s first name: "), input("Enter the student\'s grade: "), transcript.add_transcript(), input("Is the student registered: "))

和:

student = student.StudentInfo(ID, input("Enter the student\'s last name: "), input("Enter the student\'s first name: "), input("Enter the student\'s grade: "), transcript.add_transcript(), input("Is the student registered: "))

旁注:您不应该在导入后命名变量。将变量重命名student为其他名称。


查看完整回答
反对 回复 2023-11-09
  • 2 回答
  • 0 关注
  • 67 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信