老忘記,記錄。
創建字典
# 直接創建
f = {}
# 賦值創建
f = {'spam':1, 'egg':2, 'bar':3}
# 二元組創建
list = [('spam', 1), ('egg', 2), ('bar', 3)]
dic = dict(list)
print(dic) # output: {'bar': 3, 'egg': 2, 'spam': 1}
# 統一賦值
dic = dict.fromkeys(range(3), 'x')
print(dic) # output: {0: 'x', 1: 'x', 2: 'x'}
# 兩個numpy數組一一對應創建。 注意這兩個變量一維,一樣長。
pred2gt = dict(zip(range(gt_index.shape[0]), gt_index))
更新/賦值字典
更新/賦值 通用
D = {'one': 1, 'two': 2}
D.update({'three': 3, 'four': 4}) # 更新/賦值 D:{'one': 1, 'four': 4, 'six': 6, 'two': 2, 'five': 5, 'three': 3}
dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
dict['Age'] = 8 # 更新/賦值
查看字典中鍵值信息
# 查看鍵值對
pred2gt.items()
# 查看特定key的value,數字沒引號,字符有引號。
pred2gt[0]
刪除鍵
比如這樣刪除某一個鍵值爲特定數字的鍵。
for i in range(1000):
if dic[i]==0: del dic[i]
抽離鍵/鍵值
key_list = [ key for key,value in dic.items() ]
保存字典到json
json_path = ...
with open(json_path, 'w') as json_file:
json_file.write(json_str)