我需要填充一个字典,其类型为:
partial[sequence][exp_id] = [item_1, ..., item_n]
这可以通过以下方式完成:
partial = defaultdict(dict)
for sequence in sequences:
for exp_id in exp_ids:
for item in data:
partial[sequence].setdefault(eid, []).append(item)
有更有效的方法吗? 例如:
partial = defaultdict(defaultdict(list))
for sequence in sequences:
for exp_id in exp_ids:
for item in data:
partial[sequence][exp_id].append(item)
这个方法本来很完美,但不幸的是它不能正常工作,因为defaultdict
要求第一个参数必须是可调用的对象。