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

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

Так получилось, что тема Переименовать кнопку "setDetailedText", которую недавно поднял telnofff, как-то незаметно превратилась в Памятку. Насколько я понял, настоящей-то причиной появления этой темы было не желание заменить стандартный текст на этой злосчастной кнопке на какой свой, а то, что этот текст выдавался...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о модальности QDialog.
Запись от iamvic размещена 30.04.2022 в 13:05 / К вопросу о ...
Показов 1439 Комментарии 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 / К вопросу о ...
Показов 1534 Комментарии 0

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

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

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

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

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

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

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

Представим, что выбрав строку...
Старый
Рейтинг: 1.00. Голосов: 1.
К вопросу о применении QtCore.QMetaObject. connectSlotsByName().
Запись от iamvic размещена 07.01.2022 в 19:04 / К вопросу о ...
Показов 2702 Комментарии 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 / К вопросу о ...
Показов 1682 Комментарии 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 / К вопросу о ...
Показов 1038 Комментарии 0

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Формула...
Аватар для Fudthhh
Модератор
Старый
Размышления к определению экрана во время старта приложения под Linux.
Запись от iamvic размещена 14.01.2021 в 15:16 / К вопросу о ...
Показов 3746 Комментарии 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 / К вопросу о ...
Показов 4230 Комментарии 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 / К вопросу о ...
Показов 7164 Комментарии 0

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

Засада кроется в другом. LibreOffice-ы парами не ходят. Установка 64-битного LibreOffice
полностью сносит ранее установленный 32-битный, а 32-битный в ответ...
Старый
Рейтинг: 1.00. Голосов: 1.
Иллюстрация к вопросу о доступе из Python к PostgreSQL.
Запись от iamvic размещена 15.12.2020 в 09:44 / К вопросу о ...
Показов 8794 Комментарии 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 / К вопросу о ...
Показов 4529 Комментарии 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 / К вопросу о ...
Показов 10547 Комментарии 2
Метки python, python 3, windows

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

В некоторых случаях определения разрядности Python недостаточно для принятия решения без выяснения
разрядности Windows, на которой он работает. 32-битный Python на 64-битной Windows - не редкость.
И вроде бы решения...
Старый
Не хватает время(
Запись от Вивид размещена 14.04.2020 в 10:24
Показов 1568 Комментарии 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
Показов 1624 Комментарии 3
Метки python 3

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

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

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

Книгу я, в общем-то, продолжаю писать и делаю это так быстро, как только могу. Описал уже почти все виджеты tkinter'а и приёмы работы с ними. Скачать полу-книгу можно здесь. Подписывайтесь в Twitter'е, чтобы не пропустить следующую часть.
Аватар для Фаер
Новые блоги и статьи
Поиск всех путей на ориентированном графе. Linux
dcc0 02.07.2026
Переработка старого кода из моей статьи. Через несколько переработок от PHP кода к C89 (надеюсь, 89). Но довольно запутанно получилось. Код для Linux. Но если убрать time и то, что с ним. . .
Сам себя обучал rest api
anaschu 02.07.2026
Педагогический лайфхак: Почему чистый REST API для ученика намного круче, чем готовые библиотеки Когда мы отказались от капризного JAR-файла AnyLogic и переписали код на стандартный HttpClient,. . .
rest api anylogic - выполнение модели на своём русском сайте
anaschu 02.07.2026
Как подружиться с AnyLogic Cloud API, победить провайдеров и развернуться Java-бэкенд в Docker на бесплатном хостинге: Двухдневный лог борьбы Всем привет! Хочу поделиться свежим (и довольно. . .
Где деньги лежат
kumehtar 02.07.2026
Это - японская подводная лодка I-52 (тип C2, кодовое имя Momi) вышла из Японии в марте 1944 года с миссией в оккупированную немцами Францию (Лорьян). Это была одна из «Янаги»-миссий по обмену. . .
Krabik для WoW 3.3.5a, многоязычный
AmbA 02.07.2026
Допилил бота, думаю что окончательно. Изменения: - добавлена многоязычность - добавлено снятие скриншотов - добавлено поддержание бафов хождения по воде (для жреца, дк и шамана) - и так, по. . .
Алиса нашла кучу ошибок компиляции и запуска в проекте, который без проблем компилировался и запускался)))
anaschu 30.06.2026
Я пока посмеюся, но завтра проверю. А вообще интерсно. Дал алисе файл, в котором точно нет ошибок компиляции и запуска, и попросил их найти. Нашла кучу))) Критические ошибки, мешающие компиляции и. . .
сукцессия 16. Общий обзор, в основном что бы другие ии поняли
anaschu 29.06.2026
# Передаточный документ: модель микоризной сукцессии (для нового чата) Этот документ предназначен для того, чтобы новый чат Claude мог продолжить работу без необходимости заново разбираться в. . .
сукцессия 15 неявная схема
anaschu 29.06.2026
Алиса Калибровка параметров симбиотической модели: технический обзор Содержание: Введение Постановка проблемы Технические аспекты реализации Процесс внедрения изменений
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru