Форум программистов, компьютерный форум, киберфорум
Python 3
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
Старый
Рейтинг: 1.00. Голосов: 2.
К вопросу о наследовании QWidget и таблицах стилей.
Запись от iamvic размещена 11.09.2022 в 13:55 / К вопросу о ...
Показов 1901 Комментарии 0
Метки pyqt5, python, python 3, qt5

Очередное напоминание себе о том, что практикуя создание собственных подклассов надо быть не только небрезгливым, но ещё внимательным и злопамятным. Иначе и до конфуза недалеко, причём весьма неожиданного.

Для примера возьмём приложение из заметки К вопросу о влиянии декораторов на возвращаемое значение QObject.sender()
После ревизии кода, выкидывания ненужного и дописывания нужного оно приобретает такой вид:
Python
1
2
#!/usr/bin/python3
# -*- coding: utf-8 -*-
...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о влиянии декораторов на возвращаемое значение QObject.sender().
Запись от iamvic размещена 03.07.2022 в 20:23 / К вопросу о ...
Показов 2130 Комментарии 0
Метки pyqt5, python, python 3, qt5

Ещё один интересный нюанс выявился для Памятки. Началось-то всё с заметки К вопросу о закрытии окна нажатием на значок в полосе заголовка в попытке найти ответ на вопрос "Что делать?", если в процессе закрытия приложения требуется выполнять некоторые обязательные действия, даже когда пользователь закрывает его нажатием на значок...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о локализации приложений PyQt.
Запись от iamvic размещена 12.06.2022 в 19:54 / К вопросу о ...
Показов 2506 Комментарии 4
Метки pyqt5, python, python 3, qt5

Так получилось, что тема Переименовать кнопку "setDetailedText", которую недавно поднял telnofff, как-то незаметно превратилась в Памятку. Насколько я понял, настоящей-то причиной появления этой темы было не желание заменить стандартный текст на этой злосчастной кнопке на какой свой, а то, что этот текст выдавался...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о модальности QDialog.
Запись от iamvic размещена 30.04.2022 в 13:05 / К вопросу о ...
Показов 1483 Комментарии 0
Метки pyqt5, python, python 3, qt5

К вопросу о модальности QDialog.

Однако, ещё одна тема для Памятки появилась. Пришлось тут столкнуться с ситуацией, которую учат избегать чуть ли не на уровне рефлексов, но вот находятся же пытливые умы

Да, в документации QDialog Class | Qt Widgets нет прямого запрета на запуск диалога методом QDialog.exec_() после выполнения QDialog.show(). Возможность применения этих методов таким...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о подготовке документов LibreOffice в дополнительном потоке.
Запись от iamvic размещена 12.04.2022 в 15:24 / К вопросу о ...
Показов 1600 Комментарии 0

Для начала изложу некоторые свои соображения, которые народились в результате размышлений на тему "С какой стати некоторые разработчики столь рьяно отвергают одну из предлагаемых Qt схем применения QThread?"

Речь идёт о Многопоточные технологии в Qt, первый пример в табличке раздела Примеры использования (гуглоперевод интересующего отрывка причёсан мною):
Срок службы потока - разовый вызов.
Операция - запустить
...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о симуляторах и имитаторах...
Запись от iamvic размещена 01.04.2022 в 00:00 / К вопросу о ...
Показов 1857 Комментарии 0

Забавно, что по иным причинам, но именно к первому апреля пришлось приводить к товарному виду пару своих демонстрашек, динамически размещающих и удаляющих индикаторы QProgressBar в центральном виджете главного окна.

В первом случае каждое нажатие кнопки Пуск приводит к реальному запуску в дополнительном потоке нового исполнителя, который симулирует бурную деятельность (проще говоря, спит), периодически информируя пользователя...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу об особенностях декорирования слотов, обрабатывающих сигнал destroyed.
Запись от iamvic размещена 26.01.2022 в 12:55 / К вопросу о ...
Показов 1740 Комментарии 0
Метки pyqt5, python, python 3, qt5

Вылезла всё-таки одна нестыковка в работе последнего варианта приложения из предыдущей записи блога,
которая к теме той записи не относится, но вполне достойна отдельного упоминания в Памятке.

Началось всё с обнаружения того факта, что количество "детей" у главного окна в процессе работы
не растёт....
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу об отличиях поведения виджетов на различных платформах на примере QTableView.
Запись от iamvic размещена 14.01.2022 в 23:01 / К вопросу о ...
Показов 1743 Комментарии 0
Метки linux, pyqt5, python, python 3, qt5, windows

В документации достаточно подробно разбираются основные отличия реализаций Qt для различных
платформ, но далеко не все. По крайней мере, о том, что поведение QTableView под Linux отличается
от поведения под Windows, упоминаний найти не удалось.

Представим, что выбрав строку...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о применении QtCore.QMetaObject. connectSlotsByName().
Запись от iamvic размещена 07.01.2022 в 19:04 / К вопросу о ...
Показов 2802 Комментарии 0
Метки pyqt5, python, python 3, qt5

QtCore.QMetaObject.connectSlotsByName() - штука, конечно, замечательная,
но несколько неоднозначная на мой взгляд. Надо поразмыслить потом на досуге.

Обычно-то, как действуем без использования QtCore.QMetaObject.connectSlotsByName()?
Все сигналы в своей прикладухе цепляем к слотам ручками, примерно как в этом примере:

Вариант A:
Python
1
2
3
4
5
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import sys
 
from PyQt5.QtWidgets import
...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о переключениях GUI с одного потока на другой в приложениях PyQt.
Запись от iamvic размещена 22.12.2021 в 12:31 / К вопросу о ...
Показов 1745 Комментарии 4

По определению, GUI в Qt/PyQt живёт в главном потоке, иначе называемом GUI-потоком. Но нельзя сказать, что это будет один и тот же поток в процессе выполнения приложения от старта до завершения. Даже в таком элементарном приложении GUI переключается между потоками по любому поводу:

gui_th_probe.py:
Кликните здесь для просмотра всего текста
Python
1
2
3
4
5
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import sys
from PyQt5.QtWidgets import QApplication, QAction
from PyQt5.QtWidgets import QMainWindow,
...
Старый
К вопросу о применении QSqlDatabase в QThread.
Запись от iamvic размещена 04.12.2021 в 14:08 / К вопросу о ...
Показов 1100 Комментарии 0

И всё-таки есть смысл в написании мелких "тренажёрчиков", которые в наглядном виде позволяют понять "как же оно там всё внутри устроено, что за что цепляется и как всё получается". По крайней мере, можно позволить себе некоторые вольности в формулировках, исполнении...
Старый
К вопросу о глобальных переменных и инкапсуляции в приложениях PyQt.
Запись от iamvic размещена 14.11.2021 в 11:48 / К вопросу о ...
Показов 3034 Комментарии 19
Метки pyqt5, python, python 3, qt5

Как обычно, ничего нового не скажу (и не покажу ), а просто, пока не забылось, запишу в Памятку свои слегка причёсанные мысли по поводу, пересекающемуся с тем, что написано здесь https://www.cyberforum.ru/blog... g7326.html. Вот после прочтения этой статьи ни с того, ни с сего и озадачился я вопросом:

А существуют ли в Qt/PyQt "глобальные переменные" достаточно близкие по смыслу к тому, который вкладывает в это понятие уважаемый Viktorrus?

Не...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу об экранной заставке при старте PyQt-приложений
Запись от iamvic размещена 10.10.2021 в 23:19 / К вопросу о ...
Показов 7303 Комментарии 20
Метки pyqt5, python, python 3, qt5

Однако, появилась ещё одна тема для памятки, поскольку неожиданные (хотя и прогнозируемые) трудности вызвала организация показа экранной заставки при старте PyQt-приложений под Linux.

Принцип-то понятен. А если не забывать, что Python - это интерпретатор и в процессе загрузки...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о повторном использовании закрытых окон (виджетов).
Запись от iamvic размещена 30.07.2021 в 14:47 / К вопросу о ...
Показов 1773 Комментарии 0
Метки pyqt5, python, python 3, qt5

Чем хороши путевые заметки в процессе познания Python и Qt, так это тем, что через некоторое
время их можно перечитать и обнаружить, что некоторые, казалось бы само собой разумеющиеся
факты, приведённые в них, не так просты, как кажется, и требуют более тщательного разбирательства.

Вот и упомянутый в предыдущей памятке https://www.cyberforum.ru/blog... g7193.html
общеизвестный факт, что окна (виджеты) не удаляются...
Старый
К вопросу об удалении виджетов после закрытия окна и предупреждении утечек.
Запись от iamvic размещена 13.07.2021 в 17:46 / К вопросу о ...
Показов 5578 Комментарии 0
Метки pyqt5, python, python 3, qt5

Правильно говорят, что "хорошо зафиксированная мысль в удержании не нуждается"
Вот вспомнил бы вовремя, что виджеты - это не просто объекты, то не понёс бы чушь
про их удаление тут https://www.cyberforum.ru/blog... g7180.html .
Зато есть повод написать себе очередную памятку с демонстрацией слайдов

Суть проблемы состоит в том, что за немедленное...
Старый
Рейтинг: 3.00. Голосов: 2.
К вопросу об "усыновлении сирот" в PyQt5.
Запись от iamvic размещена 02.07.2021 в 18:35 / К вопросу о ...
Показов 3373 Комментарии 5
Метки pyqt5, python, python 3, qt5

После прочтения весьма дельных советов от Fudthhh в https://www.cyberforum.ru/pyth... 55109.html
приходится писать очередную памятку себе, поскольку есть грех - частенько забываю явно указывать
родителей у объектов при построении графического интерфейса.

В документации-то, конечно, все нижеприведённые...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о закрытии окна нажатием на значок в полосе заголовка.
Запись от iamvic размещена 11.05.2021 в 21:10 / К вопросу о ...
Показов 7398 Комментарии 2
Метки pyqt5, python, python 3, qt5

В теме https://www.cyberforum.ru/pyth... 26501.html,
поднятой katyuhma, неожиданно вспомнилась ещё одна проблемка,
с которой когда-то пришлось повозиться, но решение так и не оформилось
в виде текста. Восполняю пробел.

Суть-то простая - открытое окно приложения, имеющее стандартное...
Старый
Обновление к вопросу многопоточности в PyQt5
Запись от iamvic размещена 29.01.2021 в 12:04 / К вопросу о ...
Показов 2745 Комментарии 0

Чтобы самому не забыть, ради чего делалось это https://www.cyberforum.ru/blog... g6900.html,
добавил справку и причесал с учётом замечаний, обнародованных тут
https://www.cyberforum.ru/blog... g6917.html.
Старый
Рейтинг: 4.20. Голосов: 5.
Нейросеть прямого распространения с обратным распространением ошибки.
Запись от Fudthhh размещена 19.01.2021 в 14:59
Показов 6322 Комментарии 1

Нейросеть прямого распространения с обратным распространением ошибки.

Возможно я что то не правильно понял или сделал, я не гарантирую что правильно реализовал это, но это работает и меня это устроило. Жду вашей критики.

По заданию:
0) Минимальное использование модулей.
1) Добиться гибкости при создании, то бишь использовать ООП.
2) Чтоб работало.

Формулы которые понадобятся при прямом распространении:

Формула...
Аватар для Fudthhh
Модератор
Старый
Размышления к определению экрана во время старта приложения под Linux.
Запись от iamvic размещена 14.01.2021 в 15:16 / К вопросу о ...
Показов 3819 Комментарии 0
Метки linux, pyqt5, python, python 3

Праздники закончились и появилось время разобраться с непоняткой, проявившейся на Lubuntu 18.04
с одной из быстрых настроек дополнительного экрана (см. ниже комментария
# нет устройств отображения или оно кривое в screenprobe.py
https://www.cyberforum.ru/blog... g6887.html).

С целью повышения экстрима для проведения опытов был использован давно ушедший в отставку
Toshiba...
Старый
Рейтинг: 1.00. Голосов: 5.
К вопросу об определении текущего экрана при старте.
Запись от iamvic размещена 22.12.2020 в 18:04 / К вопросу о ...
Показов 4343 Комментарии 0
Метки linux, pyqt5, python, python 3, windows

Как я уже писал тут
https://www.cyberforum.ru/pyth... 57171.html,
вся неправота употребления этого кода в главном окне на старте приложения
Python
1
2
3
4
screen = QDesktopWidget().availableGeometry()
self.setGeometry(
    screen.width()//4, screen.height()//4,
    screen.width()//2, screen.height()//2)
познаётся, когда сам обзаводишься многоэкранной системой.

Ведь...
Старый
Рейтинг: 1.38. Голосов: 8.
К вопросу о доступе из Python к LibreOffice.
Запись от iamvic размещена 18.12.2020 в 15:33 / К вопросу о ...
Показов 7296 Комментарии 0

В принципе, как получить доступ, хорошо известно - достаточно прописать путь в PATH
и добавить пару переменных окружения.

Засада кроется в другом. LibreOffice-ы парами не ходят. Установка 64-битного LibreOffice
полностью сносит ранее установленный 32-битный, а 32-битный в ответ...
Старый
Рейтинг: 1.00. Голосов: 1.
Иллюстрация к вопросу о доступе из Python к PostgreSQL.
Запись от iamvic размещена 15.12.2020 в 09:44 / К вопросу о ...
Показов 8879 Комментарии 12

Налепил некую болванку, в качестве иллюстрации
https://www.cyberforum.ru/blog... g6868.html
По крайней мере, всё, о чём говорилось, приобрело хоть какой-то
законченный вид.

pgsql_probe.py:
Python
1
2
3
4
5
6
7
#!/usr/bin/python3
# -*- coding: utf-8 -*-
 
import sys, os, platform
from PyQt5.QtWidgets import QAction, QApplication, QDesktopWidget
from PyQt5.QtWidgets import QMainWindow, QMessageBox
from PyQt5.QtSql import
...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о доступе из Python к PostgreSQL.
Запись от iamvic размещена 12.12.2020 в 15:58 / К вопросу о ...
Показов 4647 Комментарии 0

Ещё одна памятка на тему, навеянную обсуждением
https://www.cyberforum.ru/pyth... 42473.html.
Что делать, если надо обеспечить доступ к PostgreSQL из двух Python-ов разной разрядности,
установленных в одной системе (например, мой стенд https://www.cyberforum.ru/blog... g6863.html)?
Ведь каждому требуется своё...

На самом-то деле, Python-у от установленного в системе PostgreSQL...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу определения разрядности Python и Windows
Запись от iamvic размещена 09.12.2020 в 14:02 / К вопросу о ...
Показов 10665 Комментарии 2
Метки python, python 3, windows

Чтоб самому не забыть и не потерять, положу-ка это в блог.

В некоторых случаях определения разрядности Python недостаточно для принятия решения без выяснения
разрядности Windows, на которой он работает. 32-битный Python на 64-битной Windows - не редкость.
И вроде бы решения...
Старый
Не хватает время(
Запись от Вивид размещена 14.04.2020 в 10:24
Показов 1618 Комментарии 2

PYTHON
Требуется написать программу, определяющую наименьшее общее кратное (НОК) чисел a и b.
Вот моя программа:

a , b = map(int,input().split())
while a != 0 and b != 0:
if a > b:
k = a % b
else:
z = b % a
nod = k + z
nok = (a * b) // nod
print(nok)

Мне выводит 'лимит времени'

В чём ошибка???
Аватар для Вивид
Старый
Рейтинг: 3.00. Голосов: 2.
Помогите с кодом, пожалуйста
Запись от lolka12343 размещена 13.01.2020 в 20:34
Показов 1668 Комментарии 3
Метки python 3

Здравствуйте! Можете пожалуйста скинуть код или хотя бы объяснить как рассортировать в рандомном порядке введенные имя, фамилию и отчество.
Старый
Сложение чисел в шестнадцатеричной системе счисления.
Запись от m0nte-cr1st0 размещена 30.03.2019 в 17:16
Показов 36361 Комментарии 7
Метки python, python 3

Недавно поступил вопрос с просьбой написать код для записи в "Шестнадцатеричной системе счисления".

Написать программу сложения и умножения двух шестнадцатеричных чисел. При этом каждое число представляется как массив, элементы которого это цифры числа. Например, пользователь ввёл A2 и C4F. Сохранить их как [‘A’, ‘2’] и [‘C’, ‘4’, ‘F’] соответственно. Сумма чисел из примера: [‘C’, ‘F’, ‘1’].
Возьмём пример поинтереснее, чем в условии....
Аватар для m0nte-cr1st0
Старый
Следующая часть книги.
Запись от Фаер размещена 08.10.2013 в 23:36
Показов 809 Комментарии 0

Книгу я, в общем-то, продолжаю писать и делаю это так быстро, как только могу. Описал уже почти все виджеты tkinter'а и приёмы работы с ними. Скачать полу-книгу можно здесь. Подписывайтесь в Twitter'е, чтобы не пропустить следующую часть.
Аватар для Фаер
Новые блоги и статьи
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru