電卓プログラムを作ろう4~ボタンを16個配置するには?~
2024年12月6日(金)は、9割ほどの出席でした。
- 18時00分~18時30分 タイピング練習
- 18時30分~19時00分 Pythonドリル
- 19時00分~19時50分 電卓を例にプログラムの要素を学習
- 19時50分~20時00分 あとかたづけ
Contents
タイピング練習
タイピングの練習は、「寿司打」です。
スコア10,000を超えそうで超えないのがもどかしい。
あと少しのメンバーが何人か。それでも超えられないのは、このあたりに壁があるのでしょう。
日々正しく練習するのみです。
Pythonドリル~コーディングの基礎力をつける~
前回に引き続き「Pythonドリル」です。自分でコーディングする力をつけます。
前回いなかったメンバーもいるので、前回出題分と重複しながら出題します。本を見てもよし、Web検索してもよし、生成AIに聞いてもよし。
もちろん、何も見ずにコーディングができればベストです。しかし、ベストな解がコーディングできるとは限りません。
自分なりにコーディングできたからOKではなくて、他のメンバーのコードを見てほしいと思います。ほかの人は、どのように考えてコーディングしているのかを、ぜひなぞってほしいのです。
それが「クラブ」でプログラミングする大きなメリットだと思うのです。単にプログラムを勉強するだけなら、昨今Youtubeでも見ながら勉強したほうが速く上達するかもしれません。ただそれだけだと、独善的なコードになりかねません。
「速く行きたいなら一人で行け、遠くに行きたいならみんなで行け」
より高いところを目指して、メンバー同士で切磋琢磨してほしいのです。
電卓らしくプログラムを作ろう~GUIでボタン編~
前回ボタンを一つ配置したので、今回は復習しながら16個のボタンを配置します。
ボタンを配置する仕様を調べる
ボタンを画面に配置するのは、前回できました。今回は、ボタンの大きさを変えたり、表示位置を変えたりします。下は、一例です。
import tkinter
# メインウィンドウを生成する
root = tkinter.Tk()
# ウィンドウのタイトルを設定する
#root.title("Tkinter サンプルプログラム)
# ウィンドウのサイズを設定する
root.geometry("600x800")
button = tkinter.Button(\
root, \
text="ボタンのサンプル",\
width=20,\
height=10)
button.pack(padx=220, pady=200)
#button.pack()
# tkinterのイベントを処理する
root.mainloop()
それと、メンバーの生成AIの使い方を軌道修正します。電卓プログラムの完成形を求めるのではなくて、「tkinterのbuttonの使い方」を教えてもらいましょう。
適切にプロンプトを入力すると、buttonのパラメーター一覧が出てきます。詳細な説明をしてくれます。この説明を読みながら進めていきましょう。
プログラムを自ら作ろう、というのなら、こういう手順を踏んだほうが速く上達します。
生成AIの使い方に関しては、わたし自身も試行錯誤中です。うまく使って、うまく共存していきたいものです。
ボタンを16個並べよう
ボタンを16個並べるお題は、ほとんどのメンバーが途中で時間切れでした。次回もこの課題に取り組みます。
下の写真は、再掲です。実は、ボタンを16個並べるプログラムの考え方を示しています。
生成AIに答えのコードを書いてもらったメンバーは、この写真に書いたような記述を探せば答えにたどり着けるはずです。このように、当たりをつけてからサンプルコードを書かせましょう。
実は、一人だけボタンを並べ終えたメンバーがいます。が、上の考え方とは違う方法でした。たしかに、そういう方法もあるなあという、余りを使った方法でした。
ただ、ボタンを配置するのはFor文の入れ子のほうが、後々の変更に強いコードになります。眼の前の課題だけに答えるならどっちでもいいけれど、実用的なことを考えるとFor文で書きましょう。
このあたりの機微を伝えるのは、なかなか骨が折れます。がんばります。