【发布时间】:2021-11-26 14:37:03
【问题描述】:
我有一个任务。我必须用对象创建一个类。例如,学生类。在这个课程中,我必须创建某些学生,然后我必须将这些学生分配到一个集合中。
class Students:
def __init__(self, name, age):
self.name = name
self.age = age
def show_info(self):
return "'{}': {}".format(self.name, self.age)
def __str__(self):
return self.show_info()
Mark = Students(name="Mark", age=21)
Lisa = Students(name="Lisa", age=19)
所以我的问题是如何将这些对象(马克,丽莎)添加到集合()中。如果有人能给我一些提示,我将不胜感激。
【问题讨论】:
-
students = set([Mark, Lisa])。或者,梳理一下:students = set([Students(name="Mark", age=21), Students(name="Lisa", age=19)])。或者使用{}表示法来表示集合:students = {Mark, Lisa}。 -
set([Mark, Lisa])。set采用可迭代的,而不是任意的元素序列。 -
请注意,最好将您的班级命名为
Student:单数,而不是复数。虽然您可以在班级中创建多个学生,但每个单独的对象都是一个学生,因此是Student班级。 -
您也可以使用花括号文字来制作集合
-
使用
typing.NamedTuple快速解决您的问题 - 另请参阅下面我的回答。
标签: python python-3.x class object set