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

在嵌套的python字典中设置给定索引和值列表的值

邢财
2023-03-14
问题内容

我正在尝试以编程方式在字典中设置一个值(可能嵌套),给定一个索引列表和一个值。

例如,假设我的索引列表为:

['person', 'address', 'city']

值是

'New York'

结果,我想要一个字典对象,例如:

{ 'Person': { 'address': { 'city': 'New York' } }

基本上,列表代表嵌套字典的“路径”。

我想我可以构造字典本身,但是我绊脚石的地方是如何设置值。显然,如果我只是为此手动编写代码,它将是:

dict['Person']['address']['city'] = 'New York'

但是,如果我只有索引和值的列表,该如何以字典方式索引并以编程方式设置值呢?


问题答案:

这样的事情可能会有所帮助:

def nested_set(dic, keys, value):
    for key in keys[:-1]:
        dic = dic.setdefault(key, {})
    dic[keys[-1]] = value

您可以像这样使用它:

>>> d = {}
>>> nested_set(d, ['person', 'address', 'city'], 'New York')
>>> d
{'person': {'address': {'city': 'New York'}}}


 类似资料:
  • 问题内容: 搜索一个值并获取父词典名称(键): 在以上字典中,我需要搜索类似的值:。其中,字典中没有任何值重复。如何搜索?因此它应该返回字典中的父键。 请注意 :解决方案应在 未修改的情况下 适用 于 Python 2.7和Python 3.3。 问题答案: 这是对嵌套dict的迭代遍历,还可以跟踪导致特定点的所有键。因此,一旦您在字典中找到正确的值,您就已经具有获取该值所需的键。 如果将以下代码

  • 我有一个JSON API响应,如下所示: 我正在使用Python并尝试访问响应中的第一个“下载”值。所以我需要从sales\u list(目录中的列表)开始 我见过关于在列表中的字典或嵌套字典中访问值的问题。但是我对如何在字典中的列表和列表中的字典之间/之间导航有点困惑。任何帮助都将不胜感激。

  • 问题内容: 我正在处理一个复杂的嵌套字典和列表数据结构。我需要将数据展平并将所有嵌套项都置于0级。有关更多说明,请参见以下示例: 我需要将其展平为: 我从这篇文章的第一个答案中获得了参考,但是只有在我嵌套了字典的情况下它才可以工作,如果列表嵌套在字典中并且更多的词典嵌套在这些列表中,则它不能工作。 我对代码做了一些修改以适合我的用例,但是此代码不起作用 当我在此处粘贴代码时,缩进变得混乱。但我真的

  • 本文向大家介绍python实现字典嵌套列表取值,包括了python实现字典嵌套列表取值的使用技巧和注意事项,需要的朋友参考一下 如下所示: 访问dict的值: 访问dict下的result列表的值: 也可以使用临时变量: 以上这篇python实现字典嵌套列表取值就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。

  • 问题内容: 我在bleow显示的代码中使用嵌套列表在Python中遇到了一些问题。 基本上,我有一个包含所有0值的2D列表,我想循环更新列表值。 但是,Python不会产生我想要的结果。我对range()Python列表索引有误解吗? 我预期的结果是: 但是Python的实际结果是: 这里发生了什么? 问题答案: 问题是由于python选择通过引用传递列表这一事实引起的。 通常,变量是按“值”传递

  • 问题内容: 我有类似的东西 并且需要具有: 非常感谢! 编辑:我想按subkey1进行排序,这之前还不清楚。 问题答案: 使用关键字表示功能和方法: 演示: 假定 所有 顶级词典都具有一个键,该键被假定为带有键的字典。 有关更多详细信息和技巧,请参见Python Sorting HOWTO 。