我编写了一个代码,在每一轮中生成大量数据。所以,我只需要存储最后 10 轮的数据。当我添加需要的对象(覆盖)时,如何创建一个擦除最旧对象的数据框?观察的顺序——从旧到新——应该保持不变。是否有任何简单的函数或数据格式可以做到这一点?
1 回答
Smart猫小萌
TA贡献1911条经验 获得超7个赞
你可以使用这个功能:
def ins(arr, item):
if len(arr) < 10:
arr.insert(0, item)
else:
arr.pop()
arr.insert(0, item)
ex = [1, 2, 3, 4, 5, 6, 7, 8, 9]
ins(ex, 'a')
print(ex)
# ['a', 1, 2, 3, 4, 5, 6, 7, 8, 9]
ins(ex, 'b')
print(ex)
# ['b', 'a', 1, 2, 3, 4, 5, 6, 7, 8]
为了使其工作,您必须将列表作为参数传递给函数ins(),以便插入新项目并删除第 10 个(如果有的话)。
(我认为这个问题不是特定于熊猫的,而是一种在数组中存储最大数量项目的方法)
添加回答
举报
0/150
提交
取消