4
我有一個Counter
對象,它由處理大量文檔組成。如何將collections.Counter對象寫入python中的文件,然後將其從文件中重新加載並將其用作計數器對象
我想將這個對象存儲在一個文件中。而且這個對象需要在另一個程序中使用,因爲我想從存檔的文件(作爲計數器對象)中將存儲的Counter
對象加載到當前程序。
有什麼辦法可以做到這一點?
我有一個Counter
對象,它由處理大量文檔組成。如何將collections.Counter對象寫入python中的文件,然後將其從文件中重新加載並將其用作計數器對象
我想將這個對象存儲在一個文件中。而且這個對象需要在另一個程序中使用,因爲我想從存檔的文件(作爲計數器對象)中將存儲的Counter
對象加載到當前程序。
有什麼辦法可以做到這一點?
您可以使用pickle
module將任意Python實例串行化爲一個文件,並在稍後將它們恢復到原始狀態。
這包括Counter
對象:
>>> import pickle
>>> from collections import Counter
>>> counts = Counter('the quick brown fox jumps over the lazy dog')
>>> with open('/tmp/demo.pickle', 'wb') as outputfile:
... pickle.dump(counts, outputfile)
...
>>> del counts
>>> with open('/tmp/demo.pickle', 'rb') as inputfile:
... print pickle.load(counts)
...
>>> with open('/tmp/demo.pickle', 'rb') as inputfile:
... print pickle.load(inputfile)
...
Counter({' ': 8, 'o': 4, 'e': 3, 'h': 2, 'r': 2, 'u': 2, 't': 2, 'a': 1, 'c': 1, 'b': 1, 'd': 1, 'g': 1, 'f': 1, 'i': 1, 'k': 1, 'j': 1, 'm': 1, 'l': 1, 'n': 1, 'q': 1, 'p': 1, 's': 1, 'w': 1, 'v': 1, 'y': 1, 'x': 1, 'z': 1})
非常感謝... – 2015-04-03 16:47:39