python--文件处理-实现实时log记录

#!/usr/bin/python3
# -*- coding: utf-8 -*-
# @Date  : 2021/5/26
# @Name  : ZhouZongXin

"""
在一个文件中不间断写下如下内容
1. 2020-01-01  14:15:16
2. 2020-01-01  14:15:18
3. 2020-01-01  14:15:20

要求:
每个时间占一行,每隔2秒写入一行
当程序终止以后下次启动要求需要衔接继续写
每写一行都要在文件中显示
"""
import os
import time

PAth = os.path.dirname(__file__)
file = os.path.join(PAth, "test01.txt")


def log():
    f = open(file, 'a+', buffering=1)  # buffering=1行缓冲,遇到换行缓冲
    count = 1
    # 0:表示文件开头
    # 1:表示当前位置
    # 2:表示文件末尾
    f.seek(0, 0)  # 设置偏移量位置(从开始向前移动0个字节)
    for _ in f:  # 因为要有序号衔接记录,所以需要遍历原log内有多少行文件,在用count序号+=1。
        count += 1  # 当遍历结束后就是最新的log行数,此时在走下方的while循环读写

    while True:
        print(f.readline())
        data = time.strftime(f'{count}. %Y-%m-%d %H:%M:%S\n', time.localtime())
        f.write(data)
        time.sleep(2)
        count += 1  # 每写一行统计+1次,作为下次编写的序号


log()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

z千鑫

在线乞讨,行行好吧!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值