● 해당 파일은 아래와 같은 정보가 저장되어 있는 csv 파일 입니다.
['지점', '일시', "평균기온('C)", "최저기온('C)", "최고기온('C)"]
● newline='' : 파일을 쓸 때 행의 끝에 빈 줄을 삽입하지 말라는 옵션입니다. 만약 이 옵션이 생략되면 생성된 CSV 파일의 각 행에 빈 행이 추가됩니다.
●month_temp.csv 파일을 읽어 일교차를 구하고 -> 새롭게 구성된 데이터를 CSV 파일에 저장 해보겠습니다.
import csv
# file1은 첨부된 파일
file1 = open('month_temp.csv', 'r', encoding='utf-8')
# file2는 새로 만들어서 내용을 입력할 파일
file2 = open('month_temp2.csv', 'w', encoding='utf-8', newline='')
# file1을 한줄씩 읽어서 lines에 넣기
lines = csv.reader(file1)
# csv.writer() 메소드를 이용하여 writer의 객체인 wr을 생성, 데이터를 한행씩 wr객체에 추가 가능
wr = csv.writer(file2)
#wr.writerow() 메소드를 이용하여 wr 객체에 CSV 파일의 헤더가 되는 제목 행추가
#리스트형의 데이터
wr.writerow(['일자', '최저기온', '최고기온', '일교차'])
# 헤더를 건너뜀
next(lines)
for line in lines:
diff = float(line[4]) - float(line[3]) #일교차구하기(최고기온-최저기온)
diff = format(diff, '.1f')
#format() 함수를 이용하여 변수 diff를 소수점 이하 1자리까지만 표시
wr.writerow([line[1], float(line[3]), float(line[4]), diff])
print('파일 쓰기 완료!')
file1.close()
file2.close()
파일 쓰기 완료!
코드가 저장된 파일에 month_temp2.csv라는 파일이 생성되어 있을 것이다.
출처: 예제 중심 파이썬 입문
궁금한 부분이 있으면 댓글 부탁드립니다^^
'• programming language > python' 카테고리의 다른 글
[파이썬 개념] 데이터 분석 5- csv 파일 열기, 여러개의 특정 문자 찾기 (0) | 2022.07.20 |
---|---|
[파이썬 개념] 데이터 분석 4- csv 파일에서 특정 문자 찾기(csv파일첨부) (0) | 2022.07.20 |
[파이썬 개념] 데이터 분석 2- 데이터 헤더 추출, 제외, iter(), next() (0) | 2022.07.20 |
[파이썬 개념] 데이터 분석 1- CSV 파일 읽기 (0) | 2022.07.20 |
[파이썬 연습문제] 파이썬 클래스, 객체, 속성, 메소드, 인스턴트, 생성자 (0) | 2022.07.20 |