Уведомления

Группа в Telegram: @pythonsu

#1 Май 20, 2014 15:54:34

kotey
Зарегистрирован: 2014-05-20
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

Как работает __cmp__ ??

Не могу вьехать как работает __cmp__ метод. Накидайте пожалуйста примеров с комментариями.

Офлайн

#2 Май 20, 2014 18:46:16

GreyZmeem
От: Киев
Зарегистрирован: 2013-12-03
Сообщения: 147
Репутация: +  34  -
Профиль   Отправить e-mail  

Как работает __cmp__ ??

object.__cmp__

class TestClass1(object):
	def __init__(self, var):
		self.var = var
 
class TestClass2(TestClass1):
	def __cmp__(self, other):
		return self.var.__cmp__(other.var)
 
a1 = TestClass1(1)
b1 = TestClass1(1)
print a1 == b1
 
print '-' * 10
 
a2 = TestClass2(1)
b2 = TestClass2(1)
print a2 == b2
 
print '-' * 10
 
a2.var, b2.var = 1, 2
print a2.__cmp__(b2)
a2.var, b2.var = 1, 1
print a2.__cmp__(b2)
a2.var, b2.var = 2, 1
print a2.__cmp__(b2)
Вывод:
False
----------
True
----------
-1
0
1

Отредактировано GreyZmeem (Май 20, 2014 18:46:30)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version