Ранее мы уже говорили о том, как выполнить какой-либо код перед открытием интерактивной консоли.
Расскажу еще один способ! На самом деле, даже запустив интерпретатор в обычном режиме с выполнением скрипта из файла вы можете в любом месте активировать интерактивный режим. Или даже несколько по очереди. За это отвечает модуль 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
🚨الخارجية الفرنسية: الوزيران الفرنسي والباكستاني أكدا أهمية إدراج لبنان ضمن بنود وقف إطلاق النار لضمان استمراره
French Foreign Ministry:
The French and Pakistani ministers emphasized the importance of including #Lebanon within the ceasefire terms to ensure its sustainability.
ــــــــــــــ
📲 قناة موقع بنت جبيل على واتساب
https://whatsapp.com/channel/0029VaG3H3R8fewmfDqRKX0Q
🇮🇷🇮🇷 Islamic Revolutionary Guard Corps (IRGC): We will fulfill our duty toward #Lebanon, respond to the aggressors, and make them regret [their actions].
—❗🇱🇧/🇮🇱NEW: Israeli media talking about a security event in southern #Lebanon and families of the iof soldiers were notified.
According to the report, At least 5 military helicopters in evacuation operations in southern Lebanon.
@AlHaqNews
🇵🇰🇮🇷🇱🇧🔻Pakistan’s Minister of Defense, H.E KHAWAJA MUHAMMAD ASIF: Israel is an evil and a curse on humanity. While peace talks are underway, it commits genocide in #Lebanon.
@AlHaqNews
🇱🇧🇱🇧Hussein Wahib Yassin (Haj Abu Mohammad Habib), a senior commander of Hezbollah, was martyred as a result of an airstrike by the Zionist regime’s army on southern Lebanon.
🟡 Martyr Yassin was from the town of Majdel Selm in southern Lebanon and was an experienced field commander of Hezbollah. His record includes participation in the 33‑day war, the Battle of Al‑Aqsa Storm on the southern Lebanon front, the Syrian war, and accompanying the martyred commanders Haj Qasem Soleimani and Haj Emad Mughniyeh.
🟡 The exact time and place of this mujahid commander’s martyrdom are not specified.
#Lebanon
🇱🇧 According to a new report from the Lebanese Ministry of Health, the death toll from yesterday’s Israeli attacks on Lebanon has now reached 303 martyrs, with over 1,150 wounded.
✍️ Unfortunately, the casualty count continues to rise. Hezbollah, without any support from Lebanon’s incompetent government, is defending the country’s soil and its people.
#Lebanon
🇱🇧#Lebanon: The statue of Jesus Christ which was destroyed by an IDF soldier was replaced yesterday by a new one which was donated by Italian UNIFIL troops.
🇱🇧#Lebanon: Lebanon’s prime minister has reportedly ordered the Lebanese Army to deploy across Beirut to ensure that only official armed forces have access to weapons, restricting possession exclusively to state security institutions.
The government has also decided to file an urgent complaint with the United Nations Security Council in response to Israel’s indiscriminate attacks on civilian infrastructure in Lebanon.
At the start of the session, the PM stated that Lebanon is "tired of mere statements of condemnation", expressing frustration that the country was not included in the ceasefire announced between the US and Iran.
(via MTV news)
🇱🇧#Lebanon: The pro-Iranian hacktivist group "Fatemiyoun Electronic Team" (FET) targeted the website of MTV Lebanon overnight, issuing threats against the channel and causing a temporary outage.
The group carries out digital attacks on behalf of the Iraqi militia "Kataib Hezbollah" (also known as Hezbollah Brigades), which is part of the Popular Mobilization Forces (PMF).
(via @LebOSINT on X)