2016-09-05 4 views
-2

1つのループにより、「疲れ」を取得コアテストコードです:ジッパーは、私はPythonスクリプトを実行すると、奇妙な出力はここに、私を混乱

a = [1,2,3] 
b = [4,5,6] 
c = zip(a,b) 
for i in range(2): 
    for x,y in c: 
     print(i,x,y) 

のみ出力:

0 1 4 
0 2 5 
0 3 6 

私がいましたi = 1で始まる結果も期待しています。

+3

を参照してください、あなたは出力を持つ奇妙見つける正確に何を説明していただけますか?あなたが期待していたものが、出力が奇妙だと思うように導くことも示します。 – idjaw

+0

出庫に何が問題なのですか?アウトプットは何を期待していますか?あなたはあなたの質問を明確にする必要があります。 – Flickerlight

+0

@JulienBernu私はpython 3.5.2を使用しています。 – Psidom

答えて

1

python3以降、cはジェネレータです。

だから、もう一度上に行くと、それは空です。したがって、なぜ内部ループが1回だけ実行されるのでしょうか。

https://docs.python.org/3.3/library/functions.html#zip

+3

cはPython3のジェネレータです... – Julien

+0

なぜdownvote? –

+1

怒っている人(私ではない)を知っている人、+1する人がいても、私に起こるときは嫌いな人) – Julien

0
a = [1,2,3] 
b = [4,5,6] 
c = zip(a,b) 
for i,(x,y) in enumerate(c): 
    print(i, x, y) 

output: 
0 1 4 
1 2 5 
2 3 6 
+2

答えに詳しい説明を加えてください。 –

関連する問題