增加字典中的值?

时间:2014-03-26 08:56:24

标签: python dictionary

是否有一个函数可以接受字典并通过仅增加1中的值来修改字典?

f({'1':0.3, '11':2, '111':{'a':7, 't':2}})

变为

{'1':1.3, '11':3, '111':{'a':8, 't':3}}

f({'a':{'b':{'c':5}}})

变为

{'a':{'b':{'c':6}}}

谢谢!

2 个答案:

答案 0 :(得分:1)

不是最好的......

def incr(d):
    try:
        return d + 1
    except TypeError: # test the type rather catch error
        return g_incr(d)
    except:
        return 0
def g_incr(d):
    return {k:incr(v) for k, v in d.items()}


test = {'1':0.3, '11':2, '111':{'a':7, 't':2}}
print g_incr(test)

答案 1 :(得分:0)

我想你应该试试这个;

def increment(dict):
    return {k:v+1 for k,v in dict.items()}
result = increment()
print result