次のコードでは:
from collections import defaultdict
confusion_proba_dict = defaultdict(float)
for i in xrange(10):
confusion_proba_dict[i] = i + 10
print confusion_proba_dict
出力は次のとおりです。
defaultdict(<type 'float'>, {0: 10, 1: 11, 2: 12, 3: 13, 4: 14, 5: 15, 6: 16, 7: 17, 8: 18, 9: 19})
ただし、出力は次のようにする必要があります。
{0: 10, 1: 11, 2: 12, 3: 13, 4: 14, 5: 15, 6: 16, 7: 17, 8: 18, 9: 19}
どうすればいいですか?
通常のdictに変換するだけです
print( dict(confusion_proba_dict) )
ただし、そのように使用する場合は、defaultdictの利点を使用しないため、通常のdictを使用してください。
print dict(confusion_proba_dict)
恐ろしい解決策! (defaultdictのdefaultdictがある場合にも機能します!)
import json
import pprint
pprint.pprint(json.loads(json.dumps(confusion_proba_dict)))