我是Python的新手,目前我正在使用数据字典。 我希望像这样在dict中创建dict:
dates = {201101:{perf:10, reli:20, qos:300}, 201102:{perf:40, reli:0, qos:30}}
我已经有了密钥,我必须为初始化创建默认值。即:
{201101:{perf:0, reli:0}, 201102:{perf:0, reli:0}}
如何启动并更新特定字典。即日期[201101 [perf]] = 10。 谢谢!
答案 0 :(得分:1)
首先,您需要使用:
将键与其值分开。其次,你的密钥需要是字符串或数字。实施例。
dates = { 201101: {'perf': 10, 'reli':20, 'qos': 300} }
答案 1 :(得分:1)
首先
dates = {201101{perf=10, reli=20, qos=300}, 201102{perf=40, reli=0, qos=30}}
不是有效的python dict。这是:
dates = {201101: {'perf':10, 'reli':20, 'qos':300}, 201102:{'perf':40, 'reli':0, 'qos':30}}
一旦你发起了dict的词典:
dates = {201101:{'perf':0, 'reli':0}, 201102:{'perf':0, 'reli':0}}
通过执行以下操作进行更新:
dates[201101]['perf'] = 10
演示:
>>> dates = {201101:{'perf':0, 'reli':0}, 201102:{'perf':0, 'reli':0}}
>>> dates[201101]['perf'] = 10
>>> dates
{201101: {'reli': 0, 'perf': 10}, 201102: {'reli': 0, 'perf': 0}}
答案 2 :(得分:1)
你的第一个词:
dates={201101:{'perf':0, 'reli':0}, 201102:{'perf':0, 'reli':0}}
更新密钥值的一种方法:
date[201101]={'perf': 10, 'reli':20, 'qos': 300}
答案 3 :(得分:0)
运行时值所需的另一种方法是setdefault(i,[])或{}而不是[]。这允许您动态创建嵌套字典而不是“平面”。
例如:
dict = {}
for i in range(0,10):
dict.setdefault(i,{})
# Only now you can use the nested dict of level 1
for j in range(0,10):
dict[i][j] = j
这只是一个例子,你可以动态创建任何深度和异构元素的dict作为列表或其他词典。