Pythonプログラミング初心者に向けて、リストから要素を取り出す方法について解説します。
前回、リスト型についての勉強をしました!
今回もリストについて勉強をしていくんですか?
今回はリスト型(list型)の変数に格納した要素を取り出す方法を学んでいきます!
これから先、リストを使ったプログラムはたくさん出てくるから自在に操作できるようになっておいてほしいです!
リストに格納した値を取り出し、条件に合わせた処理をするといったプログラムは現場でもとてもよく使われるのでこの機会にしっかりマスターしましょう!
リストの値を取り出すにあたり、まずはインデックス番号について学んでいきましょう。
リストのインデックス番号
リスト(list型)に格納されている要素には番号が振られています。
リストの要素には、先頭の要素から「0,1,2,3,・・・・」というように番号が割り振られています。
このようなリストの要素に振られている番号をインデックス番号と呼びます。
以下のプログラムを見てみましょう!
#リスト型の変数lstを定義
lst=["ネコ", "ココア", "アザラシ"]
#リスト型変数lstを出力
print(lst)
# 実行結果
# ['ネコ', 'ココア', 'アザラシ']
このプログラムでは変数名lstのリストを作成しています。
要素としては先頭から、「"ネコ" , "ココア" , "アザラシ"」の順に格納されています。
格納された要素とインデックス番号の関係は以下の図のようになります。
"ネコ"には「0」番 , "ココア"には「1」番 , "アザラシ"には「2」番の番号が割り当てられています。
インデックス番号は0番から始まりますので注意してください。
それではこのインデックス番号を用いて、リストに格納されている要素を取り出してみましょう!
要素の取り出し
さきほどのプログラムを使って要素を取り出してみます。
リストから要素を取り出すには「リスト型の変数[インデックス番号]」のように用います。
#リスト型の変数lstを定義
lst=["ネコ", "ココア", "アザラシ"]
#リストlstの0番目の要素を取り出す
print(lst[0])
#リストlstの2番目の要素を取り出す
print(lst[2])
# 実行結果
# ネコ
# アザラシ
このプログラムのように作成したリストlstでインデックス番号を指定します。
lst[0]とすることで変数lstの0番目の要素が取り出されるので「ネコ」が出力されます。
また、lst[2]とすることで変数lstの2番目の要素が取り出されるので「アザラシ」が出力されます。
リストに格納されている値を取り出せました!
これでリストに格納した要素を自由に取り出せそうです。
リストとインデックス番号の関係が分かってもらえたようで良かったです。
リストから必要な要素をうまく取り出せるように練習してもらえたらと思います!
みなさんもうまくリストに格納している要素を取り出すことができたでしょうか?
続いて、リストのインデックス番号による要素指定の応用を学んでいきます。
これから説明する負のインデックス番号もよく用いる方法なのでこの機会にしっかり身に着けていきましょう!
負のインデックス番号
試しに要素の数がとっても多いリストを作成してみました。
後ろのほうの要素を取り出す時にインデックス番号が大きな値になってしまって数えるのが大変です!
何か良い方法はないですか?
自分でリストを作成してみて勉強していて、ごまこのチャレンジ精神は僕も見習わないといけないですね!
実はインデックス番号を要素の後ろから指定する方法があるんです!
プログラマーもよく使う方法だから知っておいてほしいです!
インデックス番号による要素指定(以下、インデックス指定)を要素の後ろから指定する場合には「負のインデックス番号」で指定します。
文字通り、いままで0以上の整数(0,1,2,3,・・・)で指定していた番号の代わりに、負の整数(-1,-2,-3,・・・)で指定する方法になります。
では具体的に説明していきましょう。
まず以下のようにリストの作成を行います。
これまで学んだインデックス番号を用いて要素の取り出しも行っています。
#リスト型の変数numsを定義
nums = [10, 20, 30, 40]
#インデックス番号を指定して出力
print("0番目の要素", nums[0])
print("1番目の要素", nums[1])
print("2番目の要素", nums[2])
print("3番目の要素", nums[3])
# 実行結果
# 0番目の要素 10
# 1番目の要素 20
# 2番目の要素 30
# 3番目の要素 40
これまでに学んだインデックス指定なのでプログラムも理解できましたでしょうか。
※print関数で複数の値を出力している部分は以下を参考にしてください。
リストnumsには以下の図のようにデータが格納されています。
この図に負のインデックスを追加したものが以下の図です。
上の図のように-1,-2,-3,-4と指定することで要素の後ろから値を取り出せます。
プログラムでリストの値を取り出すと以下のようになります。
#リスト型の変数numsを定義
nums = [10, 20, 30, 40]
#インデックス番号を指定して出力
print("3番目の要素", nums[-1])
print("2番目の要素", nums[-2])
print("1番目の要素", nums[-3])
print("0番目の要素", nums[-4])
# 実行結果
# 3番目の要素 40
# 2番目の要素 30
# 1番目の要素 20
# 0番目の要素 10
後ろから数えて要素を取り出すことができました!
これは確かに便利ですね!
負のインデックスについて理解していただけたみたいで良かったです!
リストはプログラムを書く上で本当によく使うので自由に要素を取り出せるようになってくださいね。
それでは最後に確認問題にチャレンジしてみましょう!
確認問題
①文字列"ごまこ","ゴマコ","ごまお","ゴマオ"を格納したリストstrsを作成してください。
②リストstrsで正の値のインデックス番号を用いて、文字列"ゴマコ"を取り出して出力してください。
③リストstrsで負の値のインデックス番号を用いて、文字列"ゴマコ"を取り出して出力してください。
④リストstrsで正の値のインデックス番号を用いて、文字列"ごまお"を取り出して出力してください。
⑤リストstrsで負の値のインデックス番号を用いて、文字列"ごまお"を取り出して出力してください。
確認問題 解答
# ①文字列"ごまこ","ゴマコ","ごまお","ゴマオ"を格納したリストstrsを作成
strs = ["ごまこ","ゴマコ","ごまお","ゴマオ"]
# ②正のインデックス番号で、文字列"ゴマコ"を取り出して出力
print(strs[1])
# ③負のインデックス番号で、文字列"ゴマコ"を取り出して出力
print(strs[-3])
# ④正のインデックス番号で、文字列"ごまお"を取り出して出力
print(strs[2])
# ⑤負のインデックス番号で、文字列"ごまお"を取り出して出力
print(strs[-2])
# 実行結果
# ゴマコ
# ゴマコ
# ごまお
# ごまお
異なる値を取り出してしまった場合もインデックス番号を修正しながら解答していただければ良いと思います。
まとめ
今回はリストの要素の取り出しについて学びました。
さらにPythonでは負のインデックスを用いて要素を取り出せることを説明しました
今後もリストの具体的な使い方について詳しく分かりやすく説明していきます。
お楽しみに!
このサイトの記事一覧へは以下へアクセス!
コメント