Python中的Excel文本会覆盖现有数据

时间:2018-02-19 23:31:08

标签: python excel parsing

我有一个小脚本,我正在尝试将数据从文本文件解析为Excel文件,而不是直到计数器直到166它停在134然后什么都不做。 我也有文件关闭操作,但它不会关闭文件,看起来脚本继续运行。 有什么想法吗?我做错了什么?

path = ('C:\\Users\\40081\\PycharmProjects\\abcd')
#file_name = open('parsed_DUT1.txt', 'r')
file_name = 'parsed_DUT1.txt'
count=1


for line in file_name:
    inputfile = open(file_name)
    outputfile = open("parsed_DUT1" + '.xls', 'w+')
    while count < 166:
        for line in inputfile:
            text = "TestNum_" + str(count*1)
            if text in line :
                #data = text[text.find(" ")+1:].split()[0]
                outputfile.writelines(line)
                count = count+1
    inputfile.close()
    outputfile.close()

1 个答案:

答案 0 :(得分:1)

w+

  

打开文件进行书写和阅读。覆盖现有的   文件是否存在。如果该文件不存在,则创建一个新文件   阅读和写作的文件。

您正在以w+模式打开输出文件,每次都会覆盖它。试试

outputfile = open("parsed_DUT1" + '.xls', 'a') # 'a' opens a file for appending.

我还建议您使用with声明处理文件:

with open(file_name) as inputfile, open("parsed_DUT1" + '.xls', 'a') as outputfile:
    # do stuff with input and output files