擅长:python、mysql、java
<p>没有人提到dbm。它像文件一样打开,像字典一样工作,并且在标准发行版中。</p>
<p>从文档<a href="http://docs.python.org/release/3.0.1/library/dbm.html" rel="noreferrer">http://docs.python.org/release/3.0.1/library/dbm.html</a></p>
<pre><code>import dbm
# Open database, creating it if necessary.
db = dbm.open('cache', 'c')
# Record some values
db[b'hello'] = b'there'
db['www.python.org'] = 'Python Website'
db['www.cnn.com'] = 'Cable News Network'
# Note that the keys are considered bytes now.
assert db[b'www.python.org'] == b'Python Website'
# Notice how the value is now in bytes.
assert db['www.cnn.com'] == b'Cable News Network'
# Loop through contents. Other dictionary methods
# such as .keys(), .values() also work.
for k, v in db.iteritems():
print(k, '\t', v)
# Storing a non-string key or value will raise an exception (most
# likely a TypeError).
db['www.yahoo.com'] = 4
# Close when done.
db.close()
</code></pre>
<p>我会在任何更奇特的形式之前尝试这个,并且使用shelve/pickle会在加载时将所有内容拉入内存。</p>
<p>干杯</p>
<p>提姆</p>