Ранее мы уже говорили о том, как выполнить какой-либо код перед открытием интерактивной консоли.
Расскажу еще один способ! На самом деле, даже запустив интерпретатор в обычном режиме с выполнением скрипта из файла вы можете в любом месте активировать интерактивный режим. Или даже несколько по очереди. За это отвечает модуль code.
Как это может пригодиться?
🔸 Вам не хватает pdb и хочется больше "власти"
🔸 Нужно запросить у юзера данные в достаточно сложном виде. В этом случае можно попросить его создать что ему надо и сохранить в определённую переменную, с которой потом и работать.
🔸 Нужна изолированная среда для выполнения каких-либо действий.
🔸 Просто забавы ради😁
Запускается консоль очень просто
import code
ic = code.InteractiveConsole()
try:
ic.interact()
except SystemExit:
pass
Выход обратно на предыдущий уровень происходит как обычно, вызов функции exit() или клавиши Ctrl+D(Ctrl+Z для Windows).
Я набросал простой пример с некоторым функционалом
🔹 Меняются символы приглашения
🔹 В неймспейсы добавляются дополнительные объекты
🔹 Считается время, проведённое в интерактивном режиме
🔹 Скрипт просит юзера заполнить переменную и по выходу распечатывает её значение
Код здесь ↗️
Для запуска сохраните код в файл и запускайте как обычный скрипт.
python my_console.py
Для быстрого запуска можно сделать отдельный алиас
alias py="python3 /home/username/my_console.py"
#tricks#source
Завтра утром выступаю на Baltic WinterвАрарат Парк Хаятт.
Фактически открываю спикерскую программу сразу после легендарного Андрея Баранникова.
Буду говорить про впечатления от творческого продукта через применение инноваций.
Это видео 2017 года тоже покажу:)
На связи,
ББВ
#balticwinter
Получил приглашение выступить спикером 11 декабря на мероприятии Baltic Weekend, которое является частью Baltic Weekend— крупнейшим в Европе международным форумом по коммуникациям, цель которого — развитие экспертизы участников коммуникационного рынка и формирование сильного отраслевого сообщества в России.
Организатором выступает легендарное агентство SPN Communications.
Давно хотел принять участие в этом событии, где интересные эксперты обсуждают актуальные вопросы международных коммуникаций и современных технологий.
Благодарю за приглашение Андрея Баранникова, руководителя проекта и моего давнего друга, который является один из лучших специалистов по PR в мире, сделавшего так много для страны и международного сотрудничества.
На связи,
ББВ
#balticweekend
#balticwinter