python写一个递归函数,python写递归函数,a = [1, 2, 3


a = [1, 2, 3, 4]

如何才能生成

{'pid':1,'id':{'pid':2,'id':{'pid':3,'id':{...}}}

这样的结构呢

python3

>>> def f(ls):    if len(ls)>1:        x,*y=ls    else:        x,y=ls[0],None    return {'pid':x,'id':f(y) if y else None}>>> f([1, 2, 3, 4]){'pid': 1, 'id': {'pid': 2, 'id': {'pid': 3, 'id': {'pid': 4, 'id': None}}}}
def fact(n):    if n==1:        return 1    return n * fact(n - 1)

计算n的阶乘

python 2.7

 def gen(arr):     if not arr:         return None     firstValue = arr[0]     del arr[0]     return {'pid': firstValue, 'id':gen(arr)} print(gen([1, 2, 3, 4])) 

输出:

不过,题主呀,做伸手党是不好滴。。。

编橙之家文章,

评论关闭