一般为itertools.product
工作:
>>> from itertools import product
>>> for x in product(range(5), numpy.arange(0, 0.3, 0.1)):
print x
...
(0, 0.0)
(0, 0.10000000000000001)
(0, 0.20000000000000001)
(1, 0.0)
(1, 0.10000000000000001)
(1, 0.20000000000000001)
(2, 0.0)
(2, 0.10000000000000001)
(2, 0.20000000000000001)
(3, 0.0)
(3, 0.10000000000000001)
(3, 0.20000000000000001)
(4, 0.0)
(4, 0.10000000000000001)
(4, 0.20000000000000001)
既然你想要的“其他”命令,你可以使用一个理解:
>>> [(x,y) for y in numpy.arange(0, 0.3, 0.1) for x in range(5)]
[(0, 0.0),
(1, 0.0),
(2, 0.0),
(3, 0.0),
(4, 0.0),
(0, 0.10000000000000001),
(1, 0.10000000000000001),
(2, 0.10000000000000001),
(3, 0.10000000000000001),
(4, 0.10000000000000001),
(0, 0.20000000000000001),
(1, 0.20000000000000001),
(2, 0.20000000000000001),
(3, 0.20000000000000001),
(4, 0.20000000000000001)]
或者你可以逆转的参数,然后反向每个元组itertools.product
吐出(他们总是循环最快的最右边的元素)。
>>> [x[::-1] for x in product(numpy.arange(0, 0.3, 0.1), range(5))]
[(0, 0.0),
(1, 0.0),
(2, 0.0),
(3, 0.0),
(4, 0.0),
(0, 0.10000000000000001),
(1, 0.10000000000000001),
(2, 0.10000000000000001),
(3, 0.10000000000000001),
(4, 0.10000000000000001),
(0, 0.20000000000000001),
(1, 0.20000000000000001),
(2, 0.20000000000000001),
(3, 0.20000000000000001),
(4, 0.20000000000000001)]