You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python使用Pickle保存字典报错:NameError问题求助

解决pickle保存字典时的NameError问题

这个错误的原因非常明确——你没有导入pickle库,并不是库本身有问题,只是代码里遗漏了关键的导入步骤而已。

你看你的代码开头只导入了re和os,但在save_obj函数里直接使用了pickle.dump(),Python自然找不到这个名称,所以抛出了NameError。

只需要在代码开头加上pickle的导入语句就能解决问题,修正后的代码片段如下:

import re
import os
import pickle  # 新增这行导入

def save_obj(outputFolder,obj, name ):
    directory = outputFolder + ' obj/'
    if not os.path.exists(directory):
        os.makedirs(directory)
    with open(directory + name + '.pkl', 'wb') as f:
        pickle.dump(obj, f, pickle.HIGHEST_PROTOCOL)

简单补充一下:pickle是Python自带的标准库,不需要额外通过pip安装,只要在使用前用import pickle导入,就能正常调用它的所有方法了。以后写代码时,可以养成一个小习惯——先梳理清楚要用到的所有库,把对应的导入语句都放在代码开头,就能避免这类低级的NameError啦。

内容的提问来源于stack exchange,提问作者user2535338

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 08:33:23