将对象分配给另一个对象python

时间:2013-12-16 21:40:07

标签: python python-2.7

我对这个程序有问题。我对对象和类非常新...所以基本上我有一个班级名单,最终会被分配到一门课程。我正试图找出如何将学生和教师完全放入课程中。我有点被困在这里,我得到了很多想法但是,就像我说我是新手,我无法实现添加和删除功能。任何帮助将不胜感激。先谢谢你。

class course:
   def __init__(self, courseName, capacity):
     self.courseName = courseName
     self.capacity = capacity


   def add_student(self,key):
     self.student[key] = value

   def remove_student(self,del_key):
     del self.student[del_key]

1 个答案:

答案 0 :(得分:1)

你离这儿很近,但你有两个问题。

首先,您的add_studentremove_student方法试图改变一些名为self.student的字典,但您忘了创建它。在__init__方法中执行此操作,如下所示:

def __init__(self, courseName, capacity):
    # existing stuff
    self.student = {}

接下来,如果您要使用add_studentvalue需要实际获取def add_student(self, key, value): self.student[key] = value 参数:

johnsmith = student('John', 'Smith', 14, 3.5)
intropython = course('Python 1', 20)
intropython.add_student('John Smith', johnsmith)

就是这样。现在您可以编写如下代码:

len(self.student) == self.capacity

当然,您可能希望稍后添加更多内容 - 例如,为学生获取默认密钥的方法(例如他的名字和姓氏),在添加之前检查是否{{1}}另一个学生,等等。但这应该让你开始。