我編寫了一個代碼,在每一輪中生成大量數據。所以,我只需要存儲最后 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
提交
取消