例如,如果我想要一个像这样的列表: [2,4,[5,1]]
如何使用递归实现生成此代码的代码?
答案 0 :(得分:0)
这完全取决于您希望如何生成特定值。他们随机抽签吗?它们来自其他一些数据源吗?
但是一旦描述了那个部分,就可以像往常一样制作一个递归函数。例如,假设您只想要某些值的递归副本。然后你可以这样做:
def make_list(levels, num_elems):
if levels > 0:
return range(num_elems) + [make_list(levels-1, num_elems)]
else:
return range(num_elems)
例如:
In [3]: make_list(2, 2)
Out[3]: [0, 1, [0, 1, [0, 1]]]