python读取txt提取信息

  • open: 按读/写模式打开文件
    file = open('路径/test_ntpd.txt','r') # 读取模式
    file.close() # 关闭文件
    
  • readline: 读取一行, 返回字符串
    line_data = file.readline() # 放到循环中, 一行行读取
    if line_data == '': # 读到最后, 退出循环
        break
    
  • find: 在一个字符串中找子串出现的位置, 找不到返回-1
    time_flag = line_data.find("*192.7.7.128")
    if time_flag == 0: # 寻找开投行有该子串的行
        data_offset.append(line_data[-15:-9]) # 找到后将该行末的数字加在列表后
    
data_offset = []
file = open('FileR.txt','r')  #打开文件
while True:
    line_data = file.readline() #读取所有行
    if line_data == '':
        break

    ntpdate_flag = line_data.find("ntpdate")
    if ntpdate_flag != -1:
        data_offset.append('ntpdate')

    time_flag = line_data.find("*192.7.7.128")
    if time_flag == 0:
        data_offset.append(line_data[-15:-9])
        
file.close()
file_W = open('FileW.txt','w')  #打开文件
for line in data_offset:
    file_W.write(line)
    file_W.write('\n')

被读取文件示例, 读取*192.7.7.128开头的行的倒数第二个数字并存储

25 Sep 10:20:31 ntpdate[29398]: adjust time server 192.7.7.128 offset 0.000788 sec
\n
Sun Sep 25 10:21:35 CST 2022
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 192.7.7.128   .LOCL.           1 u   63   64    1   10.010    1.781   0.000
\n
Sun Sep 25 10:22:39 CST 2022
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 192.7.7.128   .LOCL.           1 u   61   64    3   10.619    1.484   0.297
\n
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值