Для тех кто пишет расширения на PyQt/PySide для CG-софтов.
Когда я только начинал писать тулзы под Maya (тогда еще версия 2010-2011) мне приходилось ручками ставить PyQt4 под Maya. Даже написал мануалы по установке на своём сайте. Но потом стал доступен из коробки PySide и позже он обновится до PySide2. Для некоторых систем была поддержка PyQt5.
И как простому разработчику поддерживать этот зоопарк? Ведь хочется чтобы тул работал на любой версии (вы тоже делали модуль что-то типа import_qt.py?😁)
На помощь приходит проект Qt.py который поставил себе цель унифицировать использование Qt-биндингов вне зависимости от среды где запускается код. Те, кто давно пишут на Qt, скорее всего знают этот проект.
Он стал стандартом для CG-индустрии и используется в топовых студиях и проектах.
Qt․py помогает запускать один и тот же код на разных платформах с разными вариантами Qt-библиотек. Это может быть как интеграция в CG-софт, так и переносимость стендалонов между разными платформами с разными версиями Python.
Я решил рассказать о некоторых особенностях работы с этой библиотекой.
Сегодня о том, как установить и использовать Qt․py и что это вам даёт.
Установка
pip install Qt.py
Чтобы начать использовать Qt․py в коде достаточно заменить импорт вашего варианта Qt-биндинга на Qt․py
from [PySide|PyQt4|PySide2|PyQt5] import QtWidgets
=>
from Qt import QtWidgets
Теперь ваш код будет поддерживать любой вариант биндинга Qt в Python.
При этом не потребуется использовать if-else конструкции под разные версии. Все вызовы теперь одинаковы.
Всё что нужно сделать, это написать его по правилам PySide2. Именно эта версия была взята за основу.
Приоритет импорта такой:
1. PySide2
2. PyQt5
3. PySide
4. PyQt4
Что именно загрузилось можно посмотреть в переменной __binding__
>>> import Qt
>>> Qt.__binding__
'PySide2'
Приоритет имопрта можно изменить через переменные QT_PREFERRED_BINDING и QT_PREFERRED_BINDING_JSON. Причем под каждый проект оверрайды можно настраивать индивидеально.
#qt#libs
❗🇷🇺 Russian Defence Ministry 24-Hour hotline: +78001007707
Our 24-hour hotline provides steady communication with all structures, including embassies of foreign states and all foreign subscribers, including international organizations (UN and OSCE). All calls from anywhere in the world, including from Ukraine, will be accepted, processed and implemented in accordance with the request.
#MoD#Russia#hotline
@mod_russia_en
📰US and Russia agree to resume regular military contact
The United States and Russia have agreed to reestablish high‑level military‑to‑military dialogue for the first time in over four years, both powers announced late Thursday.
The deal was struck in Abu Dhabi, on the sidelines of trilateral talks between the U.S., Russia and Ukraine on ending the war, and was announced by U.S. European Command. The channel will
“provide a consistent military‑to‑military contact as the parties continue to work towards a lasting peace.”
High‑level military communication was suspended in the fall of 2021, shortly before Russia’s full‑scale invasion of Ukraine. Since then, there have been repeated close calls: Russian drones and warplanes edging into NATO airspace, U.S. unmanned systems operating over the Black Sea and Syria, and an almost constant risk of misunderstanding turning into escalation.
Now, the two sides say they want to avoid miscalculation and unintended escalation. The U.S. stresses that such dialogue is
“an important factor in global stability and peace, which can only be achieved through strength,”
and that it will increase transparency and help de‑escalate.
Diplomacy, or nuclear‑treaty bargaining?
The announcement came hours after the New START treaty expired, leaving the U.S. and Russia without a formal cap on their nuclear arsenals for the first time in half a century. Russia has said it still wants to talk, and the Kremlin has offered to keep observing the treaty’s limits — but only if the U.S. responds positively.
Axios reports that negotiators were closing in on a deal in Abu Dhabi to keep key provisions in place while both sides work toward a new framework, which Trump has described as a “new, improved, and modernized” treaty.
The Trump factor
President Donald Trump, who has repeatedly called for closer ties with Moscow, framed the move as a win for his approach: normalizing relations with Russia while pressing for a Ukrainian peace deal and a new arms‑control framework.
But in practice, the renewed hotline is less about friendship and more about necessity: when two nuclear powers hover over the same war zone, the only safe channel is one that stays open — even if both sides keep their fingers on the trigger.
#USRussia#Military#NewSTART#Nuclear#Ukraine#Trump2026#Diplomacy#NATO#Hotline
📱American Оbserver - Stay up to date on all important events
🇺🇸