今日届いた荷物は何個ですか
大阪の物流会社の配送センターでは、毎朝たくさんの荷物が届きます。
伝票番号を一つずつ別の変数に入れると、何百個も変数が必要です。
プログラムでは、番号をまとめて一つの入れ物に入れます。このレッスンでは、その入れ物の使い方を学びます。
このレッスンのゴール
メモ
リストに項目を入れて、書きかえることができる。
キーワード
| ことば | いみ | れい |
|---|---|---|
| リスト | 値を順番に並べて持つ入れ物です。 | ["OS-1201", "OS-1202"] |
| 要素 | リストに入っている一つ一つの値です。 | |
| インデックス | 要素の場所を表す番号です。0から数えます。 | parcels[0] |
| len | 要素の数を返す関数です。 | len(parcels) |
| append | 最後に要素を追加する命令です。 | parcels.append("OS-1205") |
学生が入力するセルは、このプレビューでは空白です。
名前は英語、表示は日本語
ヒント
コードの中の変数名や関数名は、parcels のように英語で書きます。日本の開発チームでも、これがふつうです。コメントと、画面に出す文字は日本語で書きます。
リストはインデックスで読む
リストは [ と ] でかこみ、要素をコンマで区切ります。
要素を読むときは、parcels[0] のようにインデックスを書きます。インデックスは1ではなく、0から始まります。
同じ書き方で、要素を書きかえることもできます。
やってみよう: 伝票番号を読む
# 今日、大阪の配送センターに届いた荷物の伝票番号です。届いた順に並んでいます。
parcels = ["OS-1201", "OS-1202", "OS-1203", "OS-1204"]
print("最初の荷物:", parcels[0])
print("3番目の荷物:", parcels[2])
print("荷物の数:", len(parcels))
# 2番目の伝票番号を、書きまちがえていました。正しい番号に直します。
parcels[1] = "OS-1210"
print("直したあと:", parcels)
# parcels[2] を変えて、4番目の荷物を表示してみましょう。
追加、削除、くり返し
append は、リストの最後に要素を足します。remove は、指定した値の要素を外します。pop() は、最後の要素を取り出して返します。
for を使うと、要素を一つずつ順番に処理できます。現場では、注文や荷物の一覧をこの形でよく扱います。
やってみよう: トラックの荷物
# トラック1台に積む荷物のリストです。
truck = ["冷蔵庫", "洗濯機", "電子レンジ"]
truck.append("エアコン") # 新しい荷物は、最後に入ります
print("append のあと:", truck)
truck.remove("洗濯機") # 配達が取り消しになった荷物を外します
print("remove のあと:", truck)
last = truck.pop() # pop() は、最後の要素を取り出します
print("pop で出した荷物:", last)
print("残り:", truck)
# for で、一つずつ確認します。
for item in truck:
print("積みこみ確認:", item)
# for の前に truck.append("テレビ") を足して、もう一度実行しましょう。
例: 操作ごとのリストの変化
| 操作 | そのあとのリスト | 要素の数 |
|---|---|---|
| はじめ | 冷蔵庫, 洗濯機, 電子レンジ | 3 |
| append("エアコン") | 冷蔵庫, 洗濯機, 電子レンジ, エアコン | 4 |
| remove("洗濯機") | 冷蔵庫, 電子レンジ, エアコン | 3 |
| pop() | 冷蔵庫, 電子レンジ | 2 |
学生が入力するセルは、このプレビューでは空白です。
よくある間違い
注意
「3番目の要素は parcels[3]」と考える人が多くいます。インデックスは0から数えるので、3番目は parcels[2] です。人が数える番号から1を引くと、インデックスになります。