我要执行以下操作:
1-检查是否存在具有给定名称的pkl文件 2-如果不是,请使用给定名称创建一个新文件 3-将数据加载到该文件中
if not os.path.isfile(filename):
with open(filename,"wb") as file:
pickle.dump(result, file)
else:
pickle.dump(result, open(filename,"wb") )
但是,即使我检查了具有给定路径的文件是否存在(甚至都不应该输入if !!),这也会引发错误:
Traceback (most recent call last):
with open(filename_i,"wb") as file:
IsADirectoryError: [Errno 21] Is a directory: '.'
谢谢!
答案 0 :(得分:1)
您可以这样做:
char popped = pop( &string ) ;
因此,它首先检查文件是否存在,如果不存在,则创建文件(“ wb”),然后通过pickle pickle.dump向其中转储一些对象。
答案 1 :(得分:1)
也许这更清楚:
import os
import pickle
dict = { 'Test1': 1, 'Test2': 2, 'Test3': 3 }
filename = "test_pkl.pkl"
if not os.path.isfile(filename):
with open(filename,'wb') as file:
pickle.dump(dict, file)
file.close()
infile = open(filename,'rb')
new_dict = pickle.load(infile)
infile.close()
print(new_dict)
print(new_dict == dict)
print(type(new_dict))
{'Test1': 1, 'Test2': 2, 'Test3': 3}
True
<class 'dict'>