我不确定这是可能的,但......
我正在尝试编写一个函数,它将输出数字列表,以便它们可以输入到另一个函数中。我虽然处于死胡同,因为return或yield(在这种情况下使用)都不能给我我想要的东西。
def ITERATOR():
for number in range(1,3):
for item in itertools.permutations(range(15),number):
yield item
显然,只要使用return,函数就会中断,而yield会立即返回所有内容。理想情况下我想要输出的是每行打印的内容:
def ITERATOR():
for number in range(2,4):
for item in itertools.permutations(range(15),number):
print(item)
即:
(0, 1)
(0, 2)
(0, 3)
(0, 4)
(0, 5)
(0, 6)
(0, 7)
(0, 8)
(0, 9)
(0, 10)
(0, 11)
(0, 12)
(0, 13)
(0, 14)
etc...
有没有办法实现这个目标?
答案
如果要返回列表,可以这样做:
def fct():
return [item for item in itertools.permutations(range(15),number) for num