用python在另一个字典中创建字典的语法

2024-06-08 17:53:51 发布

您现在位置:Python中文网/ 问答频道 /正文

Possible Duplicate:
syntax to insert one list into another list in python

在python中如何将字典创建为另一个字典的语法


Tags: toin字典语法anotheronelistinsert
3条回答

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

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['dict2'] = {}

print dict1

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

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

要将一个词典作为其元素插入另一个词典中,还是要从另一个词典的键中引用一个词典的值?

前面的答案已经涵盖了第一种情况,即在另一个词典中创建词典。

要将一个字典的值重新引用到另一个字典中,可以使用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']

相关问题 更多 >