python 數(shù)據(jù)存儲,寫入
'''
以下是同一個功能的代碼段落,但是所耗時間卻是天差地別
'''
st = time.time()
# 字典格式 共耗時40s dsd = {} # for key, value in file_h.items(): # if value in hash_values: # dsd[value] = dsd.get(value, []) + [key] # 列表格式 共耗時32s # keys = [] # values = [] # files = list(file_h.keys()) # haxis = list(file_h.values()) # for file, haxi in zip(files, haxis): # if haxi in keys: # index = keys.index(haxi) # values[index].append(file) # else: # keys.append(haxi) # values.append([file]) # 字典讀取速度,列表的寫入速度 共耗時0.07s keys = {} values = [] files = list(file_h.keys()) haxis = list(file_h.values()) for file, haxi in zip(files, haxis): if haxi in keys: index = keys[haxi] values[index].append(file) else: keys[haxi] = len(keys) values.append([file]) print(f'查重共耗時:{time.time() - st}')
列表的寫入速度快,讀取速度慢;
字典的寫入速度慢, 讀取速度快;
python在檢索list的時候是比較慢的,python在檢索字典的時候速度是比較快的。

浙公網(wǎng)安備 33010602011771號