[Python]リストの値を1つ飛ばしでループするには?

python

どうも、ちょげ(@chogetarou)です。

リスト(List)の値を1つ飛ばしでループする方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

リスト(List)の値を1つ飛ばしでループするには、スライスを使います。

まず、for文のinの左辺にループ変数、右辺にリスト名と[start:end:2]を指定します。
(start=範囲の最初の位置、end=範囲の最後の位置)

そして、for文にループ処理を指定します

ループ変数で、リストの値を取得します。

#ls=対象のリスト, start=範囲の最初の位置, end=範囲の最後の位置
for value in ls[start:end:2]:
    #ループ処理
    #ループ変数で値を取得

上記のfor文は、対象のリストの値を1つ飛ばしでループします。

[start:end:2]のstartを省略した場合は、範囲の最初の位置を先頭になります。

[start:end:2]のendを省略した場合は、範囲の最後の位置は末尾になります。

使用例

nums = ["one", "two", "three", "four", "five", "six", "seven", "eight"]

for value in nums[1:6:2]:
    print(value)
出力:
two
four
six

使用例2

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

コメント

タイトルとURLをコピーしました