2024-05-08 15:49:22 发布
网友
我正在使用io模块的输出流并写入文件。我希望能够检测到何时将1G数据写入一个文件,然后开始写入第二个文件。我似乎不知道如何确定已写入文件的数据量。
有什么简单的内置功能吗?或者我可以在每次写之前手动计算字节数吗?
如果您将此文件用于日志记录目的,我建议使用日志记录模块中的RotatingFileHandler,如下所示:
import logging import logging.handlers file_name = 'test.log' test_logger = logging.getLogger('Test') handler = logging.handlers.RotatingFileHandler(file_name, maxBytes=10**9) test_logger.addHandler(handler)
注意:你也可以使用这个方法,即使你不使用它来记录,如果你喜欢做黑客:)
请参见stream对象上的tell()方法。
请参阅Python文档中的File Objects,特别是tell()。
示例:
>>> f=open('test.txt','w') >>> f.write(10*'a') >>> f.tell() 10L >>> f.write(100*'a') >>> f.tell() 110L
如果您将此文件用于日志记录目的,我建议使用日志记录模块中的RotatingFileHandler,如下所示:
注意:你也可以使用这个方法,即使你不使用它来记录,如果你喜欢做黑客:)
请参见stream对象上的tell()方法。
请参阅Python文档中的File Objects,特别是tell()。
示例:
相关问题 更多 >
编程相关推荐