反面教師あり学習

*/

(旧)反面教師あり学習

Negative Supervised Learning

QtPyでウインドウを表示する最小のコード

概要

QtPyというPyQtやPySideを抽象化したパッケージを使ってGUIを表示する最小のコード

(追記 2021/5/25)続編:QtPyでGUIアプリを作るときにレイアウト構築を楽にする関数 | 反面教師あり学習

パッケージについて

Python向けの科学計算環境のひとつであるSpyder IDEの開発チームによって開発されたQt系のパッケージ(PyQt5, PyQt4, PySide etc.)を抽象化するパッケージ. かなり画期的だと思うけどQtPyについて言及してる日本語の記事はほとんど無いみたい.

github.com

インストールはpipかcondaでできる.

pip install qtpy

PySide6は現時点ではまだ対応してないみたいだけどPR立ってたのでそのうち使えるようになりそう.

www.qt.io

github.com

コード

# -*- coding: utf-8 -*-
import sys

from qtpy.QtWidgets import (
    QMainWindow, QApplication, QLabel, QWidget, QVBoxLayout
)
from qtpy.QtCore import QObject, Qt


class MainWindow(QMainWindow):
    def __init__(self, **kwargs):
        super(MainWindow, self).__init__(**kwargs)

        self.main_widget = QWidget(self)

        layout = QVBoxLayout()
        layout.addWidget(QLabel('Hello, World!'))

        self.main_widget.setLayout(layout)
        self.setCentralWidget(self.main_widget)
        self.resize(640, 480)


def main():
    app = QApplication(sys.argv)

    view = MainWindow()

    view.show()
    sys.exit(app.exec_())


if __name__ == '__main__':
    main()

実行結果:

f:id:eqseqs:20210119194952p:plain

おわり