使用if语句判断教师类的实例是否存在
使用if语句判断教师类的实例是否存在,如果存在,将该实例赋值给课程类的授课教师属性
这里没看懂,是我这样写的吗
class Teacher(object):
def __init__(self, teacher_id, teacher_name, phone_number):
self.teacher_id = teacher_id
self.teacher_name = teacher_name
self.phone_number = phone_number
def __str__(self):
return "teacher_id:{},name:{}".format(self.teacher_id, self.teacher_name)
class Course(object):
def __init__(self, course_id, course_name, teacher=None):
self.course_id = course_id
self.course_name = course_name
self.teacher = teacher
def binding(self,teacher_id,teacher_name,phone_number):
result = {}
if Teacher(teacher_id,teacher_name,phone_number).teacher_name:
self.teacher = teacher_name
result.update({
"课程名称": self.course_name, "教师名称": self.teacher
})
return result
else:
return4
收起
正在回答 回答被采纳积分+1
1回答
好帮手慕小猿
2024-01-02 12:59:43
同学,你好!作业要求binding方法中只传一个teacher 参数,teacher 是教师的实例,也就是teacher 类实例化出来的实例对象。

同学是把teacher 实例对象的三个属性传入了方法中,不需要的,直接传入teacher实例对象就可以的,参考代码如下:
class Course(object):
def __init__(self, course_id, course_name, teacher=None):
self.course_id = course_id
self.course_name = course_name
self.teacher = teacher
# def binding(self, teacher_id, teacher_name, phone_number):
# result = {}
# if Teacher(teacher_id, teacher_name, phone_number).teacher_name:
# self.teacher = teacher_name
# result.update({
# "课程名称": self.course_name, "教师名称": self.teacher
# })
# return result
# else:
# return
def binding(self, teacher):
result={}
if teacher:
self.teacher = teacher
result = {'课程名称': self.course_name, '教师名称': self.teacher.teacher_name}
return result
else:
return祝学习愉快~
Python全能工程师
- 参与学习 人
- 提交作业 16416 份
- 解答问题 4469 个
全新版本覆盖5大热门就业方向:Web全栈、爬虫、数据分析、软件测试、人工智能,零基础进击Python全能型工程师,从大厂挑人到我挑大厂,诱人薪资在前方!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星