我使用Python创建了一个CSV文件。但是规模很大

时间:2018-04-26 01:05:02

标签: python csv

我有以下用于创建CSV文件的代码:

import csv
srcFile = open("C:\Users\XXXX\Expenses.csv","r")
data = srcFile.read()

srcList = data.split("\n")

colNames = srcList[0].split(",")
header = srcList[1]

sheetData = srcList[2:]
final_data = []
expense_data = []

for row in sheetData:
    split_row = row.split(",")
    final_data.append(split_row)

for row in range(0, len(final_data)-1):
    for col in range(3, 30):
        loc = final_data[row][0]
        opsheet = final_data[row][1]
        rowNum = final_data[row][2]
        colName = colNames[col]

        str1 = "='\\\xxxxxxx\xxxx\xxx\[APR_"
        str2 = "_DATA.xlsm]"
        str3 = "\'!"
        str4 = "$"
        finalStr = str1 + loc + str2 + opsheet + str3 + colName + str4 + rowNum
        final_data[row][col] = ""

with open("c:\users\xxxxx\new_expenses.csv", "wb") as f:
    fwriter = csv.writer(f)
    fwriter.writerows(final_data)

我是Python的初学者,我知道这段代码不符合标准或真正的代码方式。但是这段代码工作正常并创建了一个CSV文件。

现在的问题是这个文件已经被其他人创建了,并且我将其复制用于其他目的,包括新数据和所有内容。之前创建的现有文件大小仅为30MB。但是,在此方法中创建的文件为180MB,需要花费大量时间才能打开。

原始文件只是一个工作表,包含51,000行和20个列,每个单元格引用网络位置工作簿中的某个单元格。

关于如何减小尺寸的任何想法?或是什么导致了巨大的? 另外作为初学者,我们非常感谢任何改进代码的建议/反馈。在此先感谢!!

0 个答案:

没有答案