forループで便利な zip, enumerate関数

zip関数 複数のシーケンスをまとめてループ

データのzip圧縮についてはこちらを参照

複数のシーケンスオブジェクトを同時にループするときに使用する。要素数が違う場合は一番少ないものに合わせられる。

>>> list1 = [1, 2, 3]
>>> list2 = [4, 5, 6]
>>> for (a, b) in zip(list1, list2):
#list1,list2を同時にループ
...   print a,b
... 
1 4
2 5
3 6

>>> list3 = [7, 8]
>>> for (a, b) in zip(list1, list3):
#要素数が少ないlist3に合わせられる
...   print a,b
... 
1 7
2 8

#行,列変換
>>> list4 = [
...   [1, 2, 3],
...   [4, 5, 6],
...   [7, 8, 9]
... ]
>>> for (a, b, c) in zip(*list4):
...    print a,b,c
... 
1 4 7
2 5 8
3 6 9

enumerate関数 インデックスとともにループ

ループする際にインデックスつきで要素を得ることができる。

>>> list1 = ['a', 'b', 'c']
>>> for (i, x) in enumerate(list1):
...   print i,x
... 
0 a
1 b
2 c
関連記事:

forループで便利な zip, enumerate関数」への7件のフィードバック

  1. ピンバック: enumerate関数 – Blog de Sochan

  2. ピンバック: zipファイルの読み書き | Python Snippets

  3. ピンバック: python – L a b o r y

  4. ピンバック: python Checkio.org Stage: SendGridを解く その1(ほぼ他人の解答への理解を試行錯誤) | IT技術情報局

  5. ピンバック: TensorFlowでカスみたいな線形回帰(Linear Regression) - YUEDY

  6. ピンバック: 圧倒的使い分け:pythonのlist , array , numpy.array , pandas.Seriese , pandas.DataFrame – 人生を圧倒的に楽しむ7つの法則。カズさんは考えました。

  7. ピンバック: in の前に複数の変数がある for 文の意味 - python - 質問と回答

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)