Qt for Python (PySide6) は、Qt 6 の Python バインディングで、Qt 6と同じく、LGPLv3 / GPLv3 と Qt commercial license(商用ライセンス)が適用されています。
Qt には、GUI を構成するためのモジュールだけでなく、GUI と併せて利用すると便利なモジュールも数多く用意されています [1]。SQL データベースを扱うモジュール QtSql もその一つです。
前回に続いて、今回も QtSql モジュールを利用した GUI サンプルを紹介します。
本ブログ記事では下記の OS 環境で動作確認をしています。
Fedora 34 (Workstation Edition Prerelease) | x86_64 | |
- python3-3.9.2-1 | ||
- venv/pip: PySide6 (6.0.2) |
郵便番号検索サンプル
QtSql モジュールの使い方は、参考サイト [2] で紹介されているサンプルを参考にさせていただきました。
郵便番号のデータベースは、日本郵政の郵便番号の CSV 形式のデータベース [3] の文字コードを Windows の cp932 から UTF-8 へ変換したファイルを読み込んだ SQLite のデータベースファイル(下記 postal.sqlite)を使用します。
- postal.sqlite [6,528KB]
以下に郵便番号を検索するサンプルを示しました。
qt_database_search.py
実行例を以下に示しました。サンプルを起動後、最初に 選択 ボタンをクリックして postal.sqlite を選んで読み込みます。
qt_database_search.py の実行例
あとは「都道府県」、「市区町村」、「住 所」のコンボボックスから探したい住所を選んで、右端のラベルに、選択した住所の郵便番号を表示するという単純なサンプルです。
QtSql モジュールの使い方は、あらためてまとめる予定です。
参考サイト
- Qt Modules — Qt for Python
- Handling SQL Databases With PyQt: The Basics – Real Python
- 郵便番号データダウンロード - 日本郵便
にほんブログ村
0 件のコメント:
コメントを投稿