zip関数【builtin】
説明:zip型インスタンスを生成するビルトイン関数である。このインスタンスは1つにまとめられた複数のイテラブルオブジェクトから順に取り出した値を要素に持つタブルを生成する。ジェネレータ型のオブジェクトである。 書式:
zip( 引数1,引数2、‥ )
戻り値:zip型オブジェクト
/icons/hr.icon
単一のイテラブルオブジェクトをでfor文を制御する例。 code:zip1.py
for i in data:
print(i)
複数のイテラブルオブジェクトを束ねて利用することを意図して次のようなプログラムを作成した。しかし意図した通りに動作しない。 code:zip2.py
for i in data1, data2:
print(i)
1番目の data1 のループが終了したのちに、2番目に与えた data2 のループが行われているようだ。
このような場合には zipオブジェクトを利用する。これは複数のイテラブルオブジェクトから取り出した値からなるタプルを順に生成する。
code:zip3.py
data = zip(data1, data2)
for i in data:
print(i)
次のように、より短く記述することもできる。
code:zip3.py
for i in zip(data1, data2):
print(i)
code:zip4.py
for i, j, k in zip(name, age, weight):
print(i,'さん:' ,j, k)
code:zip5.py
for n, (i, j, k) in enumerate(zip(name, age, weight)):
print('No.', n + 1, i,'さん:' ,j, k)