Найдите текстовый редактор, который может отправлять регионы кода в сеанс Python, Ruby или Mongo. Emacs может сделать это; Я уверен, что vim и другие редакторы тоже могут это сделать.
Таким образом, вы можете редактировать и сохранять свою работу, но при этом использовать интерактивную оболочку.
Ниже приведен пример, где random_pick
определяется в текстовом файле, регион выбирается и отправляется на IPython нажатием Ctrl-c Ctrl-.
. Он отображается в IPython на строке, которая начинается с In [5]:
. Следующая строка показывает, что IPython теперь знает о random_pick
.
Для IPython (в отличие от оболочки Python по умолчанию) также существует %cpaste
, который позволяет вырезать и вставлять многострочные блоки кода в оболочку:
In [54]: %cpaste
Pasting code; enter '--' alone on the line to stop.
:def random_pick(choices,probs):
cutoffs=np.cumsum(probs)
idx=cutoffs.searchsorted(random.uniform(0,cutoffs[-1]))
return choices[idx]
--
:::::::::
В [55]: