ファスナー()関数は、パラメータ、これらの元素からなる群からタプルを返すリスト(PY2)にパッケージオブジェクトの位置に対応する要素として反復オブジェクトのために使用することができます
メモリPythonの3.xのを低減するために、()が返すファスナーイテレータ。リストを表示するには、手動でリスト()変換する必要があります。
= A [1,2,3 ] B = [ ' A '、' B '、' C ' ] zip_1 = ZIP(A、B) プリント(zip_1) #1 #zipオブジェクト<0x00000147C9257AC8郵便AT OBJECT> 印刷(リスト( zip_1))#1 #出力リスト[(1、 'A')、(2、 'B')、(3、 'C')] C = [ ' X '、' Y '、' Z ' ] zip_2 = ZIP (A、B、C) を印刷(一覧(zip_2)) #[(1、 'A'、 'X')、(2、 'B'、 'Y')、(3、 'C'、 'Z')]
#は、標準的なショートにパラメータを渡す同じ長さでない場合
、Aは= [1,2,3 ] C = [ ' X '、' Y ' ] zip_2 = ZIP(A、C) プリント(リスト(zip_2)) #[(1、 'X') 、(2、 'Y')]
#コントラストZIP、ZIP(*)は、減圧を理解される1つのニューロン前駆細胞からなるリストを返し A = [1,2,3 ] B = [ ' A '、' Bを'、' C ' ] C = [4 、5,6 ] zip_1 = ZIP(A、B、C) X、Y、Z = ZIP(* zip_1) プリント(X、Y、Z) #(。1、2 ,. 3)( 'A'、 'B' 、 'C')(4、 5、6)
注意点:
#ジップ返すイテレータ、フォワード計算不活性がイテレータが後退できないので、 Aが= [1,2,3 ] B = [ ' A '、' B '、' C ' ] zip_1 = ZIP(A、B) プリント(zip_1) プリント(リスト(zip_1)) #[(1、 'A')、(2、 'B')、(3、 'C')] プリント(リスト(zip_1)) #[]は空のリスト、反復子は、最後のタプル内部に内部ポインタ点を有し #し、次式ときに実行リストに、反復子は、ポインタがリセットされないように、だけでなく後方に進むが、反復子何のタプルが返されないことができたので、空のリストのプリントアウト #の郵便番号/だけ、一度は再圧縮する必要性を使用する次回イテレータを生成することができます理解するために簡単なの(*)
辞書には、ユーザー名やパスワードなどの試験データと組み合わせて作られました
#バインディング試験要求データを作った辞書、 ユーザー= [ ' アラン'、' JAX '、' ZZ ' ] PWD = [ ' 123 '、' 456 '、' 789 ' ] TEST_DATA = リスト(ZIP(ユーザー、PWD)) 印刷(TEST_DATA) #1 [( 'アラン'、 '123')、( 'JAX'、 '456')、( 'ZZ'、 '789')]を使用してリスト出力のユーザー名とパスワード TEST_DATA = dictの(TEST_DATA)#1 缶辞書は、反復的に構築するためにオブジェクトを 印刷(TEST_DATA) #{「アラン」: '123 '' ジャックス '' 456 '' ZZ '' 789「}