Для тех кто пишет расширения на 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
https://docs.python.org/3.5/library/csv.html
The so-called #CSV (Comma Separated Values) format is the most common import and export format for spreadsheets and databases. CSV format was used for many years prior to attempts to describe the format in a standardized way in RFC 4180. The lack of a well-defined standard means that subtle differences often exist in the data produced and consumed by different applications. These differences can make it annoying to process CSV files from multiple sources. Still, while the delimiters and quoting characters vary, the overall format is similar enough that it is possible to write a single module which can efficiently manipulate such data, hiding the details of reading and writing the data from the programmer.
🚢Solstad Maritime продлевает контракт на CSV "Normand Energy".
Норвежский судовладелец Solstad Maritime получил продление контракта на судно типа CSV - "Normand Energy" (2007 г. постройки), которое продолжает работать по контракту с кабельным гигантом Prysmian.
Стороны согласовали твердый период продления сроком на восемь месяцев — с 1 апреля по 30 ноября — с возможностью дальнейших опционов. Контракт обеспечивает непрерывную загрузку судна до начала более долгосрочного соглашения, запланированного на первый квартал 2027 года.
С отраслевой точки зрения продление отражает устойчивый спрос на специализированные офшорные суда в сегменте подводной инфраструктуры, включая прокладку кабелей и обслуживание энергетических проектов.
Замена ранее задействованного "Normand Ocean" на более крупное и функциональное судно подчеркивает тенденцию к использованию более производительных единиц для повышения эффективности операций.
Наличие промежуточного контракта до 2027 года указывает на высокий уровень загрузки флота в данном сегменте и ограниченное предложение подходящего тоннажа, что поддерживает ставки и усиливает позиции операторов специализированных судов на фоне роста проектов в области энергетики и телекоммуникаций.
📌Solstad Maritime — основана в 1964 году, частная норвежская компания, входит в группу Solstad Offshore ASA, контролируемую норвежскими инвесторами и кредиторами.
#offshore#CSV#shipping#energy#subsea
🚢Petrobras продлевает контракт на CSV "Normand Fortress" на $56 млн.
Бразильская Petrobras предоставила двухлетнее продление контракта стоимостью около $56 млн для судна "Normand Fortress", принадлежащего Solstad Maritime (SOMA). Контракт вступит в силу в начале июля.
Судно типа CSV будет обеспечивать проживание персонала и поддержку производственных операций на континентальном шельфе Бразилии. Контракт реализуется через Solstad Offshore, выступающей держателем соглашения с Petrobras.
Судно "Normand Fortress" (проект MT 6016 MK II, 2006 г. постройки) рассчитано на размещение до 100 человек и обладает грузовой палубой площадью около 800 м², что делает его универсальной платформой офшорных проектов.
С отраслевой точки зрения продление контракта отражает устойчивый спрос на вспомогательные офшорные суда в сегменте глубоководных работ, где активность Petrobras продолжает поддерживать загрузку флота.
Долгосрочные соглашения повышают предсказуемость доходов и усиливают позиции операторов на фоне ограниченного предложения специализированного тоннажа.
📌Solstad Offshore ASA — основана в 1964 году, публичная норвежская компания, принадлежит институциональным инвесторам и кредиторам.
#offshore#CSV#shipping#Brazil#energy
#typescript#csv#diagrams#graph#json#nextjs#react#tool#visualization#yaml
JSON Crack is a free, open-source tool that instantly turns complex JSON, YAML, CSV, XML, or TOML data into clear, interactive graphs, making it easier to explore and understand your information. It lets you convert between formats, validate data, generate code (like TypeScript interfaces), run queries, and export visuals as images—all while keeping your data private since everything processes locally on your device[1][2][5].
https://github.com/AykutSarac/jsoncrack.com
#cplusplus#arduino#cansat#csv#embedded#graph#ground_station#iot#microcontroller#network#projects#qt#serial#serial_studio
Serial Studio is a free, easy-to-use tool that lets you visualize real-time data from devices like microcontrollers via serial ports, Bluetooth, or network connections. It works on Windows, macOS, and Linux, and offers customizable dashboards with various widgets to monitor sensor data, debug info, or telemetry. You can quickly plot data, export it as CSV for analysis, and even use advanced features like checksum validation and JavaScript data processing. It supports hobbyists, educators, and professionals by simplifying data monitoring and debugging, saving you time and effort in understanding your device’s output. Pro versions add commercial use and extra features[1][4][5].
https://github.com/Serial-Studio/Serial-Studio