4
我想类型的字典字典添加到货架文件:python搁置dbm.error?
>>> d = shelve.open('index.shelve')
>>> d
<shelve.DbfilenameShelf object at 0x21965f0>
>>> print(list(d.keys()))
[]
>>> d['index'] = index
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/bns/rma/local/python/lib/python3.1/shelve.py", line 124, in __setitem__
self.dict[key.encode(self.keyencoding)] = f.getvalue()
_dbm.error: cannot add item to database
指数是有点大,但不是很大。它本质上是一组浮标:
>>> len(index)
219
>>> a = [ index[k][k1] for k in index for k1 in index[k] ]
>>> len(a)
59995
>>> all([ type(x) is float for x in a ])
True
什么是这个错误?此外,有没有在模块或模块文件中的某处,我应该寻找更多的信息在错误代表什么?错误消息是不是很丰富,至少对我来说:)。
我应该也说过我在使用python 3.1.2。 – mathtick 2011-02-14 19:13:06
您可以设置搁架的元素吗?例如,如果`index`是一个整数,你会得到同样的崩溃吗?怎么样一个字典,或一个更小的字典? – Andrew 2011-02-14 19:34:16