Интерпретатор, который игнорирует ведущие >>> символы и многоточие - PullRequest
0 голосов
/ 14 января 2010

Я изучаю несколько примеров из учебника, в котором много начальных символов >>> и многоточие в тексте. Это затрудняет вырезание и вставку в интерпретатор IPython, поскольку ему не нравятся эти строки.

Есть ли другой переводчик, которого я мог бы использовать, который будет соответствующим образом игнорировать и интерпретировать эти основные термины?

Например, я не могу вставить следующее прямо в интерпретатор:

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

>>> class Arr:
...     __array_interface__ = d
...     base = x

Ответы [ 2 ]

4 голосов
/ 14 января 2010

IPython может сделать это (посмотрите на команду% paste magic)

0 голосов
/ 19 января 2010

В любом случае, способ убрать такие вещи с помощью кода Python:

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

Пример использования:

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

>>> class Arr:
...     __array_interface__ = d
...     base = x"""))
...