[issue18712] Pure Python operator.index doesn't match the C version.
Armin Rigo
report at bugs.python.org
Sat Aug 17 18:08:21 CEST 2013
Armin Rigo added the comment:
This may have been the most recent discussion of this idea (as far as I can tell):
http://mail.python.org/pipermail//python-ideas/2012-August/016036.html
Basically, it seems to be still unresolved in the trunk Python; sorry, I thought by now it would have been resolved e.g. by the addition of a method on types or a function in the operator module. In the absence of either, you need either to simulate its behavior by doing this:
for t in type(a).__mro__:
if '__index__' in t.__dict__:
return t.__dict__['__index__'](a)
Or you can piggyback on an unrelated call that simply causes the C-level PyNumber_Index() to be called:
return range(a).stop
----------
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue18712>
_______________________________________
More information about the Python-bugs-list
mailing list