我有一个带有一些数据结构的腌制文件。我不知道元素的确切数量和类型。如何将所有对象放入字典或列表中?
问题是如何在不知道条目数的情况下遍历文件?
所有对象都存储为字符串吗?
编辑:我正在使用这样的代码将数据保存在文件中:
import pickle
def _save(_file, *_obj):
with open(_file, 'w') as f:
for obj in _obj:
pickle.dump(obj, f)
我现在看到的唯一解决方案是将对象的数量存储为第一个条目。阅读它,然后阅读其他所有内容。
我可以通过这种方式轻松解开数据:
list_data = [1, 2, 3, 4]
dict_data = {1:'a', 2:'b'}
tuple_data = (1, 2, 3)
_save('my_pickle.pckl', list_data, dict_data, tuple_data)
with open('my_pickle.pckl', 'r') as f:
item1 = pickle.load(f)
print item1
item2 = pickle.load(f)
print item2
item3 = pickle.load(f)
print item3
这给了我我想要的……但我需要循环执行