python数据结构-如何实现用户的历史记录功能

如何实现用户的历史记录功能

使用collections中的deque

from collections import deque
dq = deque([], 5)
dq.append(1)
dq.append(2)
dq.append(3)
dq.append(4)
dq.append(5)
print(dq) #deque([1, 2, 3, 4, 5], maxlen=5)

dq.append(6)
print(dq) #deque([2, 3, 4, 5, 6], maxlen=5)

分析:如果程序退出,保存在内存中的历史记录将会被情况,应当保存在磁盘中

以方便下次访问程序时从新加载

使用pickle模块将历史记录存储到硬盘中

from collections import deque
import pickle
dq = deque([], 5)
dq.append(1)
dq.append(2)
dq.append(3)
dq.append(4)
dq.append(5)
print(dq) #deque([1, 2, 3, 4, 5], maxlen=5)

dq.append(6) 
print(dq) #deque([2, 3, 4, 5, 6], maxlen=5)

pickle.dump(dq, open('his.pkl', 'wb')) #write
res = pickle.load(open('his.pkl', 'rb')) #read
res_list = list(res)
print(res_list) #[2, 3, 4, 5, 6]

参考资料:python3实用编程技巧进阶

猜你喜欢

转载自www.cnblogs.com/marton/p/10745808.html