Python的字典追加被覆盖前一个键:值
问题描述:
首先蟒蛇2.7.11Python的字典追加被覆盖前一个键:值
概述,我收集的目录名称在给定的路径,并把它们传递到子CMD。从该子进程中,我逐行遍历输出,目录名称是键,subprocess.stdout是值。
我需要的是保持键相同,但保存唯一值并将它们添加到字典中,以便稍后可以写入csv。
将其显示2个方法的代码片断我已经尝试过(一个被注释掉)。两者都覆盖字典中现有的key:值。
data = []
for dname in listdir(path):
header = dname
if isfile:
entrydict = dict()
cmd = "ct lsh -fmt \"%u \\n\" -since 01-Oct-2015 -all " + dname
# output of cmd is "name \r\n"
p1 = subp.Popen(cmd, stdout=subp.PIPE, stderr=subp.PIPE)
usr = []
for name in iter(p1.stdout.readline, ''):
if name.rstrip() not in usr:
usr.append(name.rstrip())
else:
entrydict[header] = usr
for n in usr:
entrydict[header] = n
data.append(entrydict)
谢谢!
答
是的,你可以收集所有的唯一值的像names = ['f0', 'f1', 'f2']
列表,然后将其与header
分配给你的字典作为重点喜欢
entrydict[header] = names
只要确保所有的header
是不同的。
字典一次只能取一个唯一的字典。所以你不能将所有的值赋给key'header'。 –