【问题标题】:syntax for creating a dictionary into another dictionary in python [duplicate]在python中将字典创建到另一个字典的语法[重复]
【发布时间】:2011-04-18 13:36:46
【问题描述】:

可能重复:
syntax to insert one list into another list in python

在python中创建一个字典到另一个字典的语法是怎样的

【问题讨论】:

  • 你用什么教程来学习Python?
  • syntax to insert one list into another list in python 的可能重复项(是的,我完全理解列表不是字典,但这就像同一个问题又用不同的词。接下来是什么,在元组中创建元组?)
  • 此外,它是由同一个用户。你会认为一个例子就足够了。
  • 我在克隆字典的意义上更多地解释了这个问题,这与链接的“重复”问题无关。另请注意,“重复”问题中接受的答案使用append,绝对不能在这里应用。
  • 列表不是字典,链接说的重复的问题根本不一样

标签: python


【解决方案1】:

您可以通过嵌套 {} 容器在字典中声明字典:

d = {'dict1': {'foo': 1, 'bar': 2}, 'dict2': {'baz': 3, 'quux': 4}}

然后您可以使用 [] 语法访问元素:

print d['dict1']           # {'foo': 1, 'bar': 2}
print d['dict1']['foo']    # 1
print d['dict2']['quux']   # 4

鉴于上述情况,如果你想在字典中添加另一个字典,可以这样做:

d['dict3'] = {'spam': 5, 'ham': 6}

或者,如果您更喜欢将项目一一添加到内部字典中:

d['dict4'] = {}
d['dict4']['king'] = 7
d['dict4']['queen'] = 8

【讨论】:

  • 如何添加通用术语来调用元素?而不是写'dict1',你怎么能调用第一个元素(如果它不叫'dict1')**在打印部分
【解决方案2】:
dict1 = {}

dict1['dict2'] = {}

print dict1

>>> {'dict2': {},}

这通常被称为将迭代器嵌套到我认为的其他迭代器中

【讨论】:

    【解决方案3】:

    您想将一个字典插入到另一个字典中,作为它的元素之一,还是想从另一个字典的键中引用一个字典的值?

    以前的答案已经涵盖了第一种情况,您正在另一个字典中创建字典。

    要将一个字典的值重新引用到另一个字典中,您可以使用dict.update

    >>> d1 = {1: [1]}
    >>> d2 = {2: [2]}
    >>> d1.update(d2)
    >>> d1
    {1: [1], 2: [2]}
    

    对两个字典中存在的值的更改将在两个字典中都可见:

    >>> d1[2].append('appended')
    >>> d1
    {1: [1], 2: [2, 'appended']}
    >>> d2
    {2: [2, 'appended']}
    

    这与复制值或用它制作新字典相同,即

    >>> d3 = {1: d1[1]}
    >>> d3[1].append('appended from d3')
    >>> d1[1]
    [1, 'appended from d3']
    

    【讨论】:

      猜你喜欢
      • 2021-03-09
      • 1970-01-01
      • 1970-01-01
      • 2021-05-15
      • 2011-09-05
      • 2018-10-13
      • 1970-01-01
      • 1970-01-01
      • 2019-05-08
      相关资源
      最近更新 更多