New submission from Blair <[email protected]>:
I believe that the use of __future__.division may have unintended consequences
with user types that define division.
The following fails:
from __future__ import division
class NumericType(object):
def __init__(self,x):
self.x = x
def __div__(self,rhs):
return self.x/rhs
print NumericType(3.0) / 2.0
with the error message
File "C:\proj_py\learning\future_bug\future.py", line 10, in <module>
print NumericType(3.0) / 2.0
TypeError: unsupported operand type(s) for /: 'NumericType' and 'float'
Remove the line `from __future__ import division` and everything works fine.
I am using Python 2.7.2
----------
components: None
messages: 145195
nosy: gumtree
priority: normal
severity: normal
status: open
title: from __future__ import division breaks ad hoc numeric types
type: behavior
versions: Python 2.7
_______________________________________
Python tracker <[email protected]>
<http://bugs.python.org/issue13137>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com