for-in (range,enumerate ,zip)の使い方 – 【Python】
Pythonでのfor inの使い方です。
リスト
リストに対してfor inを使います。
list = [1,2,3] for i in list: print(i)
実行結果です。
1 2 3
文字列
文字列に対してfor inを使います。
str = 'hello' for i in str: print(i)
実行結果です。
h e l l o
辞書のキー
辞書のキーに対してfor inを使います。
dict = {'a': 1, 'b': 2, 'c': 3} for i in dict: print(i)
実行結果です。
a b c
辞書のキーと値
辞書のキーと値に対してfor inを使います。
dict = {'a': 1, 'b': 2, 'c': 3} for k,v in dict.items(): print(k,v)
実行結果です。
a 1 b 2 c 3
range
for inにrangeを使用します。range(数値)と記述します。
for i in range(3): print(i)
実行結果です。
0 1 2
enumerate
リストに対してfor inを使う際に、インデックスも付加したい場合にenumerateを使用します。
list = ['yamada','sato','takahashi'] for i,v in enumerate(list): print(i,v)
実行結果です。
0 yamada 1 sato 2 takahashi
zip
複数のリストに対してfor inを使います。
第二引数のstrict=Trueにすることによってイテレーブルの要素数が異なる場合、エラーとなります。
strict=Falseにすると、要素数が少ないイテレーブルに合わせてループします。
names = ['yamada','sato','takahashi'] ages = [20,30,40] for name,age in zip(names, ages, strict=True): print(name,age)
実行結果です。
yamada 20 sato 30 takahashi 40
リスト内包表記
for inをリスト内包表記で記述します。
range()などから新たなリストを作る記述方法です。
式 for 変数名 in range()
以下例です。
result = [i for i in range(1, 6)] print(result) # [1, 2, 3, 4, 5] names = ['yamada','sato','takahashi'] result = [i for i, v in enumerate(names)] print(result) # [0, 1, 2]
KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^