views:

63

answers:

2

Hi,

I am studying some examples in a tutorial where there are a lot of leading >>> characters and ellipsis in the text. This makes it hard to cut and paste into the IPython interpreter since it doesn't like these strings.

Is there another interpreter I could use that will appropriately ignore and interpret these leading terms?

For example, I cannot paste the following directly into the interpreter:

>>> d = dict(x.__array_interface__)
>>> d['shape'] = (3, 2, 5)
>>> d['strides'] = (20, 20, 4)

>>> class Arr:
...     __array_interface__ = d
...     base = x
+4  A: 

IPython can do this (look at the %paste magic command)

Andrew Jaffe
thanks. Big help.
reckoner
The %cpaste command is also useful…
EOL
A: 

In any case, a way to clean up such stuff by python code:

import re
matcher= re.compile("(?m)^[.>]{3} ")
def cleanup(text):
    return matcher.sub('', text)

Example use:

>>> print (cleanup(""">>> d = dict(x.__array_interface__)
>>> d['shape'] = (3, 2, 5)
>>> d['strides'] = (20, 20, 4)

>>> class Arr:
...     __array_interface__ = d
...     base = x"""))
ΤΖΩΤΖΙΟΥ