gpt4 book ai didi

python - cPickle.dump 总是在文件末尾转储

转载 作者:行者123 更新时间:2023-11-28 17:40:05 24 4
gpt4 key购买 nike

cPickle.dump(object,file) 总是在文件末尾转储。有没有办法在文件中的特定位置转储?我希望下面的代码片段能够工作

file = open("test","ab")
file.seek(50,0)
cPickle.dump(object, file)
file.close()

但是,无论我在哪里寻找文件指针,上面的代码片段都会将对象转储到文件末尾(假设文件已经包含 1000 个字符)。

最佳答案

我认为与 cPickle 相比,打开文件的方式可能更成问题。ab 模式,除了作为追加模式(应该没有相关性,因为你seek)之外,还提供了 O_TRUNC 标志给低级打开 系统调用。如果你不想截断,你应该尝试 r+ 模式。

如果这不能解决您的问题并且您的对象不是很大,您仍然可以使用 dumps :

file = open("test","ab")
file.seek(50,0)
dumped= cPickle.dumps(object)
file.write(dumped)
file.close()

关于python - cPickle.dump 总是在文件末尾转储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25662599/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com