Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python-如何修改字典值-按整数值递增或递减_Python_Dictionary - Fatal编程技术网

Python-如何修改字典值-按整数值递增或递减

Python-如何修改字典值-按整数值递增或递减,python,dictionary,Python,Dictionary,尝试从字典中的所有值中添加或减去整数值并返回修改后的字典时遇到问题。下面是我的Python代码: def increment(dictionary): for entry in dictionary: dictionary[entry] += 1 ## or -= 1 return dictionary 已获取此错误代码,但不知道如何克服它: TypeError:不支持+=:“dict”和“int”的操作数类型 有人能告诉我我忽略了什么吗 -编辑- 下面是di

尝试从字典中的所有值中添加或减去整数值并返回修改后的字典时遇到问题。下面是我的Python代码:

def increment(dictionary):
    for entry in dictionary:
        dictionary[entry] += 1 ## or -= 1

    return dictionary
已获取此错误代码,但不知道如何克服它: TypeError:不支持+=:“dict”和“int”的操作数类型

有人能告诉我我忽略了什么吗

-编辑-

下面是dictionary案例的一个示例: {'x':{'y':{'z':15}}


我想将15增加到16。

递归增量的解决方案:

def increment(dictionary):    
    for entry in dictionary:
        if type(dictionary[entry]) is dict:
            dictionary[entry] = increment(dictionary[entry])
        else:
            dictionary[entry] += 1

    return dictionary


d = {'x': {'y': {'z': 15}}}

print(increment(d))

打印
{'x':{'y':{'z':16}}

听起来
字典[条目]
属于
dict
类型。您能否提供有关如何填充
词典
的更多上下文?请提供词典中的内容。错误显示您的dict值不是整数,而是另一个dict。显示
字典
对象的初始化以及对
增量(…)
的调用。这将帮助我们帮助您解决问题。因为错误信息中清楚地说明了错误本身。至少提供字典的转储非常优雅的解决方案…+1我明白了!我从未想过隔离和使用递归来处理字典中的条目是否是字典本身的问题。谢谢:)