|
|
发表于 2020-2-5 16:57:41
|
显示全部楼层
本帖最后由 hrp 于 2020-2-5 17:11 编辑
dump load 有个特性,你分次写进去的数据,他也是分次读出来的,所以,要读取追加进去的数据,就多load几次就好了
比如下面的代码:你运行第一次代码,会有hello world 123,4156---0、hello world 123,4156---1、hello world 123,4156---2三行被读出来,运行第二次,会有2个---0---1---2(6行)被读出来(因为运行第二次是在第一次的基础上追加的)
- # 导入泡菜模块
- import pickle
- s = 'hello world 123,4156'
- # 写入数据
- file = open('123.pkl','ab')
- for i in range(3):
- pickle.dump(s + f'---{i}',file)
- # 关闭文件
- file.close()
- # 读取数据
- file = open('123.pkl','rb')
- while True:
- try:
- du = pickle.load(file)
- # 打印数据
- print(du)
- except:
- break
- # 关闭文件
- file.close()
复制代码 |
|