2013-10-22 2 views
0

정기적으로 추가 된 CSV 파일에 두 가지 유형의 유사한 데이터가 있습니다. 데이터가 CSV에 들어오는 방식을 제어 할 수는 없지만 CSV를 포맷하여 데이터베이스에 가져올 수있는 파이썬 스크립트를 실행하려고합니다.파이썬을 사용하여 데이터 라인에 쉼표를 포맷/삽입하십시오.

들어오는 원시 데이터는 다음과 같이 : 여기에 내가하고 싶은 것입니다

record, date & time, sensor, height, status 

record, date & time, sensor, height, weight, status 

아이디어는 반복적으로 이러한 데이터를 가지고 높이 뒤에 쉼표를 추가하는 것 같은 어떤 중량 일 경우. - 기본적으로 필드를 추가하고 나는 스크립트를 파일이 업데이트 될 때마다 실행됩니다 의미가

record, date & time, sensor, height, **weight,**status (updated after python script if/then) 

record, date & time, sensor, height, weight, status 

희망을 : 데이터는 기본적으로 다음과 같이 할 수 있도록 기본적으로 빈 필드를 모방.

+0

csv 이스케이프 및 따옴표에 신경을 쓰시겠습니까? – oleg

답변

2
import csv 
import os 
with open('yourfile.csv') as f_in, open('yourfile.csv.temp') as f_out: 
    reader = csv.reader(f_in) 
    writer = csv.writer(f_out) 
    for row in reader: 
     if len(row) == 5: 
      row.insert(4, '') 
     writer.writerow(row) 
os.rename('yourfile.csv.temp', 'yourfile.csv') 
관련 문제