Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #106686 > unrolled thread
| Started by | Chris Angelico <rosuav@gmail.com> |
|---|---|
| First post | 2016-04-09 00:25 +1000 |
| Last post | 2016-04-09 00:25 +1000 |
| Articles | 1 — 1 participant |
Back to article view | Back to comp.lang.python
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
Re: how to convert code that uses cmp to python3 Chris Angelico <rosuav@gmail.com> - 2016-04-09 00:25 +1000
| From | Chris Angelico <rosuav@gmail.com> |
|---|---|
| Date | 2016-04-09 00:25 +1000 |
| Subject | Re: how to convert code that uses cmp to python3 |
| Message-ID | <mailman.89.1460125529.2253.python-list@python.org> |
On Sat, Apr 9, 2016 at 12:20 AM, Antoon Pardon <antoon.pardon@rece.vub.ac.be> wrote: >> You only need ONE comparison, and the other is presumed to be its >> opposite. When, in the Python 3 version, would you need to compare >> twice? > > About 50% of the time. When I traverse the tree I go left when the > argument key is smaller than the node key, I go right when it is > greater than the node key and I have found the node I want when > they are equal. How about this: You have found the node if they are equal. Otherwise, go left if your argument is smaller than the node. Otherwise, go right. You don't have to do three comparisons, only two - and one of them is an equality, rather than an inequality, which is often cheaper. But hey. If you really can't handle the double comparison, *write your own* special-purpose comparison function - nobody's stopping you! It's just not something that exists *in the language*. If your specific objects need this, write it! ChrisA
Back to top | Article view | comp.lang.python
csiph-web