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

TGINSIGHT SIMILAR POSTS

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

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

Регулярно приходится писать и ревьюить код, где используется PySide2-6. Заметил, что в подавляющем большинстве случаев настройка создаваемых базовых виджетов происходит через методы. Думаю, всем знаком такой способ. Простой пример с кнопкой: button = QPushButton("Click Me") button.setMinimumWidth(300) button.setFlat(True) button.setStyleSheet("font-size: 20pt") button.setToolTip("Super Button") button.clicked.connect(lambda: print("Button clicked")) Но есть и альтернативный способ - настройка через свойства. Это просто ключевые аргументы конструктора класса. Хоть они и не указаны в документации как аргументы, но они есть) Этот код делает тоже самое но с помощью Property button = QPushButton( "Click Me", minimumWidth=300, flat=True, styleSheet="font-size: 20pt", toolTip="Super Button", clicked=lambda: print("Button clicked"), ) Где это может быть полезно ▫️ Это выглядит более аккуратно и коротко, уже повод использовать ▫️ Может использоваться в заполнении лейаута, когда нам не нужно никакое другое взаимодействие с виджетом и поэтому сохранять его в переменную не требуется. Например, лейбл или кнопка. widget = QWidget(minimumWidth=400) layout = QHBoxLayout(widget) layout.addWidget(QLabel("Button >", alignment=Qt.AlignRight)) layout.addWidget(QPushButton("Click Me", clicked=lambda: print("Button clicked"))) widget.show() Либо так widget = QWidget(minimumWidth=400) layout = QHBoxLayout(widget) for wd in ( QLabel("Button >", alignment=Qt.AlignRight), QPushButton("Click Me", clicked=lambda: ...) ): layout.addWidget(wd) widget.show() ▫️ Можно хранить настройки в каком-то конфиге или генерировать на лету, после чего передавать как kwargs. kwargs = {"text": "Hello " * 30, "wordWrap": True} my_label = QLabel(**kwargs) Как получить полный список доступных свойств? Эта функция распечатает в терминал все свойства виджета и их текущие значения def print_widget_properties(widget): meta_object = widget.metaObject() for i in range(meta_object.propertyCount()): property_ = meta_object.property(i) property_name = property_.name() property_value = property_.read(widget) print(f"{property_name}: {property_value}") #tricks#qt

Hashtags

Резултати

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

Пребарај: #spoj

当前筛选 #spoj清除筛选
Dasturlash hayoti️️ ️

@dasturlash_hayoti · Post #3981 · 30.09.2025 г., 08:41

Doimiy o‘z ustingizda ishlash uchun eng mashhur saytlar Men doimiy ravishda mantiqiy fikrlash va algoritmik masalalar ustida ishlashga harakat qilaman. Quyida men foydalanadigan va sizga ham tavsiya qiladigan platformalar ro‘yxatini keltiraman. 1.HackerRank — algoritm, data structure va dasturlash tillari bo‘yicha bosqichma-bosqich mashqlar. 2.RoboContest.uz — o‘zbek tilidagi masalalar platformasi, yangi boshlovchilar uchun juda qulay. 3.LeetCode — intervyu savollari va amaliy algoritmik masalalar uchun eng mashhur manba. 4. Project Euler — matematik mantiqqa asoslangan murakkab va qiziqarli masalalar. 5.Codeforces — tezkor musobaqalar (contests) va turli darajadagi masalalar. Competitve programming’ni haqiqiy sharoitida mashq qilishni xohlasangiz — ideal. 6.AtCoder — Yapon platformasi, tartibli va yaxshi tuzilgan musobaqalar. Ayniqsa algoritmik masalalarni tanaffussiz yechish uchun foydali. 7.SPOJ — klassik masalalar arxivi, resurslarni tejab ishlashni ham o‘rgatadi. 8. CodeSignal — intervyu uslubidagi masalalar va baholash tizimi. Ishga kirish yoki intervyuga tayyorlanayotganlar uchun qulay. 9. Exercism — tilga yo‘naltirilgan mashqlar (Python, JS, Ruby…). Kod yozish amaliyoti va mentor fikrini olish imkoni bor — yangi til yoki stil o‘rganish uchun ayni muddao. 10.TopCoder — an’anaviy competitive programming platformasi, marafonlar va Single Round Match’lar (SRM). Qiyin masalalarga duch kelishni istaganlarga. 11.Brilliant — mantiq, matematik fikrlash va algoritmlarni vizual hamda interaktiv tarzda o‘rgatadi. Tez tushunish va konseptual bilimlarni mustahkamlash uchun ajoyib. 12. CodinGame — o‘yin shaklida kod yozib yechiladigan masalalar. Algoritmni vizualizatsiya qilmoqchi bo‘lsangiz yoki dam olish bilan o‘rganmoqchi bo‘lsangiz — super. 13. AoPS (Art of Problem Solving) — (AoPS ayniqsa) matematika mantiqi va olimpiyadalar uchun. Raqamli mantiq va kombinatorika qobiliyatini oshirishga yordam beradi. 14.InterviewBit — intervyu savollari va o‘quv yo‘li. LeetCode bilan parallel intervyu tayyorgarligi uchun foydali. 15. Kaggle — agar ma’lumotlar tahlili va mashinani o‘rganish sohasiga qiziqsangiz, real dataset’lar va mashqlar orqali fikrlashni chuqurlashtiradi. 16.Coderbyte — intervyu uslubidagi mashqlar to‘plami. Mening kichik maslahatlarim — Kuniga kamida 1–2 ta masala yechishga odatlaning. — Har xil platformalarni aralashtirib ishlang (masalan, bir kuni LeetCode, keyingi kuni Codeforces). — O‘z yechimlaringizni GitHub’da saqlang — bu sizga tajriba to‘plash va portfolioga qo‘shish imkonini beradi. Agar bu ro‘yxat sizga foydali bo‘lsa, do‘stlaringiz bilan ham ulashing. #programming#algorithms#coding#leetcode#hackerrank#robocontest#projecteuler#codeforces#atcoder#spoj#dasturlash @jonibek_turapov