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

Пребарај: #zerotrust

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

@ai_and_law · Post #638 · 19.08.2025 г., 07:04

🇫🇷🇩🇪Franco-German Guidance on Zero-Trust LLM Security France’s Agence nationale de la sécurité des systèmes d’information (ANSSI) and Germany’s Federal Office for Information Security (BSI) have jointly issued a paper on applying zero-trust principles to large language models. The document identifies common design vulnerabilities and operational risks in LLM deployment, stressing the need for a security architecture that assumes no implicit trust. The recommendations focus on three key safeguards: ✔️ restricting system access rights to the minimum necessary, ✔️ increasing transparency in algorithmic decision-making, and ✔️ ensuring continuous human oversight. This coordinated stance from two of Europe’s leading cybersecurity authorities signals a growing emphasis on proactive governance of AI systems at the infrastructure level. #AIsecurity#LLM#ZeroTrust#CyberRegulation

АнтиФрод Россия

@antifraudrussia · Post #1342 · 28.07.2025 г., 07:55

💥✈️Аэрофлот под киберударом: уничтожена вся IT-инфраструктура Хакерская группировка заявила о самом разрушительном киберинциденте в истории российской авиации. По их словам: – Год скрытого доступа – Взломаны все критические системы: от Sabre и 1С до CRM и ПК топ-менеджеров – Уничтожено ~7000 серверов – Похищено более 12 ТБ данных (переписки, переговоры, внутренние документы) – Коллапс в Шереметьево, отмены рейсов, хаос 🎯Официально — "сбой IT-систем". Фактически — цифровая катастрофа. Как такое стало возможно? Ответ, как ни банально, — человеческий фактор. ‼️Игнорирование сигналов от SIEM/SOC ‼️Отсутствие модели Zero Trust ‼️Слабая сегментация сети ‼️Примитивный фишинг и плохая кибергигиена ‼️Уязвимые устройства и отсутствие MFA ‼️Отсутствие изолированных бэкапов ⚠️Безопасность — это не только технологии. Это люди, процессы и культура. Может ли дорогостоящий DLP спасти от того, кто нажал "открыть вложение"? Нет. Может ли SIEM работать, если никто не смотрит на алерты? Нет. Может ли MFA помочь, если её нет на критичных точках? Тоже нет. 🧠Выводы? Уроки? Переоценка подходов? Очень хочется делить заявления на 50/50, но даже если масштаб преувеличен — запах гари слишком отчетлив. Это уже не просто технический инцидент. Это стратегический провал. Что думаете? Где граница между пиаром хакеров и реальным провалом кибербезопасности госкомпаний? #кибербезопасность#Аэрофлот#инфобез#cyberattack#ZeroTrust Ваш АнтиФрод Россия🔐