У меня есть такой класс Person
:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def __repr__(self):
return '<Person {}>'.format(self.name)
Я хочу добавить несколько экземпляров этого класса в набор, например:
tom = Person('tom', 18)
mary = Person('mary', 22)
mary2 = Person('mary2', 22)
person_set = {tom, mary, mary2}
print(person_set)
# output: {<Person tom>, <Person mary>, <Person mary2>}
Как видите, в наборе 2 Марии. Как мне сделать так, чтобы Person
экземпляра одного возраста считались одним и тем же человеком и добавлялись в набор только один раз?
Другими словами, как я могу получить результат {<Person tom>, <Person mary>}
?
Frank, age 19
будет таким же, какHeather, age 19
, если вы просто сравниваете по возрасту? - person jamylak   schedule 11.05.2012__hash__
. - person jamylak   schedule 11.05.2012