リスト要素へのアクセス
CoddyのPythonジャーニー「Fundamentals」セクションの一部 — レッスン 54/77。
Pythonでは、1つの変数に複数の値を格納するためにリストを使用します。リスト内の各値は要素と呼ばれ、各要素にはインデックスがあります。インデックスは 0 から始まり、リストの長さから1を引いた値まで続きます。
例えば、次のリストを見てみましょう:
my_list = ['a', 'b', 'c', 'd', 'e', 'f', 'g']- 要素
aはインデックス 0 にあります - 要素
bはインデックス 1 にあります - ...
- 要素
gはインデックス 6 にあります
リストの要素にアクセスするには、角括弧の中にそのインデックスを使用します。例えば、my_listという名前のリストの最初の要素にアクセスするには、my_list[0]を使用します。
以下に例を示します:
my_list = [10, 20, 30, 40, 50]
element = my_list[2]変数 element は、3番目の要素(インデックスは2)にアクセスするため、値 30 を保持することになります。
チャレンジ
簡単引数としてリストを受け取り、リスト内のすべての項目を一つずつ順番に出力する、valuesという名前の関数を作成してください。
例えば、リストが [1, 3, 5, 7] の場合、出力は以下のようになります:
1
3
5
7
重要: リストはパラメータ lst としてすでに関数に提供されています。入力を読み取ったり、リストを作成したりする必要はありません。関数が呼び出されるときに、引数としてすでに渡されています。つまり、関数内では lst が反復処理する必要のあるリストを指します。関数を呼び出す必要もありません。自動的に呼び出されます。
リストを反復処理して各要素を出力するには、range() 関数の中で len() 関数を使用します:
def values(lst):
for i in range(len(lst)):
print(lst[i])このようにすると、i は 0 から len(lst) まで(その値は含まない)反復され、リストのすべてのインデックスを正確にカバーします。lst[i] はインデックス i の要素にアクセスし、print() はそれを独自の行に表示します。
チートシート
Pythonでは、リストを使用して1つの変数に複数の値を格納します:
my_list = ['a', 'b', 'c', 'd', 'e', 'f', 'g']リストの要素には、0から始まるインデックスでアクセスします:
element = my_list[2] # 3番目の要素(30)にアクセスしますリストを反復処理するには:
for i in range(len(my_list)):
my_list[i] # 各要素にアクセスしますlen()関数はリストの長さを返します。
自分で試してみよう
def values(lst):
# ここにコードを記述してくださいこのレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。