如何保存 ChainMap 对象?

How to save ChainMap objects?

我在 python 中有一个 ChainMap 对象的列表,我正在使用它们进行分析。我需要以某种方式将它们保存到磁盘以备后用。有没有可能做到这一点?

您可以使用 pickle 库。这是一个玩具示例,它将 cm.pickle 保存为二进制文件并再次读取它作为 unpickled 变量。

from collections import ChainMap
import pickle

nums = {"one": 1, "two": 2}
lets = {"a": "A", "b": "B"}

cm = ChainMap(nums, lets)

with open('cm.pickle', 'wb') as f:
    pickle.dump(cm, f)

with open('cm.pickle', 'rb') as f:
    unpickled = pickle.load(f)

print(unpickled)
ChainMap({'one': 1, 'two': 2}, {'a': 'A', 'b': 'B'})