将目录中的多个指定.txt文档写入另一个txt文件中

版权声明:https://mp.csdn.net/configure https://blog.csdn.net/jieniyan2680/article/details/89180441

txt 文档内容格式如下

CPUUsageSY: 0.102456422845
MemTotal: 32767.4648438
Disk_Root_Used: 38.6357421875
MemFree: 30094.15625
Disk_Root_Size: 599.655273438
Disk_Root_Avail: 561.01953125
CPUUsageUS: 0.0723221808317
CPUUsageID: 99.8252213963
MemUsed: 2673.30859375
LoginCurrentCnt: 2

如 把deal.txt,111.txt (它们的内容格式如下)中的cup使用率 内存使用率 根磁盘使用率的计算结果写入txt文档
cup使用率 =CPUUsageSY+CPUUsageUS
内存使用率 =MemUsed/MemTotal
根磁盘使用率=Disk_Root_Used/Disk_Root_Size

# -*- coding: utf-8 -*-
__author__ = 'm'
__date__ = '2019/4/8'
# -*- coding: utf-8 -*-
import os
import sys
import json
default_encoding = 'utf-8'
if sys.getdefaultencoding() != default_encoding:
    reload(sys)
    sys.setdefaultencoding(default_encoding)

name_list = ['deal','11']
record_info = {}
files = os.listdir(r'.')
for txt_file in files:
    for name in name_list:
        if name in txt_file:
            #print txt_file
            file_name = txt_file.split('.')[0]
            record_info[file_name] = {'cpu_used':0,'mem_used':0,'disk_used':0}
            f = open(txt_file, 'r')
            #print 'txt_file_name = %s' % txt_file
            sum_num = 0
            cpu_list = []
            for line in f.readlines():
                if line == '\n':
                    pass
                else:
                    small_list = float(line.split(': ')[1].replace('\n', ''))
                    cpu_list.append(small_list)

            #print cpu_list
            cpu_num = cpu_list[0] + cpu_list[6]
            record_info[file_name]['cpu_used'] = cpu_num
            mem_num = cpu_list[8] / cpu_list[1]
            record_info[file_name]['mem_used'] = mem_num
            disk_num = cpu_list[2] / cpu_list[4]
            record_info[file_name]['disk_used'] = disk_num
        else:
            pass
print record_info
#print type (record_info )
re=str(record_info )
#写入到json
 with open('record.json','w') as json_file:
     json.dump(record_info, json_file, ensure_ascii=False, indent=4)
#with open("test.txt", "w") as f:
    #f.write(re)
    #f.write('\n')

运行结果: 会在当前目录下新建record.json
其内容如下

{
    "111": {
        "mem_used": 0.08158423626891667, 
        "cpu_used": 0.1747786036767, 
        "disk_used": 0.06442992148804083
    }, 
    "deal": {
        "mem_used": 0.08158423626891667, 
        "cpu_used": 0.1747786036767, 
        "disk_used": 0.06442992148804083
    }
}

猜你喜欢

转载自blog.csdn.net/jieniyan2680/article/details/89180441