On 12/21/11 3:15 PM, Nathan Rice wrote:
Incidentally, displaying an ElementwiseProxy instance doesn't go down
well with iPython:
In [1]: from elementwise import *
In [2]: e = ElementwiseProxy(['one','two','three'])
In [3]: e
Out[3]: ERROR: An unexpected error occurred while tokenizing input
The following traceback may be corrupted or invalid
The error message is: ('EOF in multi-line statement', (6, 0))
I love IPython, but it has had known problems with iterators for
years. A long time ago, I agonized over what I thought was a bug in
my code where itertools.count would skip numbers in IPython, but my
unit tests all passed. Everything should work fine if you tuple() it
first.
This is a different problem, actually. The problem is that the recently added
(by me, actually) pretty-printing system tries to dispatch based on the type. In
order to handle old-style classes, it checks for the type using .__class__
first. ElementProxy's __getattribute__() gets in the way here by returning a
generator instead of the ElementProxy class.
--
Robert Kern
"I have come to believe that the whole world is an enigma, a harmless enigma
that is made terrible by our own mad attempt to interpret it as though it had
an underlying truth."
-- Umberto Eco
--
http://mail.python.org/mailman/listinfo/python-list