当前位置: 首页 > 面试题库 >

将常量整数添加到python字典中的值

公良天逸
2023-03-14
问题内容

如果满足某些条件,您将如何向字典中的值添加一个常数,例如1。

例如,如果我有字典:

dict = {'0':3, '1':3, '2':4, '3':4, '4':4}

如果我只是想将整数1添加到字典中的每个值,那么它将dict这样更新:

dict = {'0':4, '1':4, '2':5, '3':5, '4':5}

当我使用以下代码(其中Cur_FID是字典“ 0”中的第一个)时,它的值为5?它应该给我4。

for lucodes in gridList2:   # a list of the values [3,3,4,4,4] -- have to separate out because it's part of a larger nested list
    if lucodes > 1:
        if lucodes < 5:
            FID_GC_dict[Cur_FID] = lucodes + 1

print FID_GC_dict[Cur_FID]   #returned 5??? weird

我想为所有值加1,但是在第一次字典更新做一些奇怪的操作时就停在这里。


问题答案:

一种简单的方法是使用collections.Counter对象,在大多数情况下,您可以像普通字典一样以各种方式使用该对象,但该对象已进行了优化以保留项目数:

>>> from collections import Counter
>>> d = Counter({'0':3, '1':3, '2':4, '3':4, '4':4})
>>> d
Counter({'3': 4, '2': 4, '4': 4, '1': 3, '0': 3})
>>> d.update(d.keys())
>>> d
Counter({'3': 5, '2': 5, '4': 5, '1': 4, '0': 4})

至于仅在满足某些条件时执行此操作,只需使用理解或生成器仅将要增加的键列表传递给d.update()

>>> d = Counter({'3': 4, '2': 4, '4': 4, '1': 3, '0': 3})
>>> d.update((k for k, v in d.items() if v == 4))
>>> d
Counter({'3': 5, '2': 5, '4': 5, '1': 3, '0': 3})


 类似资料:
  • 问题内容: 我想将一个项目添加到Python中的现有字典中。例如,这是我的字典: 我想添加一个新项目,例如: 我该如何实现? 问题答案: default_data[‘item3’] = 3 像py一样容易。 另一个可能的解决方案: 如果您想一次插入多个项目,这很好。

  • 问题内容: 我想自动将键添加到Python字典(如果还不存在)。例如, 如果密钥不存在,如何自动创建密钥? 问题答案: 使用:

  • 问题内容: 我试图找出最好的方式来添加值到这是一个在。我想建立一个按联系人名字的首字母排序的联系人字典。例如[A:[Aaron,Adam等…],B:[Brian,Brittany等],…] 我发现此功能: 并尝试在循环中使用它: 但是当我尝试使用它时,它用一个新数组替换了现有数组。我知道我可以手动检查字典中的键是否存在,如果存在,则检索数组,然后附加一个新值,否则添加新的键/值对,但是我不确定Sw

  • 问题内容: 我想在函数外部使用一堆在函数中定义的局部变量。因此,我传递了返回值。 如何将该词典中定义的所有变量加载到函数外部的名称空间中,这样我可以简单地使用而不是使用来访问值。 问题答案: 考虑替代方案: 因此,如果您有一本字典,并且想要使用语法而不是clumsier来访问(读取)其值,请执行 这个作品内外的功能-它的 巨大 清洁,较安全的注射进!记住Python Zen中的最后一行…:

  • 本文向大家介绍将整数从变量添加到MySQL列?,包括了将整数从变量添加到MySQL列?的使用技巧和注意事项,需要的朋友参考一下 要设置变量,请使用MySQL SET。要从变量中添加整数,请按照以下语法使用UPDATE和SET- 让我们首先创建一个表- 使用插入命令在表中插入一些记录- 使用select语句显示表中的所有记录- 输出结果 这将产生以下输出- 以下是将变量中的整数添加到MySQL列的查

  • 问题内容: Swift中的数组支持+ =运算符,可将一个数组的内容添加到另一个数组。有没有简单的方法可以做到这一点的字典? 例如: 问题答案: 您可以为定义运算符,例如