利用Python读取CSV文件并统计数据

如下CSV文件记录了一下文件的大小,每列希望汇总求和。由于文件大小带有不同的单位GB、MB、KB,在CSV或EXCEL中直接统计也不方便,使用python小脚本可以简单解决以上问题。

利用Python读取CSV文件并统计数据_第1张图片

代码如下:

#coding=utf-8
import csv
#import re
#拓展:正则表达式 提取字符串中数字
f = open('19Q2_E3DCM.csv')
L=list(csv.reader(f))
##print(L)
##print(len(L))

def Sum_Size(size_list):#列表元素大小统计函数
    sum_GB = sum_MB = sum_KB = 0
    for size in size_list:
        if 'GB' in size:            
            sum_GB += float(size.replace('GB',''))
        elif 'MB' in size:
            sum_MB += float(size.replace('MB',''))
        elif 'KB' in size:
            sum_KB += float(size.replace('KB',''))
        else:
            print('{}数据有误请确认!'.format(size))                        
    sum_size = sum_GB + sum_MB/1024 + sum_KB/(1024**2)
    return sum_size


for i in range(5):#第i列
    L_colomn = []
    for j in range(len(L)):#第j行
        L_colomn.append(L[j][i])
    sum_size = Sum_Size(L_colomn)
    print('第{0}列合计为{1:.2f}GB'.format(i+1,sum_size))


经以往数据的统计结果测试,运行成功:

利用Python读取CSV文件并统计数据_第2张图片

你可能感兴趣的:(工作,python)