Comments
16
отлично, спасибо
плюс в карму вам за труд.
ps: переносите в python
ps: переносите в python
Спасибо, перенес :)
Тут есть важная особенность — ipython некорректно работает с юникодом. Я из-за этого полдня убил на поиски ошибки в своем коде при использовании boost.python, а оказалось что под чистым питоном все работает корректно.
Это да, но баг репорт уже есть на эту тему https://bugs.launchpad.net/ipython/+bug/339642
так что вполне вероятно, что пофиксят в ближайших релизах
так что вполне вероятно, что пофиксят в ближайших релизах
Надеюсь. Но про проблемы с юникодом я читал в архиве 2х летней давность в их рассылке.
В любом случае, тема интересная :)
В любом случае, тема интересная :)
Это все он — Murkt. Если сильно надо, можете сами исправить :)
Спасибо за информацию!
Пользуюсь ipython уже давно, но магическими командами особо не пользовался, только %time.
Теперь возьму на вооружение whos, логирование и интроспекцию (постоянно приходилось лезть в соседнее окно, чтобы посмотреть параметры для функции).
Пользуюсь ipython уже давно, но магическими командами особо не пользовался, только %time.
Теперь возьму на вооружение whos, логирование и интроспекцию (постоянно приходилось лезть в соседнее окно, чтобы посмотреть параметры для функции).
ipython также замечательно использовать в связке с django
За один автокомплит и удобную навигацию по докстрингам уже можно ему ставить памятник.
Остальные функции хороши когда проект слишком большой или изучается чужая программа.
Остальные функции хороши когда проект слишком большой или изучается чужая программа.
Автокомплит и в стандартном шелле включается несложно, на хабре был топик на эту тему.
Вопрос: а как заставить ipython переимпортить все импортированные к настоящему моменту модули, перечитывая их (изменившийся) код? Когда-то искал немного, но не нашел, как это сделать. Если редактируешь модуль, чтобы его протестить в терминале приходится перезапускать ipython и заново импортить модуль перед вызовом нужного метода…
reload
оно?
оно?
да, reload отчасти помогает
но у него есть некоторые не очень приятные caveats, описанные в док-ии, потом хочется уметь релоадить сразу все и также уметь релоадить только конкретный класс. может, я слишком много хочу от питона? :)
но у него есть некоторые не очень приятные caveats, описанные в док-ии, потом хочется уметь релоадить сразу все и также уметь релоадить только конкретный класс. может, я слишком много хочу от питона? :)
За %edit спасибо.
Дефолтный вид ipython показался довольно многословным, но это легко настраивается
$ vim ~/.ipython/ipythonrc
# странно прашивать «желаете ли выйти?» если уже ввел «exit()»
confirm_exit 0
# стадартный вид строки
prompt_in1 '>>> '
prompt_in2 '… '
prompt_out ''
separate_in 0
separate_out 0
separate_out2 0
А еще убрал шапку с версией и справкой.
Дефолтный вид ipython показался довольно многословным, но это легко настраивается
$ vim ~/.ipython/ipythonrc
# странно прашивать «желаете ли выйти?» если уже ввел «exit()»
confirm_exit 0
# стадартный вид строки
prompt_in1 '>>> '
prompt_in2 '… '
prompt_out ''
separate_in 0
separate_out 0
separate_out2 0
А еще убрал шапку с версией и справкой.
Большое спасибо за статью из 2016 года :)
Only those users with full accounts are able to leave comments. Log in, please.
IPython: замена стандартного Python shell