【高校情報Ⅰ】 プログラミング Python 入門 第4話 リスト・二次元リスト (情報1)
動画を見たら以下の問題が解けるようになります。
■■解説動画■■
■■文字おこし■■
Pythonのリストってなんだ?
[要素0,要素1,要素2・・・]
リストは複数のデータを格納できるデータ型のことなんだ
この前、変数について説明したときに文字や数字を入れる箱って説明したよね。
その箱に入れられるデータは、名前とか数字とか一種類だけだったよね
リストは、その箱を複数入れられるロッカーみたいなものなんだ。
この一つ一つの入れる箱のことを「要素」っていうんだ。
そのロッカーから特定のデータを取り出すときってどうすればいいの?
いい質問だね。
それぞれの箱の住所みたいなものがあるんだ。
それをインデックスという。
箱の一番目から インデックス番号0番が割り当てられているんだ。
箱は1つ、2つ と数えるけど、このインデックスというのは0番から始まるから
プログラムを組むときは注意が必要だ。
インデックス番号を求めたいときは、
欲しい要素の順番 マイナス1と考えるといいと思うよ。
実際にプログラムを書いていこう
前提として、1番目の箱にミライ、2番目の箱にがっきー、3番目の箱に山田という文字が入っているとしよう。
リストで書く時は こんな風に書くんだ。
[]角括弧の中に入れたい要素をカンマ区切りで入れるんだ。
文字の場合はダブルクォーテーションで囲むのは以前説明した通りだよ。
そしてそれを変数 name_list に入れてあげる
じゃあ、これを順番に取り出すプログラムを書いてみよう。
変数の後に角カッコを付けて その中に取り出したいインデックス番号を入れる
例えば ミライの要素を取り出したい場合は 0 を入れる
要素の中を変更することもできるよ。
例えば インデックス1番のがっきーを がきに変更しよう
変数名 角カッコの中に変更したいインデックス番号を指定して イコールで変更したい値を代入すれば値が変わる。
実行してみよう
がっきーが がき にかわったね。
要素が何個あるかを教えてくれるlenという関数があるんだ
長さlength(レングス)の略だね
lenの中にname_listの変数を入れてみよう
このlenは要素数の数値を返すからprintの中にいれてみて出力結果を確認しよう
ちゃんと3って表示されたね。
このリストは以前説明した繰り返しのfor文で併用されることがよくある。
リストの中にある要素数分for文をくるくる回すイメージなんだ。
これは、name_listの要素を一つ一つ取り出して nameという変数にいれているんだ。
for name in name_list:
print(name)
さらにlistは二次元であらわすことも可能なんだ
home_list = [[“一階台所”, ”一階リビング”], [“二階子供部屋”, ”二階物置”]]
print(home_list[0][0])
print(home_list[0][1])
print(home_list[1][0])
print(home_list[1][1])
復習問題
復習問題の答え
使用プログラム
# リスト定義
name_list = ["ミライ", "がっきー", "やまだ"]
name_list[1] = "がき"
# インデックス番号1(がっきー)を取り出す
print(name_list[1])
# 要素数を調べる
print(len(name_list))
# for文で要素の中身を取り出す
for name in name_list:
print(name)
# 二次元リスト
home_list = [["一階台所", "一階リビング"], ["二階子供部屋", "二階物置"]]
print(home_list[0][0])
print(home_list[0][1])
print(home_list[1][0])
print(home_list[1][1])
# 1番
yasai_list = ["キャベツ", "レタス", "トマト"]
print(yasai_list[2])
# 2番
yasai_list[1] = "キュウリ"
print(yasai_list[1])
# 3番
for yasai in yasai_list:
print(yasai)
# 二次元リスト
food_list = [["ひらめ", "ぶり"], ["牛", "豚"]]
# 牛
print(home_list[1][0])