python - 使用 pickle 处理文件

标签 python

尝试.py:

import pickle

f=open('abc.dat','w')
x=[320,315,316]
y=pickle.load(f)
f.close()
f=open('abc.dat','w')
for i in x:
        y.append(i)
pickle.dump(y,f)
f.close()

使用.py

import pickle
import os

os.system('try.py')
f=open('abc.dat', 'r')
print "abc.dat = "
x=pickle.load(f)
print x
print "end of abc.dat"
f.close();
y=x[:]
for z in x:
        y.remove(z)
        print "removing " + str(z)
        print str(y) + " and " + str(x)
        f=open('abc.dat', 'w')
        pickle.dump(y, f)
        f.close()

错误:

Traceback (most recent call last):
  File "G:\parin\new start\use.py", line 7, in <module>
    x=pickle.load(f)
  File "C:\Python26\lib\pickle.py", line 1370, in load
    return Unpickler(file).load()
  File "C:\Python26\lib\pickle.py", line 858, in load
        dispatch[key](self)
  File "C:\Python26\lib\pickle.py", line 880, in load_eof
    raise EOFError
EOFError

最佳答案

错误在try.py中:

f=open('abc.dat','w')
y=pickle.load(f)

请注意,'w' 模式会将文件重置为 0 大小(即删除其内容)。传递 'r' 或什么都不传递以打开 abc.dat 进行阅读。

关于python - 使用 pickle 处理文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4978041/

相关文章:

python - pyspark 数据框中 NA 的正确面额是多少?

Python多线程使用队列

python - 在 Python 2 中向现有类的实例添加属性

python - tensorflow 中两个向量的点积

Python修改键列表中的嵌套字典值

python - 如何使用python将数据从一个页面传输到另一个页面

python - 无法理解为什么当你重复调用同一个函数时 python 不重新使用参数

python - 如何设置python的路径

python - Scikit-Learn/Pandas : make a prediction using a saved model based on user input

python - 将字符串本地复制到剪贴板 python 3