ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python读csv文件写txt文件

2022-05-04 13:01:08  阅读:171  来源: 互联网

标签:文件 disk Network temp python Memory date csv cpu


# -*- coding:UTF-8 -*-
import os
import io
import os.path
import shutil
import csv
import numpy as np

def writefile_title(path,reportdate):
reportfile = path + '\\' + reportdate
file=open(reportfile,'w')


def findfile(path_report,summary):
i=0
file_dir=[]
for root, dirs, files in os.walk(path_report):
for file_name in files:
if summary in file_name:
result=os.path.join(root, file_name).replace('\\', '/')
i += 1
file_dir.append(result)
print(file_dir)
return file_dir

def writefile_content(file_dir,reportdate):
l = len(file_dir)
reportfile = path + '/' + reportdate
#f_2 = io.open(str(reportfile), "w")
lable=[]
total_date=[]
cpu_max=[]
disk_max=[]
Memory_max=[]
Network_max=[]

for i in range(0,l):
cpu_date = []
disk_date=[]
Memory_date=[]
Network_date=[]

file=file_dir[i]
array_1 = file.split('/')
lable.append(array_1)
l2=len(lable)
lable_name=[]
for k in range(0,l2):
h=lable[k]
lable_name.append(h[-2])

with open(file,'rt') as csvfile:
reader = csv.reader(csvfile)
rows_cpu = [row[1] for row in reader]
with open(file,'rt') as csvfile:
reader = csv.reader(csvfile)
rows_disk=[row[2] for row in reader]
with open(file,'rt') as csvfile:
reader = csv.reader(csvfile)
rows_Memory=[row[3] for row in reader]
with open(file,'rt') as csvfile:
reader = csv.reader(csvfile)
rows_Network=[row[4] for row in reader]

rows_cpu=rows_cpu[1:]
l_cpu = len(rows_cpu)
temp_cpu=float(0)

rows_disk = rows_disk[1:]
temp_disk = float(0)

rows_Memory = rows_Memory[1:]
temp_Memory = float(0)

rows_Network = rows_Network[1:]
temp_Network = float(0)


for i in range(0,l_cpu):
date_cpu_str=rows_cpu[i]
date_cpu_int=float(date_cpu_str)
cpu_date.append(date_cpu_int)

date_disk_str = rows_disk[i]
date_disk_int = float(date_disk_str)
disk_date.append(date_disk_int)

date_Memory_str = rows_Memory[i]
date_Memory_int = float(date_Memory_str)
Memory_date.append(date_Memory_int)

date_Network_str = rows_Network[i]
date_Network_int = float(date_Network_str)
Network_date.append(date_Network_int)

if cpu_date[i]>=temp_cpu:
temp_cpu=cpu_date[i]
else:
temp_cpu=temp_cpu

if disk_date[i] <= temp_disk:
temp_disk = disk_date[i]
else:
temp_disk = temp_disk

if Memory_date[i]>=temp_Memory:
temp_Memory=Memory_date[i]
else:
temp_Memory=temp_Memory

if Network_date[i]>=temp_Network:
temp_Network=Network_date[i]
else:
temp_Network=temp_Network

cpu_max.append(temp_cpu)
disk_max.append(temp_disk)
Memory_max.append(temp_Memory)
Network_max.append(temp_Network)

# print(cpu_max)
# print(disk_max)
# print(Memory_max)
# print(Network_max)
# print(lable)

total_date.append(lable_name)
total_date.append(cpu_max)
total_date.append(disk_max)
total_date.append(Memory_max)
total_date.append(Network_max)
print(total_date)
t=''
total_date = np.array(total_date)
row = total_date.shape[0]
col = total_date.shape[1]
with open(reportfile, 'w') as q:
q.write('Lable,CPU,Disks I/O,Memory,Network I/O\n')
for i in range(0,col):
for j in range(0,row):
t = t + str(total_date[j][i]) + ','
q.write(t[0:len(t)-1])
q.write('\n')
t = ''


if __name__ == '__main__':
summary='PerfMon-Metrics-Collector.csv'
reportdate='reportdate.txt'
path_report=r'D:\WorkSpace\apache-jmeter-3.1\TestReport'
path=r'D:\WorkSpace\apache-jmeter-3.1\TestReport'
old_file=path+'\\'+summary
writefile_title(path, reportdate)
file_dir=findfile(path_report, summary)
writefile_content(file_dir, reportdate)

标签:文件,disk,Network,temp,python,Memory,date,csv,cpu
来源: https://www.cnblogs.com/yan-test/p/16220841.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有