PythonGUIをやる時もやっぱりHello Worldから!
Pythonは教育用言語としてアメリカで最もよく採用されている軽量プログラミング言語(LL:Lightweight Languages)です。スクリプト言語でありながら、MySQLなどの標準的なオープンソースのデータベースへのアクセスも可能ですしHTMLとの相性もいいので、Webベースのアプリケーションを作るときには定番の言語となっています。また、Pythonは教育用言語としてだけでなく、Googleが各種サービスの運用管理にPythonを全面的に採用していることからもその実用性は証明されています。
そして、GUIでもいくつものプラットフォームが用意されており、直感的なプログラミングを可能にしています。
Pythonにも使いやすいGUIベースのプラットフォームが数種類出ています。このブログの別の記事「Python、GUIライブラリの紹介」でもすでに幾つか紹介していますので、特徴やインストール方法などはそちらをぜひ参照してください。
ここでは、そこで紹介されている8つのGUIプラットフォームで「Hello World」を表示するまでの情報をご紹介します。もともとのPythonでは共通の書き方も、各GUIプラットフォームで書くと微妙な差が出てきて面白いですね!
同じPythonでもGUIプラットフォームで随分違うことを実感してみよう
■kivyでHello Worldを表示してみる
kivyでは、Kv言語というCSSライクな言語でPythonを動かすことができます。
import kivy
kivy.require(‘1.9.0’)
from kivy.app import App
from kivy.uix.label import Label
class HelloApp(App): #クラスを宣言します
def build(self):
return Label()
if __name__ == ‘__main__’:
HelloApp().run() #実行します
参考 Kivyの環境構築からHello Worldと表示するまで
■wxPythonでHello Worldを表示してみる
#!/usr/bin/env python
import wx
app = wx.App(False) # 新しくアプリを作ります。ウインドウにエラーを表示させないでおきます
frame = wx.Frame(None, wx.ID_ANY, “Hello World”) # トップレベルにウインドウを出す設定です。フレームの部分にHello Worldが出てきます。
frame.Show(True) # フレームを表示します
app.MainLoop()
いかがでしょう。
もともとは同じPythonなのに、GUIになると書き方に独特の特徴が出てくることが分かります。
さあ!自分の好みに合ったPython GUIを見つけよう
今後PythonをGUIで学びたいという人は、それぞれのプラットフォームでどのような特徴、クセがあるかをつかんだ上で、自分の好みに合ったGUIを選択するのが良いでしょう。
以下、その他のPython GUIプラットフォームでHello Worldを出してみるときのソースコード付きの情報をまとめておきますので、ぜひ参照してみてください!日本語紹介記事のあるものは日本語を優先しましたが、Hello Worldは短いスクリプトなので、英語サイトでも大丈夫です!
■PySide/PyQt
Iintro-to-pysidepyqt-basic-widgets-and-hello-world
■PyGTK
PyGTK 2.0 Tutorial
■PyGObject
PyGObject (PyGI)
■Flex
Apache FlexでHelloWorldアプリを作り、配布できるようにパッケージングするところまで(AIR for Desktop)
■tkinter
On Python
株式会社キャパでは、アプリの企画・開発についてご相談を承っています。
アプリを作りたいので、具体的な提案が欲しい。頭の中にあるアイデアを本当に実現できるのか知りたい。予算内に収まるのか?
などのお客様のご相談に、親身に応じます。
アプリ開発:実績のご紹介