3 回答
TA贡献1777条经验 获得超3个赞
首先,不要调用你的字典dict
。这会掩盖 Python 中的实际类dict
,使您无法再引用该类。
现在,'berries': [ blue = {'typ1':'3.99','typ2'='3.49'}, 'green', 'red']
是因为语法无效而使一切变得混乱的部分。
使用{...}
has键和值定义的字典。
使用定义的列表[...]
不能有键。列表只有元素。
因此,您可以定义一个列表['blue', 'green', 'red']
,并将该列表分配给键,'berries'
如下所示:
mydict = { ... , 'berries': ['blue', 'green', 'red'] }
您甚至可以混合列表中元素的类型,因此这也是有效的:[{'color': 'blue', 'typ1': 3.99, 'typ2': 3.49}, 'green', 'red']
或者您可以定义一个字典,{'blue': {...}, 'green': {...}, 'red': {...}}
并将该字典分配给键,'berries'
如下所示:
mydict = { ... , 'berries': {'blue': {...}, 'green': {...}, 'red': {...}} }
但是您无法像最初尝试那样在列表中分配键值对。此外,=
无论如何,符号对于键值对来说都是错误的。
TA贡献1796条经验 获得超4个赞
[blue={'typ1':'3.99','typ2'='3.49'},'green', ...]
这毫无意义。您正在尝试使用运算符在数组内分配某些内容=
。它不是限制,只是语法错误。另外,将 更改=
为 a:
也不起作用,因为数组不保存键值对。所以看起来你正在混淆字典和数组。
TA贡献1804条经验 获得超8个赞
首先,我看到您创建了错误的格式。您必须遵循 json 格式。
格式错误,
'berries': [blue = {'typ1': '3.99', 'typ2' = '3.49'}, 'green', 'red']
因此上述元素将修改如下:
'berries': [{'blue': {'typ1': '3.99', 'typ2': '3.49'}}, 'green', 'red']}
此外,berry 元素的类型是列表,因此您必须使用“append”函数来添加新元素。所以正确的做法是:
dict['berries'].append({'blue': {'typ1': '3.99', 'typ2': '3.49'}})
总结代码:
dict = {'apples': {'typ1': '2.99', 'typ2': '2.49'}, 'oranges': '1.99', 'berries': ['green', 'red']}
dict['berries'].append({'blue': {'typ1': '3.99', 'typ2': '3.49'}})
print(dict)
预期结果是: {'apples': {'typ1': '2.99', 'typ2': '2.49'}, 'oranges': '1.99', 'berries': ['green', 'red', {'blue': {'typ1': '3.99', 'typ2': '3.49'}}]}
添加回答
举报