所以我想创建一个列表的嵌套字典,其中内部值是一个允许重复的列表:
$scope.estados = [
{
uf: 'SP',
nome: 'São Paulo'
}
];
这是我到目前为止所做的,但无法弄清楚如何将列表附加到内部值:
d = {'45678':{'ant':['N4', 'N4', 'P3', 'P3']}}
返回:
d={}
with open(file_path, 'r') as f:
for l in f.readlines()[4:]:
peaks = l.split()
if '1' in peaks[5]:
d.setdefault(peaks[0], {})['ant'] = [peaks[7]]
我的问题是如何将列表作为嵌套字典中的内部值附加?
答案 0 :(得分:2)
我想我可能已经弄明白你要做什么了。
这有帮助吗?
d.setdefault(peaks[0], {}).setdefault('ant', []).append(peaks[7])
如果没有,请解释文件的样子或其他关于你要做什么的事情。
答案 1 :(得分:1)
假设您的代码基本上是合理的(在处理文件方面),您应该在内部字典上使用setdefault
并在列表中使用append
。
d={}
with open(file_path, 'r') as f:
for l in f.readlines()[4:]:
peaks = l.split()
if '1' in peaks[5]:
d.setdefault(peaks[0], {}).setdefault('ant', []).append(peaks[7])
目前,您始终使用[peaks[7]]
创建新列表,而不是提供附加选项。