どうも、ちょげ(@chogetarou)です。
リスト(List)を先頭から1つ飛ばしでループする方法を紹介します。
方法

リスト(List)を先頭から1つ飛ばしでループする方法は、2つあります。
インデックス
ひとつは、インデックスを1つ飛ばしでループする方法です。
まず、for文のinの左辺にループ変数、右辺にrange()を指定します。
range()の第1引数に「0」、第2引数にリストの要素数、第3引数に「2」を指定します。
そして、for文にループ処理を指定します
ループ変数で、リストのインデックスを取得します。
#ls=対象のリスト
for i in range(0, len(ls), 2):
#ループ処理
#ループ変数でインデックスを取得
上記のfor文は、先頭から1つ飛ばしでリストのインデックスをループします。
使用例
nums = ["one", "two", "three", "four", "five", "six", "seven", "eight"]
for i in range(0, len(nums), 2):
print(i, ":", nums[i])
出力:
0 : one
2 : three
4 : five
6 : seven
値
もうひとつは、値を1つ飛ばしでループする方法です。
まず、for文のinの左辺にループ変数、右辺にリスト名と[::2]を指定します。
そして、for文にループ処理を指定します
ループ変数で、リストの要素を取得します。
#ls=対象のリスト
for i in ls[::2]:
#ループ処理
上記のfor文は、対象のリストを先頭から1つ飛ばしでループします。
使用例
nums = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
for i in nums[::2]:
print(i)
出力:
1
3
5
7
9
11
まとめ
リスト(List)を先頭から1つ飛ばしでループする方法は、次の2つです。
- インデックスを1つ飛ばしでループする方法
for i in range(0, len(ls), 2): #ループ処理
- 値を1つ飛ばしでループする方法
for i in ls[::2]: #ループ処理
コメント