gpt4 book ai didi

python - 嵌套到 Python 中的动态深度

转载 作者:太空宇宙 更新时间:2023-11-03 13:39:16 27 4
gpt4 key购买 nike

我正在尝试解决一个问题,该问题需要嵌套的层数与列表中的项目数一样多。或者更准确地说,是列表中的可迭代对象。

def example(arg_list):
for i in arg_list[0]:
for j in arg_list[1]:
for k in arg_list[2]:
print "{} {} {}".format(i,j,k)

只要“arg_list”是一个包含 3 个可迭代对象的列表,如 [[1,3,4],[4,5,6], [9,3,2,1],上面的函数就可以正常运行,0]]。如果列表中总是有四个可迭代对象,那也很容易做到。我需要弄清楚如何创建一个函数,该函数将为添加到“arg_list”参数的每个可迭代对象添加另一个嵌套级别。似乎递归可能是要走的路,但还没有弄清楚。

最佳答案

您正在寻找的东西叫做笛卡尔积。Python itertools 模块有一个函数可以为您完成。

from itertools import product

def example(arg_list):
for items in product(*arg_list):
print " ".join(str(item) for item in items)

关于python - 嵌套到 Python 中的动态深度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34407116/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com