見出し画像

東大でPython! - 繰り返し(1)

変数、関数、条件分岐とくれば次は繰り返し処理です。プログラミングの得意な部分、使い所です。

for 変数 in 文字列・リスト・辞書など:
    実行文

基本の形です。これに合わせて実際の使い方です。

words = ['dog', 'cat', 'mouse']

for w in words:
    print(w)

print('finish')

実行すると("len(w)"については外しています)

dog 
cat 
mouse
finish

という感じでリストの要素を順番に"w"に入れていきprint()関数で出力しています。

文字もリストと同じことができます。

word = 'Hello'

for c in word:
    print(c)

H
e
l
l
o

と人文字ずつ出力されます。

もう一つ便利な繰り返し。リストのリストを繰り返す場合。

list1 = [[0, 10], [1, 20], [2, 30]]

for i, j in list1:
    print(i, j)

"i","j"でリストの中のリストの二つの値を取り出すことができます。

0 10
1 20
2 30

range

rangeを使えば指定した回数を繰り返し処理。

for value in range(3):
    print('Hi!')

"Hi"が3回出力されます。

len

rangeとlenの合わせ技、len()リストの長さを自動数得できるのでリストの長さ分を繰り返し。

ln = ['e', 'd', 'a', 'c', 'f', 'b']
for value in range(len(ln)):
    print(ln[value])

リストの中のアルファベットを出力します。

enumerate

enumlateを使えばリストのインデックス(リストの順番)を取り出すことができます。

まずenumrateを使わずにインデックスと要素を取り出す方法。

i = 0

list = ["apple","banana","grape"]

for val in list:
    print(i, val)
    i += 1

これを実行すると

0 apple
1 banana
2 grape

と出力できます。これをenumrateを使って書き直します。

list = ["apple","banana","grape"]

for i,val in enumerate(list):
    print(i,val)

これを実行すると先ほどのものと同じ結果となります。

この記事が気に入ったらサポートをしてみませんか?