Pythonのtkinterでラジオボタンを作る

tkinterを導入

Pytyonでtkinterを使ってラジオボタンを作っていきます。

Pythonではとっても簡単にGUIを使ったプログラミングが出来ます。

GUIは見た目が変化したりするのでプログラミングをした実感がわきます。

それがtkinterです。

初学者の方がPythonを学ぶには最適です。

Pytyonに元からライブラリで入っていますのでpipなどで導入することなく

扱えます。

ラジオボタンを作る

※上記のソースコードはワードプレスのUrvanov Syntax Highlighterというプラグインを使って表示しています。表の上の部分に矢印を持っていけば、すぐにソースコードがコピー出来ます。

とにかく説明はいらないという方はコピペしてラジオボタンがどんなものか試してみてみて下さい。

ラジオボタン ソースコードの説明

表の行番号で説明していきます。

1行目 tkinterを導入してasでtkとtkinterを短縮しています。

2行目 baseという変数にtkをセットします。

3行目 ラジオボタンをチェックが入った状態にする。

4行目 チェックを入れるところは1番にしておく。

5行目 ラジオボタンで選択される表示をつくる。

6行目 テキストを配置する。

7~9行目 ラジオボタンを配置する。

11~14行目 ラジオボタンが選択された時に実行される処理をつくる。

16行目 「選択」と表示されるボタンを作って、ボタンが押されると結果が表示

されます。

17行目 tkinterを表示させ続けるようにループします。

Pytyon tkinter Radiobutton

Pythonでラジオボタンを作るのはとっても簡単です。

またボタンの位置を変えるにはplace(x=20,y=40)のxやyの数値を変えてみて

下さい。

最初にボタンの位置が入っていない方がいい場合は3行目と4行目をなくせばいい

と思います。

色々とソースコードをいじって変えてみると理解も深まると思いますよ。

よって楽しんでプログラミングしてもらえればと思います。

pythonista3でFlaskを導入してwebにアップする方法

pythonのフレームワーク

pythonで学習していると色々と便利なライブラリやフレームワークがある事に気が付きます。もしくはそれを目当てで勉強したり、利用されている方も多いでしょう。

pythonのフレームワークにも種類があります。bottole,Flask,Djangoが有名なところでしょうか?

その中でもflaskは軽量で扱いやすくipadのアプリでもあるpythonista3で使うには良いフレームワークです。

しかしPythonista3は有料のアプリです。有料だけあって色々な機能が詰まっていてとてもおすすめです。(理由はネットで色々と出てますの割愛します)

アプリを導入して学習欲が高まっていると思います。

せっかくPythonista3を導入したのですからとにかくさわってみましょう。

flaskは簡単に動かせますので、頑張って試してみて下さい。

Pythonista3にflaskを導入

早速Pythonista3にflaskを導入していきます。

ファイルを作成していきます。

ファイル名は「frafra.py」としています。

「flask.py」としてわかりやすくしたかったのですが、Pythonista3ではこのよ

うなファイル名にしてしまうと警告が出てくるのでやめておきました。

その為なんとなくfalskとわかるような名前にしました。

flaskをインポートして、

routeでテンプレートを呼び出すソースコードです。

呼び出すテンプレートを用意します。

今回呼び出すテンプレートは、’index_1.html’です。

HTMLで書かれたテンプレートです。

Pythonista3でファイルを作れば、最初から上記のような感じで用意されます。

<h1></h1>のところをHello mogeと変更しています。たいした意味はありませ

んのであしからず。

HTMLのファイルを作る時の注意点としては、「templates」のフォルダの中に

必ず作る様にして下さい。

画像の左上にあるようにtemplatesフォルダの中にHTMLファイルを作成してく

ださい。

実行するfrafra.pyとHTMLは同じディレクトリになるようにします。案外ここで

別々の場所に作ってしまいがちです。

これでコードを実行した場合はwebに表示されずエラーがでる結果となります。

Flaskをwebにアップする

ソースコードとtemplatesを用意できたら、いよいよwebにアップしていきま

す。

とは言ってもなにも難しいところはありません。

ソースコード「frafra.py」の画面の右上にある▷をタップします。

タップするとConsoleの画面に切り替わります。

ここでは赤文字で

http://127.0.0.1:5000/

と表記されているところがタップできるようになっています。

ここをタップするとローカルホストに接続されます。

するとConsoleのタイトルの横にwebでますのですそこをタップします。

エラーなど問題なく成功すればConsoleのタイトルの横にTitleとでます。

そこを開けば、指定したテンプレートがよび出されています。

<h1>Hello moge</h1>で変更した所が画面に表示されています。これで

templates(index_1.html)が呼び出されたのがわかります。

flaskを導入しアップする事に成功しました。

これで@app routeでGetやPostを使って、templateをうまくからませれば色ん

な事ができそうです。

詰まったところ

私も経験不足なもので今回のような簡単なものでも行き詰ったところがあったり

します。Flaskをインポートするまでは問題はなかったものの、

index_1.htmlのテンプレートを間違えてFile Templateでファイルを作成してし

まったり、frafra.pyとindex_1.htmlを全然違う場所で保管してしまってエラー

を連発してしまったりしています。

原因が分かればたいした事はなかったのですが、わかるまでは色々とネットや

書籍などで調べたり、ソースコードの間違えがないか、穴の開くぐらいまで

見て見たり。色々と詰まってしまいました。

私のように経験の浅い方や初学者の方も同じような間違いを起こすと思います。

その時の問題解決になればいいなと思います。

もちろん私自身がこの問題を忘れないようにしておきます。