将项添加到字典(字典内的数组?)


dic = {"t": [{"x": 0}, {"x": 1}, {"x": 2}]}
print(dic)
dic["t"] = dic["t"].append({"x": 3})
print(dic)

实际结果:{'t': None}

期望结果:{'t': [{'x': 0}, {'x': 1}, {'x': 2}, {"x": 3}]}

可能很简单,我只是不知道要找什么。

append方法,,它不输出任何东西(好吧,它输出None)。当您运行dic["t"] = dic["t"].append({"x": 3})时,您将初始列表替换为None。

你需要做的是:

dic["t"].append({"x": 3})

完整代码:

dic = {"t": [{"x": 0}, {"x": 1}, {"x": 2}]}
print(dic)
dic["t"].append({"x": 3})
print(dic)

输出:

{'t': [{'x': 0}, {'x': 1}, {'x': 2}]}
{'t': [{'x': 0}, {'x': 1}, {'x': 2}, {'x': 3}]}

append()返回None,而不是您所期望的应用该方法的列表。变化:

dic["t"] = dic["t"].append({"x": 3})

:

dic["t"].append({"x": 3})

另一个选项是这样做:

dic = {"t": [{"x": 0}, {"x": 1}, {"x": 2}]}
print(dic)
dic["t"] += [{"x": 3}]
print(dic)

尝试只做dic["t"].append({"x":3}),因为append更新列表,但返回None,所以你的新值将是None。相反,只需更新值。

相关内容

  • 没有找到相关文章

最新更新