TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #381 · 23 окт.

Установить свойства виджета в PySide можно не только через соответствующие методы и конструктор класса. Можно их изменять с помощью метода setProperty по имени. btn = QPushButton("Click Me") btn.setProperty("flat", True) Это аналогично вызову btn.setFlat(True) Если указать несуществующее свойство, то оно просто создается btn.setProperty("btnType", "super") Получить его значение можно методом .property(name) btn_type = btn.property("btnType") Когда это может быть полезно? ▫️Можно просто хранить какие то данные в виджете и потом их доставать обратно widget = QWidget() widget.setProperty('my_data', 123) print(widget.property('my_data')) ▫️ Назначая эти свойства разным виджетам можно потом отличить виджеты во время итераци по ним. Например, найти все кнопки со свойством my_data="superbtn". Но ведь вместо кастомного свойства можно использовать objectName, будет тот же результат. Да, но y ObjectName есть ограничение - только строки. ▫️ Если нам потребуется не просто поиск а, например, сортировка по числу, то свойства позволяют нам это сделать. Поддерживается любой тип данных widget.setProperty('my_data', {'Key': 'value'}) widget.setProperty('order', 1) all_widgets.sort(key=w: w.property('order')) Но ведь Python позволяет всё вышеперечисленное сделать простым созданием атрибута у объекта widget.order = 1 widget.my_data = 123 Да, но я думаю что не надо объяснять почему не стоит так делать. К тому же, если у виджета нет свойства то метод .property(name) вернет None, а отсутствующий атрибут выбросит исключение. ▫️ Действительно полезное применение кастомным свойствам - контроль стилей. Здесь атрибутами не обойтись, нужны именно свойства. Дело в том, что в селекторах стилей можно указывать конкретные свойства виджетов на которые следует назначать стиль. Просто запустите этот код from PySide2.QtWidgets import * if __name__ == "__main__": app = QApplication([]) widget = QWidget(minimumWidth=300) layout = QVBoxLayout(widget) btn1 = QPushButton("Action 1") btn2 = QPushButton("Action 2") btn3 = QPushButton("Action 3", flat=True) layout.addWidget(btn1) layout.addWidget(btn2) layout.addWidget(btn3) # добавим кастомное свойство одной кнопке btn1.setProperty("btnType", "super") # добавляем стили widget.setStyleSheet( """ QPushButton[btnType="super"] { background-color: yellow; color: red; } QPushButton[flat="true"] { color: yellow; } """ ) widget.show() app.exec_() С помощью селектора мы избирательно назначили стили на конкретные кнопки. Как получить список всех кастомный свойств? Функция получения списка кастомных свойств отличается от получения дефолтных. def print_widget_dyn_properties(widget): for prop_name in widget.dynamicPropertyNames(): property_name = prop_name.data().decode() property_value = widget.property(property_name) print(f"{property_name}: {property_value}") #tricks#qt

Hashtags

Резултати

Пронајдени 3 слични објави

Пребарај: #legalservices

当前筛选 #legalservices清除筛选
AI & Law

@ai_and_law · Post #216 · 17.01.2024 г., 08:04

Stanford Research Raises Concerns aboutChatbots Use in Legal Field Greetings everyone! Stanford University's latest research unveils unsettling truths about popular AI chatbots, including OpenAI's ChatGPT and Google's PaLM 2. When faced with legal questions, these widely-used models exhibited "hallucinations" in responses a staggering 75% of the time. The implications are particularly worrisome for self-represented litigants who rely on these AI tools due to financial constraints. As hopes for AI aiding legal services soar, the study underscores the urgent need for refining these models to ensure accurate and reliable legal assistance #AILaw#LegalTech#AIChatbots#LegalServices#StanfordResearch

Crypto M - Crypto News

@CryptoM · Post #64990 · 10.04.2026 г., 13:05

🚀 Core Inflation Data Falls Short of Expectations Amid Iran Conflict On April 10, Jin10 reported that March's core inflation data, excluding the significant rise in energy prices due to the Iran conflict, fell below expectations. According to Jin10, Omair Sharif from Inflation Insights noted that this positive trend might not last. Sharif explained that the core price increase was suppressed by declines in two categories: legal services and medical goods, which are unlikely to remain at their current low levels in the coming months. Additionally, airfare prices rose by 2.7% last month and may accelerate further. He stated, “Aside from gasoline, today's data largely does not reflect the impact of the Iran conflict, so I expect core inflation readings to strengthen in the coming months.” #CoreInflation#IranConflict#InflationData#EnergyPrices#LegalServices#MedicalGoods#AirfarePrices#OmairSharif#EconomicTrends#InflationInsights