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

Резултати

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

Пребарај: #ukai

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

@ai_and_law · Post #732 · 26.12.2025 г., 08:04

🇬🇧UK Publishes First Evidence-Based Assessment of Frontier AI Capabilities The UK AI Security Institute released its inaugural "Frontier AI Trends Report", presenting a public, data-driven assessment of how the most advanced AI systems are evolving. Based on two years of testing across cyber security, software engineering, biology, and chemistry, the report provides quantified evidence on AI capabilities, replacing speculation with measurable benchmarks. The findings show rapid capability growth. In cyber security, success on apprentice-level tasks rose from under 9% in 2023 to about 50% in 2025, and for the first time a model completed an expert-level task requiring up to 10 years of experience. In software engineering, models now complete hour-long tasks over 40% of the time, up from below 5% two years ago. In biology and chemistry, systems outperform PhD-level researchers on knowledge tests and enable non-experts to conduct advanced lab work. Safeguards are improving but remain imperfect. The time needed to discover a “universal jailbreak” increased from minutes to several hours between model generations, around a 40-fold improvement, though all tested systems remain vulnerable to some bypasses. The report makes no policy recommendations, but aims to improve transparency and inform regulators and policymakers globally about what frontier AI systems can actually do. #AIRegulation#AISafety#UKAI#FrontierAI#AIGovernance#TechPolicy

AI & Law

@ai_and_law · Post #105 · 06.09.2023 г., 07:04

UK House of Commons Committee Issues Interim AI Governance Report Hello everyone! The UK House of Commons Committee on Science, Innovation, and Technology has released an interim report on AI governance. In a consultation involving over 100 AI experts, including researchers, businesses, and civil society representatives, the Committee explored AI applications in education, healthcare, and medicine, assessing their benefits and potential risks. While the UK government currently adopts a light-touch approach to AI regulation, the Committee warns that without an AI bill introduced before the next general election, the UK may lag behind the EU and US, both of which are making significant legislative progress in AI regulation. The report identifies 12 pivotal challenges for policymakers in shaping AI frameworks: 1. Bias 2. Privacy 3. Misrepresentation 4. Access to Data 5. Access to Compute 6. Black Box Algorithms 7. Open-Source Code 8. Intellectual Property and Copyright 9. Liability 10. Employment Disruption 11. International Coordination 12. Existential Threats The report emphasizes the need for mechanisms to prevent bias, protect privacy, and ensure transparency in AI systems, urging the introduction of an AI bill to maintain the UK's leadership in AI governance. #AIGovernance#UKAI#AIRegulation#AIChallenges#AIReport#TechnologyLaw#AIInnovation