kzen.dev
  • Вопросы
  • Метки
  • Пользователи
Оповещения
Вознаграждения
Регистрация
После регистрации, сможете получать уведомления об ответах и комментариях на Ваши вопросы.
Вход
Если у Вас уже есть аккаунт, войдите чтобы проверить новые уведомления.
Тут будут вознаграждения за добавленные вопросы, ответы и комментарий.
Дополнительно
Источник
Редактировать
 Framester
Framester
Вопрос

Как работает волшебная %paste в IPython'е?

Я хочу скопировать в IPython уже отступленный код Python / целые функции и классы. Каждый раз, когда я пытаюсь это сделать, отступы искажаются, и я получаю следующее сообщение об ошибке:

IndentationError: unindent does not match any outer indentation level (<ipython-input-23-354f8c8be51b>, line 12).

Если вы хотите вставить код в IPython, попробуйте воспользоваться магическими функциями %paste и %cpaste.

91 2012-06-04T19:16:04+00:00 6
Программирование
python
ipython
Решение / Ответ
 Framester
Framester
4-го июня 2012 в 7:16
2012-06-04T19:16:04+00:00
Дополнительно
Источник
Редактировать
#16353379

Вы не можете копировать в IPython напрямую. Вот шаги:

  1. Скопируйте строки, которые вы хотите скопировать в IPython, в буфер обмена
  2. Введите %paste в IPython
  3. Нажмите Enter
  4. Прибыль!
135
0
 Yuly
Yuly
5-го августа 2014 в 1:06
2014-08-05T01:06:45+00:00
Дополнительно
Источник
Редактировать
#16353380

Разъяснение по поводу шагов:

  • Сначала скопируйте целевые строки в буфер обмена.

  • Введите в приглашение iPython:

    • Если на Tkinter: введите %paste.
    • Иначе: введите %cpaste
  • Вставьте (Ctrl-V) и нажмите Enter.

  • Затем введите -- и нажмите Enter.

Например:

In [1]: %cpaste
Pasting code; enter '--' alone on the line to stop or use Ctrl-D.
:for l in "Hello World":
:    print l,
:--
H e l l o   W o r l d
37
0
 Levon
Levon
17-го июля 2016 в 9:05
2016-07-17T09:05:45+00:00
Дополнительно
Источник
Редактировать
#16353383

По состоянию на оболочкой IPython 5 вы не'т нужна никакая магия, команда, просто вставьте его

ipython5

спасибо prompt_toolkit, оболочкой IPython теперь поддерживает:

  • подсветка синтаксиса при вводе
  • Реальные многострочного редактирования клавиши (со стрелками вверх и вниз перемещаться между строк)
  • Многострочная вставка без нарушения абзацного отступа или немедленное выполнение кода
  • Лучше автозавершение кода интерфейс (мы планируем улучшить, что больше) опционально поддержка мыши

Подробнее об этом здесь

Обновления оболочкой IPython` до последней версии

pip install ipython --upgrade 
 Levon
Levon
Редактировал ответ 22-го сентября 2018 в 4:29
21
0
 ChillarAnand
ChillarAnand
5-го сентября 2015 в 4:47
2015-09-05T16:47:19+00:00
Дополнительно
Источник
Редактировать
#16353381

Для работы %paste требуется Tkinter. Если вы используете ubuntu, вы можете установить его следующим образом

sudo apt-get install python-tk

Если вы на Python3

sudo apt-get install python3-tk

Затем перезапустите ipython и используйте %paste для вставки из буфера обмена.

 ChillarAnand
ChillarAnand
Редактировал ответ 15-го апреля 2018 в 2:17
6
0
 utapyngo
utapyngo
26-го января 2017 в 6:14
2017-01-26T06:14:22+00:00
Дополнительно
Источник
Редактировать
#16353385

Для пользователей Ubuntu, которые находятся на Python 3.

В питон-тк для Python 2.

Чтобы сделать работу %паста `на Python 3, установить питон3-ТК пакет:

sudo apt-get install python3-tk
1
0
 haridsv
haridsv
22-го февраля 2016 в 8:26
2016-02-22T08:26:30+00:00
Дополнительно
Источник
Редактировать
#16353382

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

Во-первых, чтобы подтвердить, что @Эол сказал, одним из способов решения ОП'ы проблемы-отключить автоматический отступ первой команды %автоотступа и вставкой (не требуется, если вы используете%пасты, конечно).

Теперь, чтобы добавить больше информации к тому, что уже есть здесь, еще один полезный режим в IPython-это %doctest_mode, который позволяет копировать вставить пример и испытание фрагментов из док строк. Это также полезно для выполнения интерактивном питон выходной сеанс, который вы можете найти в документации и в интернете на форумах, без того, чтобы сначала вырезать командные строки.

Eric  O Lebigot
Eric O Lebigot
Редактировал ответ 18-го июля 2016 в 5:25
0
0
Похожие сообщества 30
Python beginners
Python beginners
17 345 пользователей
Вопросы про Python для чайников. Cпам и троллинг неприемлем. Частозадаваемые вопросы: https://github.com/ru-python-beginners/faq/blob/master/README.md Правила группы: https://t.me/ru_python_beginners/1649981
Открыть telegram
Python
Python
14 260 пользователей
Уютный чат для профессионалов, занимающихся поиском питоньих мудростей. Как не получить бан: https://t.me/ru_python/1961404
Открыть telegram
🐍 Python Stepik Chat
🐍 Python Stepik Chat
11 616 пользователей
Этот уютный чат создан для помощи в решение задач на прекрасном курсе "Поколение Python: курс для начинающих" и не только. Правила: https://t.me/pythonstepikchat/619142 Чат для оффтопа - t.me/+fqNb78zlQY81NGUy Наш канал - @kimport_this
Открыть telegram
aiogram
aiogram
8 250 пользователей
Репозиторий: https://github.com/aiogram/aiogram Сайт: https://aiogram.dev Полезная информация: https://t.me/aiogram_ru/1421485?thread=1421477
Открыть telegram
Python — вакансии и аналитика
Python — вакансии и аналитика
6 468 пользователей
Публикуем вакансии и запросы на поиск работы по направлению Python, Flask и т.д. Здесь всё: full-time, part-time, remote и разовые подработки. См. также: @golang_jobs, @qa_jobs, @devops_jobs, @javascript_jobs, @nodejs_jobs, @uiux_jobs, @products_jobs
Открыть telegram
Сообщество Python Программистов
Сообщество Python Программистов
5 885 пользователей
Канал: @pip_install Наши сайты: https://python-scripts.com https://selenium-python.com https://itfy.org Мы в ВК: https://vk.com/open_sourcecode Вакансии: https://t.me/python_scripts_hr
Открыть telegram
Добавить вопрос
Категории
Все
Технологий
Культура / Отдых
Жизнь / Искусство
Наука
Профессии
Бизнес
Пользователи
Все
Новые
Популярные
1
Ilya Smirnov
Зарегистрирован 2 дня назад
2
Денис Васьков
Зарегистрирован 4 дня назад
3
Dima Patrushev
Зарегистрирован 6 дней назад
4
sirojidddin otaboyev
Зарегистрирован 2 недели назад
5
Елена Гайдамамакинат
Зарегистрирован 2 недели назад
ID
JA
KO
RU
© kzen.dev 2023
Источник
stackoverflow.com
под лицензией cc by-sa 3.0 с атрибуцией