【发布时间】:2016-12-13 15:24:26
【问题描述】:
我正在尝试将字典写入(并从中读取)一个文件,其中键是元组和 int 的组合,如下所示:
Q = {((True, False, 1, 0), 1): 100}
我尝试过 pickle、json 和 csv,但似乎无法解决复杂的关键问题,而且我似乎找不到太多关于此类字典的文档。
#json code which works for a tuple only as the key
def write_file(mat):
with open('file.json', 'w') as f:
json.dump(mat, f)
def read_file():
with open('file.json', 'r') as f:
try:
data = json.load(f)
except ValueError:
data = {}
return data
【问题讨论】:
-
你能发布堆栈跟踪(而不是捕获错误吗?)
-
pickle应该可以轻松完成。您对此有什么具体问题 - 或者您对其他问题有什么偏好? -
@Jean-François Fabre:还没有到那一步——
write_file():TypeError: key ((True, False, 1, 0), 1) is not a string中发生了未处理的异常
标签: python json dictionary tuples pickle