Скажем, у меня есть класс в Python, в котором определен метод eq для сравнения атрибутов на равенство:
class Foo(object):
# init code...
def __eq__(self, other):
# usual eq code here....
Как я могу затем сравнить два экземпляра Foo для эталонного равенства (то есть проверить, являются ли они одним и тем же экземпляром)? Если я сделаю:
f1 = Foo()
f2 = Foo()
print f1 == f2
Я получаю True, хотя это разные объекты.
is
правильно, но вы также можете использоватьid(f1) == id(f2)
. - person agf   schedule 01.09.2011