Первая программа на PyQt6
Первая программа на PyQt6
Соберём окно-конвертер температуры на PyQt6 (аналогично для PySide6: замените PyQt6 → PySide6 в импортах).
Сравнение GUI-стеков: PyQt, PySide и Flet.
Установка
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install PyQt6
Код
converter.py:
import sys
from PyQt6.QtWidgets import (
QApplication,
QLabel,
QLineEdit,
QMainWindow,
QMessageBox,
QPushButton,
QVBoxLayout,
QWidget,
)
class MainWindow(QMainWindow):
def __init__(self) -> None:
super().__init__()
self.setWindowTitle("Конвертер °C → °F")
self.input = QLineEdit()
self.input.setPlaceholderText("Температура в °C")
self.result = QLabel("—")
btn = QPushButton("Перевести")
btn.clicked.connect(self.convert)
layout = QVBoxLayout()
layout.addWidget(self.input)
layout.addWidget(btn)
layout.addWidget(self.result)
container = QWidget()
container.setLayout(layout)
self.setCentralWidget(container)
def convert(self) -> None:
text = self.input.text().strip().replace(",", ".")
try:
c = float(text)
except ValueError:
QMessageBox.warning(self, "Ошибка", "Введите число")
return
f = c * 9 / 5 + 32
self.result.setText(f"{c:.1f} °C = {f:.1f} °F")
def main() -> None:
app = QApplication(sys.argv)
window = MainWindow()
window.resize(320, 160)
window.show()
sys.exit(app.exec())
if __name__ == "__main__":
main()
Запуск:
python converter.py
Сигналы и слоты
В Qt кнопка испускает сигнал clicked; метод convert — слот:
btn.clicked.connect(self.convert)
Это событийная модель Qt (сравните с command= в Tkinter).
Designer (опционально)
Qt Designer рисует .ui XML; загрузка:
from PyQt6 import uic
self.ui = uic.loadUi("mainwindow.ui", self)
Для крупных форм удобнее визуальный редактор, логику оставляют в Python.
Дальше
QTableWidget,QThreadдля фоновых задач;- упаковка: PyInstaller, briefcase;
- лицензия PyQt в коммерческих продуктах — см. сайт Riverbank.
См. также
Другие статьи этого же раздела в боковом меню (как на странице «О разделе»). Python как язык общего назначения - философия, ключевые свойства и области применения в современной разработке. Фундамент для начинающего программиста - что повторить, как работать, чего ожидать. Принципы, которые делают код понятным, поддерживаемым и расширяемым. Примеры реализации типовых приложений. Каждый пример сопровождается разбором ключевых концепций языка. Наверняка каждый новичок, решивший перейти в что-то стандартное в Python, открывает себе этот файл. Как устроен Python, что входит в комплект и какие есть реализации. Структурные каркасы для построения приложений, как они устроены. Фреймворки, библиотеки, инструменты сборки, среды выполнения, системы тестирования и специализированные платформы, объединённые общей философией ясности, простоты и гибкости. Что такое модули, как устроены механизмы импорта и загрузки. Управление изолированной средой и зависимостями проекта. История Python - ключевые этапы развития языка, сообщества и экосистемы инструментов. Философия Python не зафиксирована в официальных стандартах, но она глубоко интегрирована в язык, его стандартную библиотеку, документацию и культуру разработчиков.Python - язык общего назначения
Что требуется знать перед началом изучения языка программирования Python
Рекомендации по разработке на Python
Простые приложения на Python
Встроенный модуль builtins и типизация в Python
Архитектура интерпретатора Python
Фреймворки и библиотеки Python
Экосистема Python-приложений
Модули в Python
Виртуальные окружения и управление зависимостями
История языка Python
Философия Python - Zen of Python