Для тех кто пишет расширения на 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
По #BTC жду что то типа такого сценария.
Уже почти все распродал, набранное 11-12-го мая. На отскоке вверх своё забрал и буду ждать дальнейшего снижения.
Пока использую для хранения стейбл #DAI, думаю он выстоит в кровавой битве.
💲 USDC has overtaken XRP in terms of market capitalization!
The total supply of #USDT, #USDC and #DAI has increased to $141.42 billion - the highest since May 2022.
Earlier: Whales are hoarding stablecoins
Beyond Crypto
Ethereum Foundation Start 2025 with ETH Sale
The Ethereum Foundation kicks off 2025 by selling 100 ETH for 329,463 DAI. In total, 4.466 ETH was sold in 2024 for $12.61 million at an average price of $2,823 per token. The foundation often initiates sales before significant price drops.
For more details, visit: Spot On Chain
#Ethereum#Crypto#ETH#DAI#Market#Investing
🔄Миграция DAI в USDS.
Крупные биржи уже сегодня начнут автоматическую конвертацию #DAI в #USDS в соотношении 1:1.
Это финальный этап биржевой части ребрендинга MakerDAO в Sky Protocol. 9 апреля команда Sky обещает опубликовать подтверждение апгрейда DAI → USDS.
Ранее: MakerDAO больше нет
Crypto Headlines
🚀 Ethereum Foundation Completes Sale of 5,000 ETH
The Ethereum Foundation has successfully sold 5,000 ETH, according to Foresight News. The sale resulted in 11.1 million DAI, with an average selling price of $2,221 per ETH.
#EthereumFoundation#ETH#sale#DAI#cryptocurrency#ForesightNews
📝Epstein koalicia vs Irán 📝
hlavné udalosti ku koncu 24. apríla
Najhlasnejšou udalosťou dňa bolo predĺženie prímeria v Libanone o tri týždne, o čom s hrdosťou vyhlásil Trump, s prisľúbením zorganizovať medzi Libanoncami a Izraelčanmi stretnutie na vyššej úrovni. Ale ktokoľvek sa zúčastní dialógu, v praxi toto „prímerie“ pravdepodobne stále znamená odklad útokov na Bejrút.
➡️Keďže vnútené podmienky pre Libanon stále zahŕňajú likvidáciu „Hezbollahu“, OSI neprestáva s operáciami na juhu Libanonu, kde zostáva prítomná táto skupina, zároveň ničiac už obsadené obce. Preto predstavitelia spojené s hnutím okamžite zdôraznili zmysluplnosť ukončenia paľby a bojovníci skupiny pokračovali v odvetných ostreľovaniach izraelských pozícií.
➡️Okolo „zamrznutého“ konfliktu s Iránom je tiež málo pohybu, ak nerátame iluzórnu šancu na obnovenie rokovaní: médiá očakávajú, že odcestovalý do IslamabaduAbbas Arakči aspoň zanechá odkaz pre Američanov, alebo dokonca uskutoční priame stretnutie s delegátmi USA, ktorých zajtra sľubujú poslať do Pákistanu.
Rýchlosť, akou vo Washingtone oznámili pripravenosť na stretnutie, vytvára dojem, že tím Trumpa horúčkovito hľadá východisko z krízy, ktorú sám vytvoril. Ale príčina môže byť aj prozaickejšia: takéto pozitívne správy znižujú ceny ropy, čo sa stalo aj tentokrát.
➡️Cena „čierneho zlata“ nie je jediným problémom, ktorému čelia úrady USA. Médiá už naplno počítajú, akú škodu rozpočet a bojová schopnosť krajiny utrpia kvôli nadmernému spotrebovaniu munície v Iráne. A to ešte podceňujú — v skutočnosti je situácia ešte komplikovanejšia.
➡️Navyše, novinári vinia vojenské vedenie aj z podceňovania strát počas konfliktu. Na pozadí týchto vyšetrovaní vyhlásenia úradov USA o bezkrvnom víťazstve nad Iránom postupne strácajú váhu v očiach bežných občanov.
➡️Klenotom na torte boli vyjadrenia ultrapravicových síl v Izraeli, že Trump, ktorý predtým vystupoval proti anexii Západného brehu, dovolil rozšírenie osád. Keďže čoraz menej Američanov vyjadruje podporu Izraelčanom, takéto správy (aj keď sú falošné) ešte viac zasiahnu reputáciu súčasnej vlády USA.
📎Karty vo vysokom rozlíšení:
🔸Ohniská nestability (ru; en)
🔸Súčasná situácia v Libanone(ru; en)
#daĭdzhest #Izrael#Irán#Libanon#USA
🌐Zdroj:@rybar
🔗Link:https://t.me/rybar/79753
#Rybar
https://t.me/casusbellilive
Truth over narrative 24/7
WEB | CONTACT | SHOP
📅Vytvorené: 2026-04-24 22:50:31