3 回答

TA貢獻1779條經驗 獲得超6個贊
這個功能可能會幫助你:
from datetime import date, timedelta
def del_old():
limit = "".join(str(date.today() - timedelta(days = 10)).split("-"))
with open("error.log", "r") as file:
data = file.readlines()
with open("error.log", "w") as file2:
for line in data:
(int(line.lstrip()[:8]) > int(limit)) and file2.write(line)

TA貢獻1805條經驗 獲得超10個贊
另一種方法是創建一個新文件:
from datetime import date
errorfile = open(f'error.log', 'r')
errorNew = open(f'error_new.log', 'a+')
current_date = date.today()
for line in errorfile:
date_line = date(int(line[0:4]), int(line[4:6]), int(line[6:8]))
diff = (current_date - date_line)
if diff.days < 10:
errorNew.write(line)
添加回答
舉報