1

ジェネレーターを使用してsを作成しました

s= generator(n)

ジェネレータは、範囲(n)内のnに対して(a、b)を生成します。ここで、a = [w、x]およびb = [y、z]

を使用した印刷

for i in s:
    print i

これは次を返します:

([0.27704232355167768, 0.44459304959240675], [0.4387731877846518, 0.38108111684466683])
([0.27704232355167768, 0.44459304959240675], [0.6362447250743466, 0.72047209074359853])
([0.27704232355167768, 0.44459304959240675], [0.65419386891877318, 0.025362727486327286])
([0.27704232355167768, 0.44459304959240675], [0.039966264334369672, 0.9662795347591735])

でもお願いします

0.27704232355167768 0.44459304959240675 0.4387731877846518 0.38108111684466683
0.27704232355167768 0.44459304959240675 0.6362447250743466 0.72047209074359853
0.27704232355167768 0.44459304959240675 0.65419386891877318 0.025362727486327286
0.27704232355167768 0.44459304959240675 0.039966264334369672 0.9662795347591735

私は以下のアイデアの多くのバリエーションを試しました

print '\n'.join('\t'.join(x) for x in s)

ただし、n0を使用すると、同じ形式でsが返される傾向があります。誰かがこの問題を回避するのを手伝ってもらえますか?

4

3 に答える 3

1
>>> from itertools import chain
>>> for i in s:
        print '\t'.join(map(str,chain(*i)))


0.277042323552 0.444593049592 0.438773187785 0.381081116845
0.277042323552 0.444593049592 0.636244725074 0.720472090744
0.277042323552 0.444593049592 0.654193868919 0.0253627274863
0.277042323552 0.444593049592 0.0399662643344 0.966279534759
于 2012-04-08T16:44:50.680 に答える
1
from itertools import chain
'\n'.join('\t'.join(map(str,tuple(chain(*i)))) for i in s)

chain各行をフラット化するため、すべての要素をタブで結合してから、行を改行で結合できます。

于 2012-04-08T16:54:02.370 に答える
0

ジェネレーターがどのように見えるかはわかりませんが、ジェネレーターが次のようになっている場合は、例を見てください

>>> def generator(n):
    for i in xrange(0,n):
        yield ([0.27704232355167768, 0.44459304959240675], [0.4387731877846518, 0.38108111684466683])
    return

その後、あなたは次のようなことができます

>>> s=generator(5)
>>> print '\n'.join('\t'.join(map(str,x))  for x in s)
[0.2770423235516777, 0.44459304959240675]   [0.4387731877846518, 0.38108111684466683]
[0.2770423235516777, 0.44459304959240675]   [0.4387731877846518, 0.38108111684466683]
[0.2770423235516777, 0.44459304959240675]   [0.4387731877846518, 0.38108111684466683]
[0.2770423235516777, 0.44459304959240675]   [0.4387731877846518, 0.38108111684466683]
[0.2770423235516777, 0.44459304959240675]   [0.4387731877846518, 0.38108111684466683]
>>> 
于 2012-04-08T16:41:51.427 に答える