Python equivalent of Java's compareTo()
Posted
by
astay13
on Stack Overflow
See other posts from Stack Overflow
or by astay13
Published on 2012-06-26T21:00:59Z
Indexed on
2012/06/26
21:15 UTC
Read the original article
Hit count: 394
I'm doing a project in Python (3.2) for which I need to compare user defined objects. I'm used to OOP in Java, where one would define a compareTo()
method in the class that specifies the natural ordering of that class, as in the example below:
public class Foo {
int a, b;
public Foo(int aa, int bb) {
a = aa;
b = bb;
}
public int compareTo(Foo that) {
// return a negative number if this < that
// return 0 if this == that
// return a positive number if this > that
if (this.a == that.a) return this.b - that.b;
else return this.a - that.a;
}
}
I'm fairly new to classes/objects in Python, so I'd like to know what is the "pythonic" way to define the natural ordering of a class?
© Stack Overflow or respective owner