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 слични објави

Пребарај: #secureai

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

@ai_and_law · Post #299 · 03.05.2024 г., 07:04

USA: New Bill Targets AI Security with Breach Tracking and Counter-AI Measures Senators Warner and Tillis have introduced the Secure Artificial Intelligence Act, aiming to bolster security measures surrounding AI systems. The bill proposes an AI Security Center within the National Security Agency (NSA) to manage a database recording all AI security breaches, including close calls ("near-misses"). The legislation establishes a dedicated unit within the NSA to lead research on "counter-AI" techniques. This includes methods to identify and prevent manipulation of AI systems, such as: ✅Data Poisoning: Malicious insertion of code into training data to skew an AI model's output. ✅Evasion Attacks: Altering data used by AI models to intentionally confuse them. ✅Privacy-Based Attacks: Exploiting vulnerabilities in AI systems to compromise user privacy. ✅Abuse Attacks: Misusing AI models for malicious purposes. The Secure Artificial Intelligence Act will undergo committee review before potential consideration by the full Senate. #SecureAI

Hashtags

AI & Law

@ai_and_law · Post #35 · 21.06.2023 г., 07:04

£54 million boost to develop secure and trustworthy AI research The UK government has announced a significant investment of £54 million to support the development of secure and trustworthy AI. The funding will be allocated to various projects and initiatives focused on enhancing the security and trustworthiness of AI systems. This includes advancing research on AI algorithms, data privacy, and cybersecurity measures. The aim is to address critical challenges such as algorithmic bias, data protection, and ethical considerations in AI development and deployment. #AIresearch#SecureAI#TrustworthyAI#UKgovernment#Innovation#EthicalAI#DataPrivacy#Cybersecurity