I noticed some very PHP-ish behavior today: >>> import decimal >>> x = 0 >>> y = float(x) >>> z = decimal.Decimal(x) >>> x == y == z == x True >>> x ** x 1 >>> y**y 1.0 >>> z**z Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/lib/python2.7/decimal.py", line 2216, in __pow__ return context._raise_error(InvalidOperation, '0 ** 0') File "/usr/lib/python2.7/decimal.py", line 3872, in _raise_error raise error(explanation) decimal.InvalidOperation: 0 ** 0
I'd file a bug report but I'm anticipating some rational (heh) explanation. Any ideas? Python 3.4 also raises this exception, but the error message is less informative. ("decimal.InvalidOperation: [<class 'decimal.InvalidOperation'>]"). -- Devin -- https://mail.python.org/mailman/listinfo/python-list