每次运行时创建csv文件

时间:2015-12-14 06:01:38

标签: python-2.7 csv

我有一个应用程序,最终创建csv文件以保存结果。我希望我的应用程序在每次运行时生成不同的csv文件。我的应用程序生成如下报告

def writeToCSVFile(self,csvFilePath,testResultList):
    #Open a CSV file object
    reportname = "toxedo_report0.csv"
    csvFilObj=open(csvFilePath+reportname,"wb")
    #writing CSV file with the statistical values
    mywritter=csv.writer(csvFilObj)
    for rowVal in testResultList:
        mywritter.writerows(rowVal)
    #Closing the CSV file object
    csvFilObj.close()

testResultList是一个类型列表。有没有办法避免硬编码报告名称?我想知道如何在每次运行中创建不同的报告。

first run - C:/report/toxedo_report0.csv
            C:/report/toxedo_report1.csv
            C:/report/toxedo_report2.csv

1 个答案:

答案 0 :(得分:1)

只需使用其他参数counter

def writeToCSVFile(self,csvFilePath,testResultList, counter):
    #Open a CSV file object
    reportname = "toxedo_report{}.csv".format(counter)
    csvFilObj=open(csvFilePath+reportname,"wb")
    #writing CSV file with the statistical values
    mywritter=csv.writer(csvFilObj)
    for rowVal in testResultList:
        mywritter.writerows(rowVal)
    #Closing the CSV file object
    csvFilObj.close()

这是重要的一句话:

reportname = "toxedo_report{}.csv".format(counter)

{}将替换为counter中的数字。

现在这样打电话:

首先运行:

inst.writeToCSVFile(csvFilePath, testResultList, 0)

第二轮:

inst.writeToCSVFile(csvFilePath, testResultList, 1)

此处inst是具有方法writeToCSVFile

的类的实例