是否有办法开始覆盖文件,当它达到,例如,50 MB的大小?
当前我以:
开头with open("mylogfile.log", "a") as myfile:
myfile.write(something)
我想继续在我的文件末尾添加文本,只要它的大小在50mb以下。然后,我想开始重写,我的意思是保存新的文本行,但删除文件开头的文本。
我该怎么做?
您可以使用path模块来检查大小
在这里有一个更大的想法
Python中的os.path.getsize()方法用于检查指定路径的大小。它以字节为单位返回指定路径的大小。如果文件不存在或无法访问,该方法将引发OSError。
import os
def write(filename,text):
if os.path.size(filename) <= 50*100_000: # is bigger or equal to 50 Million
return False
with open(filename) as file:
file.write(text)
return True