尝试在 python 中 pickle 一个列表

713*_*208 3 python pickle

尝试使用pickle在python中保存整数列表,遵循许多来源给我的确切方法,但我仍然遇到相同的错误。这是简化版本:

import pickle
a=[0,4,8,[3,5]]
with open(blah.pickle, 'wb') as b:
    pickle.dump(a,b)
Run Code Online (Sandbox Code Playgroud)

我总是收到错误:

NameError: name 'blah' is not defined
Run Code Online (Sandbox Code Playgroud)

出了什么问题?

Set*_*ton 5

您需要将其设为字符串:

import pickle
a=[0,4,8,[3,5]]
with open('blah.pickle', 'wb') as b:
    pickle.dump(a,b)
Run Code Online (Sandbox Code Playgroud)

如果没有引号,Python 将查找调用的变量blah并尝试获取pickle该对象的属性。由于您从未定义blah为变量,因此您会得到一个NameError.