【发布时间】:2014-07-30 13:32:48
【问题描述】:
我编写了这段代码来计算 pdf 文件的哈希值并将其添加到字典中并将其保存到如下文件中:
v={hash_value:{"file name":file_name,"number":1}}
但下面代码的问题是,如果我添加一个新文件,它会覆盖之前的文件。
f = calculate_hash("calc.pdf")
v = {f:{"file name":"calc.pdf","number":1}}
with open('filename.pickle', 'wb') as handle:
pickle.dump(v, handle)
with open('filename.pickle', 'rb') as handle:
b = pickle.load(handle)
x= calculate_hash("calc.pdf")
for key in b:
print key
if x == key:
print "yes"
【问题讨论】:
-
是的,
open('filename.pickle', 'wb')清除文件 - 您是否希望首先加载字典,修改它们,然后再次存储? -
是的,这就是我想要的
-
为什么不先读取文件,修改后再写回来?
标签: python dictionary pickle