Ранее мы уже говорили о том, как выполнить какой-либо код перед открытием интерактивной консоли.
Расскажу еще один способ! На самом деле, даже запустив интерпретатор в обычном режиме с выполнением скрипта из файла вы можете в любом месте активировать интерактивный режим. Или даже несколько по очереди. За это отвечает модуль 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
🔺Xullas, 2024-yil kirib keldi, siz o'z vadalaringgiz va maqsadlaringgizni esdan chiqarmadinggizmi?
🔺Agar esdan chiqarmagan bo'lsanggiz izohlarga oldinggizga qanday maqsadlar qo'yganggizni yozib qo'ying, ha aytgancha ularni bajarish uchun birinchi qadamni qo'ydingizmi...
🗣️#maqsad
2025-yilga maqsadlar > Tub burilish
Maqsad kishini olgʻa intilishiga sabab boʻlishi mumkin, agar unda shijoat va maqsad sari harakat qilsa... 2024-yil boshida oʻylagan, baʼzilarini yozgan maqsadlarimga deyarli yetdim. Menimcha erisha olmagan maqsadlarim yoʻq ekanki, uni eslay olmadim...
Chet tillari oʻrganish boʻyicha ham 6-7 oycha oʻqib, toʻxtatib qoʻydim, ishlar bilan boʻlib, kelgusi yilda chet tillariga koʻproq eʼtibor qaratishim ham mumkin.
Hozircha aniq maqsad qoʻyib olishga shoshilmayapman. Balki, toʻliq biznesga oʻtib ketishim, dizaynni tark etishim ham mumkin. Doimo hayotimda tub burilishlar qilib kelganman va bundan afsuslanmayman)
Tub burilishlar sababli topganlarim ham koʻp boʻldi. Yaʼniki yuqori masʼuliyatli loyihalarni ishonib topshirishdi. Masʼuliyatni boʻynimga oldim! Ancha qiynab ham qoʻydim oʻzimni, stressga tushdim, orada sogʻliqda muammolar boʻlib, shifoxonaga ham tushib chiqdim...
Xullas, ishonib topshirilgan vazifaga qay holatda boʻlsa ham, ishlab berdim. Toʻgʻrisini aytganda, masʼuliyati ancha ogʻir ekan, sababi dizayndan tashqari katta masʼuliyatlarni ham boʻynimga olgan edim... Qisqasi, 2024-yil karyeram uchun ajoyib yil boʻldi desam ham boʻladi.
2025-yilda hayotimda yana ham katta oʻzgarishlar qilishga harakat qilaman, nasib boʻlsa)
@suxrobblog — #maqsad#tub_burilish
#yuksalish#maqsad#natija
⚡Bugun shogirdim Boymurod Yunusov bilan yangi dizayn o'rgandik, o'ziga yarasha mehnati bor, lekin tushungan odam zavqlanib ishlaydi.
@ik_design👈👉@isakovxusniddin
💰 Orzu kutiladi.
Maqsad esa har kuni tanlanadi.
Agar bugun charchagan bo‘lsang ham,
agar hozir natija ko‘rinmayotgan bo‘lsa ham —
to‘xtama.🌟
🌟 Chunki maqsadga yetadiganlar
eng tez yurganlar emas,
eng bardoshli bo‘lganlardir.
Bugun o‘zingdan voz kechma.
Ertangi sen buning uchun rahmat aytadi. 🌟
#Maqsad#Intizom#Doimiylik#Osish#AyollarUchun
🌟@Milliarderlarim