Ввод отсутствует, вывод в строке ввода в sublimerepl python

По сути, после запуска и запуска Sublime text 2 и sumblimeREPL у меня возникают проблемы при отправке кода. Например, на скриншоте ниже я ввожу код слева построчно (ctrl+,l) или блоком/выбором, но ничего не появляется, кроме вывода. In[3]-In[6] я пытался запустить только строки x и y. Это предполагаемое поведение? Я бы предположил, что да, за исключением того, что весь вывод отображается на входных строках. Единственный другой язык, который я пробовал до сих пор, - это R, и у него нет этих проблем. Также это одна и та же проблема как в python, так и в ipython. Любые идеи?

введите здесь описание изображения


person user1423020    schedule 04.12.2013    source источник


Ответы (2)


Во-первых, я настоятельно рекомендую перейти на IPython 1.1.0, поскольку, хотя проблема, скорее всего, не связана со старой версией, она оно стоит обновления, особенно если вы часто его используете.

Если вы откроете Preferences -> Package Settings -> SublimeREPL -> Settings - Default, вы заметите, что последняя строка — "show_transferred_text": false. Я работаю в OS X, но когда для этого параметра установлено значение false, я вижу то же поведение, что и вы — результат выражения, напечатанного в строке In [#], с другой пустой строкой, следующей за ней, готовой для следующего выражения. Однако, если я присвою этой переменной значение true (скопировав все содержимое файла, открыв Preferences -> Package Settings -> SublimeREPL -> Settings - User, вставив все туда, затем изменив настройки и сохранив), то при переносе строки я наблюдаю другое поведение: выражение печатается на In [#] строка, а результат печатается ниже.

Причина, по которой вы не увидели никаких результатов при оценке назначений x и y, заключается в том, что по умолчанию ничего не возвращается.

В качестве объяснения того, почему Python/IPython REPL работают таким образом, а R — нет, можно объяснить то, что SublimeREPL очень модульный и по большей части представляет собой просто тонкую оболочку, окружающую нативный код. Таким образом, точный механизм передачи и отображения данных может отличаться, например, от Python к Ruby, от R к Clojure, и вы можете наблюдать немного отличающееся поведение.

person MattDMo    schedule 04.12.2013
comment
Благодарю вас! Это именно то, что я искал. - person user1423020; 05.12.2013

Я хотел что-то более интерактивное. Я хотел, чтобы In[#] с текстом сопровождалось Out[#] с выводом. Я также не хотел переключаться со своего исходного кода на REPL только для того, чтобы получить проклятое Out[#].

Например, вот так... введите здесь описание изображенияРешение, которое я придумал, намного сложнее, чем сообщение выше, но вы получаете то интерактивное ощущение, которое возникает при использовании R с Sublime Text. Вы можете найти мое решение здесь: https://stackoverflow.com/a/27562036/3987905

Обязательно сохраните "show_transferred_text": false. Включение его, похоже, испортит плагин. Надеюсь, поможет.

person Danton Noriega    schedule 23.12.2014