入力の部品
授業の後に 15 分。要点を読み、5 問で確かめ、一つ書く。最後に自分の探究へつなぐ
15分 | ひとりで、端末で授業で確かめた答えと比べる
- 入力の部品は 4 つ覚えれば足りる。
st.slider(範囲の中の数)、st.selectbox(決まった選択肢から 1 つ)、st.text_input(自由な文字)、st.checkbox(はい か いいえ) =の左の名前に、相手が入れた値が入る。そこから先はふつうの Python の変数として使える- 部品を選ぶのは、入ってくる値の幅を先に狭めておくための判断であって、見た目の話ではない。選ばせられるものは書かせない。47 都道府県のように数が多くても、選ばせたほうが止まらない
- 入力・処理・出力が 1 つの画面に載る。真ん中の処理は、これまで書いてきた Python と何も変わらない。上と下だけが Streamlit
- 相手が値を変えるたび、プログラムは上から全部やり直される。だから結果がいつも新しい値になる
- 自分のアプリの入力は、まず 1 つに絞る。いちばん結果を動かすものを選ぶ。返すものも 1 つに絞る
自分のアプリについて、入れてもらうもの 1 つと、返すもの 1 つを書く。入れてもらうものには、どの部品で入れてもらうかと、数なら範囲、選択肢なら中身まで入れる。返すものには、単位まで入れる。
答えの例を見る
例: 入れてもらうもの: 行く時刻を st.slider で 11 から 14 まで、雨が降っているかを st.checkbox で / 返すもの: 予想される待ち時間(分)
探究で作った予測の式や分類の基準は、たいてい「この条件ならこうなる」という形をしている。その条件が、そのまま入れてもらうものになる。ここで大事なのは、相手に入れてもらう値の幅を、自分で決められること。範囲を 11 から 14 に絞れば、それより外の数は入ってこない。自分の調べた範囲の外で使われて、おかしな答えが返ることを防げる。言えないことを言わせない仕組みを、部品の選び方で作れる。
- 自分の探究の式や基準は、どの条件を変えると結果が変わるか。その条件はいくつあるか
- その条件に、自分が調べた範囲はどこまでか。範囲の外を入れさせない部品はどれか
ここに書いたメモは 探究ノート に集まる。総合的な探究の時間のテーマ決めや、調べ方を考えるときに開く。まだテーマが決まっていなくても書ける。いま気になっていることを一つ思い浮かべて、そこに当てはめてみる
次回は「表の読み込み」。今回入れてもらったのは、数が 1 つ、文字が 1 つだった。けれど自分で数えた記録は、何十行もある表のことが多い。1 つずつ入れてもらうわけにはいかないので、CSV(=値をコンマで区切って並べた、いちばん素朴な表の形)をまるごと受け取って中身を見せる形にする。今回決めた入力と出力は、そのまま次回も使う。
このページに書いたものは、いま使っているこの端末の、このブラウザの中にだけ残ります。サーバには送られません。次に同じ端末で開けば、書いたものはそのまま出ます。
別の端末で開くと見えません。学校の端末と家の端末は別ものとして扱われます。ブラウザの履歴やサイトデータを消したときも、一緒に消えます。残しておきたいものは、下の「書いたものをコピー」で自分のノートや提出先に貼ってください。