我试图将coo_matrix的输出存储到字典中,格式为" store [0,0] = 1"使用
J = coo_matrix(Mat)
store = {}
for row, col, value in zip(J.row, J.col, J.data):
store["{0}".format(row),"{1}".format(col)] = "{2}".format(value)
这有什么错误?
答案 0 :(得分:0)
虽然我不知道coo_matrix
可能是什么或做什么,但问题在于你的字符串格式。
如果您确定要将字符串元组作为字典键,那么您可以
store["{}".format(row),"{}".format(col)] = "{}".format(value)
"{0}...{1}...{2}"
之类的东西可以处理多个参数,例如
>>> '{0}, {1}, {2}'.format('a', 'b', 'c')
'a, b, c'
>>> '{}, {}, {}'.format('a', 'b', 'c') # 2.7+ only
'a, b, c'
>>> '{2}, {1}, {0}'.format('a', 'b', 'c')
'c, b, a'
>>> '{2}, {1}, {0}'.format(*'abc') # unpacking argument sequence
'c, b, a'
>>> '{0}{1}{0}'.format('abra', 'cad') # arguments' indices can be repeated
'abracadabra'
(直接取自https://docs.python.org/2/library/string.html#format-examples)
但你为什么不这样做store[(row, col)] = value
?