+ -
当前位置:首页 → 问答吧 → python 获取字典中下一个不为空的值

python 获取字典中下一个不为空的值

时间:2011-04-28

来源:互联网

我写了个递归函数:Python code

em = {1:1,2:None,3:3,4:None,5:5}#测试用字典
def get_g(n,e):
    if n>5:
        return None
    else:
        if e[n]:
            print 'back None'
            print  n#每次返回前打印出来
            return n
        else:
            if n<5:
                print n
                n += 1
                get_g(n,e)#递归调用直到字典的建有值
            else :
                return None

>>> o = get_g(3,em)
back None
3
>>> o = get_g(2,em)#这次调用应该返回n的值即3
2
back None
3#返回前都是3了
>>> print o
None#可返回值竟然是None! 求解


作者: z752964360   发布时间: 2011-04-28

试试:
return get_g(n,e)#递归调用直到字典的建有值

作者: angel_su   发布时间: 2011-04-28