-1

2 つの反復子 (A_subseq と B_subseq) があり、各反復子には 2 つの yield 出力 (A_subseq からの Aseq と Ahseq) があります。両方のイテレータのインデックス数を保持する必要があります。これは、2 つの for ループを 1 つのループに結合できれば実行できます。

a と b はどちらも反復子です。k は定数整数です。

a_count = 0
b_count = 0

A_subseq = subsequenceHashes(a,k)
B_subseq = subsequenceHashes(b,k)

Match = Multidict()

for Aseq,Ahash in A_subseq:
    Match.put(Ahash,Aseq)

for Bseq,Bhash in B_subseq:
    b_count += 1
    if Bseq in Match.get(Bhash):
        yield xxx

a_count と b_count の両方のカウントを保持できるように、これら 2 つの for ループを組み合わせることができるかどうかを知っている人はいますか?

4

1 に答える 1

4

これがあなたが求めているものだと思います:

for (a, b), (c, d) in izip(iter1, iter2)

これは Python の美しさの特性の 1 つです。

于 2013-10-11T05:57:28.717 に答える