2017-12-16 1 views
1

CSV 파일의 데이터를 파이썬 2.7 창 7의 파일로 변환하려고합니다. 파이썬은 CSV를 각각의 CSV 파일로 변환 할 때마다 파일 및 이름을 지정하지만 여기에 문제가 있습니다. 나는 하나의 CSV 파일의 데이터가 각각의 엑셀 파일과 두 번째 엑셀 파일의 두 번째 CSV 데이터에 복사되기를 원하지만 내가 작성하는 실수는 첫 번째 엑셀이 생성 된 후이 첫 번째 엑셀의 데이터가 복사됩니다 두 번째 Excel 파일로. 그래서 두 번째 엑셀 CSV 파일에서 자신의 데이터 이외에 엑셀의 데이터를 가지고있다. 그리고 3rd 엑셀은 1 엑셀 + 2 엑셀과 3 엑셀의 데이터를 가지고 있습니다. 누군가 내가 뭘 잘못하고 있다고 말할 수 있습니까?는 파이썬에서 n 개의 CSV 파일로부터 Excel 파일을 만듭니다.

import xlwt 
import os 
path = ('C:\Users\PETERemote\PycharmProjects\untitled\distributions') 
data = [] 
count =1 
count2 = 0 
for files in os.listdir(path): 
    if files.endswith("COUNT16_DISTRIBUTION" + str(count*1) + ".csv"): 
     count += 1 
count2 = count-1 
print(count2) 
#print(count2 = count) 

count3=1 
file_name = "COUNT16_DISTRIBUTION" + str(count3*1) + ".csv" 
while (count3<=count2): 
    with open(file_name) as f: 
     for line in f: 
      data.insert([word for word in line.split(" ") if word]) 
    wb = xlwt.Workbook() 
    output_file = open("COUNT16_DIST" + str(count3 * 1) + ".xls", 'w') 
    count3 += 1 
    sheet = wb.add_sheet("Sheet1") 
    for row_index in range(len(data)): 
     for col_index in range(len(data[row_index])): 
      sheet.write(row_index, col_index, data[row_index][col_index]) 
    wb.save(output_file) 
    output_file.close() 
+0

당신이 게시물에 코드의 들여 쓰기를 정정 할 수 있습니까? –

답변

1

에만 data에 일을 추가 첨부 는 코드입니다.

그래서 각 출력 파일은 지금까지 모든 입력 파일의 내용을 가지고 있습니다.

당신은 출력 파일을 저장 한 후 데이터를 바로 삭제해야

:

wb.save(output_file) 
data = [] 
+0

피터 감사합니다, 제 실수를 봅니다! 그것은 작동합니다. – anvinder

관련 문제