表を二次元リストで扱おう
行と列を使い、表のデータをPythonで読みます。
必須
これまでの内容から、3問を復習しよう
前回までの内容から、毎回ランダムに3問が選ばれます。同じ復習用ファイルの中身を書き換え、1問ずつ予想・実行します。
lesson11_review.pyレッスン番号と使う場面が分かる名前にして、あとで探しやすくします。
- VS Code上部の「ファイル」をクリック
- 「新しいテキスト ファイル」をクリック
- Ctrl+S(Macは⌘+S)を押す
lesson11_review.pyと入力して「保存」を押す
ここを確認:画面上のタブ、または左側のファイル一覧にlesson11_review.pyと表示されたら準備完了です。
表示
print(3 + 4)表示される数は?
変数
x = 5
x = x + 2
print(x)最後のxは?
条件分岐
n = 8
if n > 5:
print("大")表示される文字は?
実際に自分のパソコンで行ってから、チェックを入れてください。
表の行・列と二次元リストの添字を結びつけ、値を取り出せる。
- ✓二重の角かっこの意味が分かる
- ✓行と列を0から数えられる
- ✓二重ループを順番に追える
二次元リストって何?
- 座席表の例で行と列を知る
- 二重の角かっこから値を取り出す
- 二重ループで表全体を見る
- 行ごとの合計を求める
- 必須問題で自分で確かめる
教室の座席表は、横の「行」と縦の「列」で場所を表せます。Pythonでは、リストの中にリストを入れると表を作れます。これを二次元リストと呼びます。
scores = [
[70, 80, 90],
[60, 75, 85]
]この講座では:外側が行、内側がその行の値を順番に選ぶと読めれば十分です。Pythonでは行と列を0から数えます。
表から値を取り出そう
lesson11_step02.pyレッスン番号と使う場面が分かる名前にして、あとで探しやすくします。
- VS Code上部の「ファイル」をクリック
- 「新しいテキスト ファイル」をクリック
- Ctrl+S(Macは⌘+S)を押す
lesson11_step02.pyと入力して「保存」を押す
ここを確認:画面上のタブ、または左側のファイル一覧にlesson11_step02.pyと表示されたら準備完了です。
lesson11_step02.pyへ、見本コードを一文字ずつ入力する- まだ実行せず、結果を予想する
- 保存して、VS Code右上の▶を押す
- 下のターミナルと教材の結果を比べる
scores = [
[70, 80, 90],
[60, 75, 85]
]
print(scores[0][1])
print(scores[1][2])2行目に表示される数は?
先に自分のパソコンで実行しましょう。画面に出た結果を見てから、下のボタンを押します。
二重ループで表全体を見よう
外側のforが行を選び、内側のforがその行の値を一つずつ選びます。内側が終わると、次の行へ進みます。
scores = [[70, 80, 90], [60, 75, 85]]
for row in scores:
for score in row:
print(score)全部で何個の数が表示される?
ここまで分かったか確認しよう
lesson11_step04.pyこの回の必須問題で使うファイルです。問題ごとに中身を書き換えます。
- VS Code上部の「ファイル」をクリック
- 「新しいテキスト ファイル」をクリック
- Ctrl+S(Macは⌘+S)を押す
lesson11_step04.pyと入力して「保存」を押す
ここを確認:画面上のタブ、または左側のファイル一覧にlesson11_step04.pyと表示されたら準備完了です。
lesson11_step04.pyを作る- 問題のコードを入力して保存・実行する
- 同じファイルを書き換えて次の問題へ進む
値を一つ取り出す
A=[[1,2,3],[4,5,6]]から5を表示します。
1行目の合計
scoresの1行目70、80、90の合計を表示します。
表全体の合計
二重ループを使い、6個すべての合計を求めます。
実際に自分のパソコンで行ってから、チェックを入れてください。
共通テスト型の問題を3問解こう
Pythonで動かした経験を思い出し、コードを上から読みます。まず自分で考え、困ったときだけボタンを開きましょう。
行と列から値を読む
A = [[10, 20, 30],
[40, 50, 60]]
表示する(A[2][3])添字が1から始まる問題では何を表示する?
二重ループの回数
A = [[1, 2, 3], [4, 5, 6]]
各行について:
各値を表示する表示は全部で何回?
行ごとの合計
A = [[2, 4], [6, 8]]
1行目の値をすべて足す合計はいくつ?
できるだけ解いてみよう
全部終わらなくても大丈夫です。上から順番に挑戦しましょう。
- 1. A=[[1,2],[3,4]]から4を表示
- 2. Aの1行目を表示
- 3. 3行2列の表を作る
- 4. 行の数を求める
- 5. 列の数を求める
- 6. 2行目の合計
- 7. すべての値を表示
- 8. 5より大きい値だけ表示
- 9. 表全体の個数
- 10. 座席表を文字で作る