| 
 
 错误描述:使用如下方法将内容以json格式写入:  
def write_merged_dataset(feature_test, bert_predictions, label_test, test_data_path):
    with open(test_data_path, 'w', encoding='utf-8') as fp:
        for idx in range(len(label_test)):
            line = {}
            line['id'] = str(idx)
            for i, feature in enumerate(feature_test[idx]):
                line['x%d' % i] = feature
            line['bert_predictions'] = bert_predictions[idx]
            line['label'] = label_test[idx]
            fp.write(json.dumps(line) + '\n')
    print('data stored at ', test_data_path)
    return True
  
结果报错:  
TypeError: Object of type 'int64' is not JSON serializable
  
原因是我传入的bert_predictions参数是一个numpy.array,而numpy数组存储整数时是以class <numpy.int64>,无法被json序列化。  
解决方法:转成list再处理 
                
                
                
        
    
 
 |