我編寫了一個代碼,在每一輪中生成大量數(shù)據(jù)。所以,我只需要存儲最后 10 輪的數(shù)據(jù)。當(dāng)我添加需要的對象(覆蓋)時,如何創(chuàng)建一個擦除最舊對象的數(shù)據(jù)框?觀察的順序——從舊到新——應(yīng)該保持不變。是否有任何簡單的函數(shù)或數(shù)據(jù)格式可以做到這一點?
1 回答

Smart貓小萌
TA貢獻1911條經(jīng)驗 獲得超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]
為了使其工作,您必須將列表作為參數(shù)傳遞給函數(shù)ins(),以便插入新項目并刪除第 10 個(如果有的話)。
(我認(rèn)為這個問題不是特定于熊貓的,而是一種在數(shù)組中存儲最大數(shù)量項目的方法)
添加回答
舉報
0/150
提交
取消