我的问题可能也可能不是很简单。是否可以在Python中为dict()函数分配多个变量/对象? 例如,我有一个代码段 -
node_id = None
c_node = None
node_range = range(4)
nodes_memory = None
def init():
global nodes_memory
nodes_memory = dict()
for node_id in node_range:
nodes_memory[node_id] = dict()
for c_node in node_range:
nodes_memory[c_node] = dict()
nodes_memory
node_id
仅存储来自node_range
的{{1}}的值(或来自c_node
的{{1}}或两者都不存在)?
如果上述任何一种情况属实,我如何在node_range
中存储这两个值,以便我可以在任何时间点使用nodes_memory
访问它们?
在此先感谢您的帮助:)
答案 0 :(得分:0)
字典是一种映射,其中每个键都映射到单个值。密钥是唯一的,不能只是一个相同的密钥。要创建" multidict",我会使用defaultdict
模块中的collections
。
from collections import defaultdict
def init():
nodes_memory = defaultdict(list)
node_range = range(4)
for node_id in node_range:
nodes_memory[node_id].append(node_id)
for c_node in node_range:
nodes_memory[c_node].append(c_node)
return nodes_memory
您可以将append
中的值替换为您喜欢的任何其他值。要访问值,请使用索引表示法,就像使用常规dict
一样。