Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 | 31 |
Tags
- 주피터노트북판다스
- python데이터분석
- SQL수업
- 파이썬수업
- 판다스데이터분석
- python수업
- 파이썬데이터분석주피터노트북
- SQLSCOTT
- 팀플기록
- 수업기록
- 주피터노트북그래프
- 주피터노트북
- 파이썬차트
- 판다스그래프
- matplotlib
- 주피터노트북데이터분석
- Python
- 파이썬알고리즘
- 맷플롯립
- 주피터노트북맷플롯립
- sql연습
- sql연습하기
- 파이썬크롤링
- python알고리즘
- SQL
- 데이터분석시각화
- 파이썬시각화
- 파이썬데이터분석
- sql따라하기
- 파이썬
Archives
- Today
- Total
IT_developers
Python 개념 및 실습 - 파일 읽고 쓰기(3) 본문
csv 파일 입출력
import csv 선언하기!
csv : 클래스
# sample1.csv 읽어오기
with open("data/sample1.csv", "r") as f:
# csv 행단위로 읽어옴.
reader = csv.reader(f) # reader : 읽어오기
# 헤더명 제거
next(reader) # ['번호', '이름', '가입일시', '나이'] 제거
print(reader) # <_csv.reader object at 0x000002CE0C3C1720>
print(type(reader))
print(dir(reader))
for c in reader:
print(c)
![](https://blog.kakaocdn.net/dn/b36QPK/btrDFJUrF10/Te8xNlBOK8NvX9XV9uEqzK/img.png)
![](https://blog.kakaocdn.net/dn/kG7K1/btrDGb4b81l/Qj2C8yU6kyZ4MIghwXpiE0/img.png)
![](https://blog.kakaocdn.net/dn/b36QPK/btrDFJUrF10/Te8xNlBOK8NvX9XV9uEqzK/img.png)
![](https://blog.kakaocdn.net/dn/7jywP/btrDJv8qIm5/0mWKs6T6N0WkyO7Jetgyd1/img.png)
# sample2 읽어오기
with open("data/sample2.csv", "r") as f:
reader = csv.reader(f)
for c in reader:
print(c)
![](https://blog.kakaocdn.net/dn/kG7K1/btrDGb4b81l/Qj2C8yU6kyZ4MIghwXpiE0/img.png)
# 옵션 추가하기
with open("data/sample2.csv", "r") as f:
reader = csv.reader(f, delimiter="|") # 옵션 추가 구별해줄 구문을 넣으줌
for c in reader:
print(c)![](https://blog.kakaocdn.net/dn/l0BNq/btrDBtx8A1i/bCKvxQcKDz4bvJ6C1HtpCK/img.png)
![](https://blog.kakaocdn.net/dn/l0BNq/btrDBtx8A1i/bCKvxQcKDz4bvJ6C1HtpCK/img.png)
# csv ==> dict 형태로 읽어오기
with open("data/sample1.csv", "r") as f:
reader = csv.DictReader(f) # 딕셔너리 형태로 읽어오겠다.
for c in reader:
print(c) # {'번호': '9', '이름': '김은미', '가입일시': '2017-02-08 07:44:33', '나이': '51'}
for k, v in c.items():
print(k, v)
print()
![](https://blog.kakaocdn.net/dn/sfjg3/btrDE0O9PKy/hCnMoPzNrOmoPTQpk4Ssbk/img.png)
![](https://blog.kakaocdn.net/dn/sfjg3/btrDE0O9PKy/hCnMoPzNrOmoPTQpk4Ssbk/img.png)
![](https://blog.kakaocdn.net/dn/kFOyn/btrDGIHoS5J/mK1QHgENQfEVuzQ14x19uK/img.png)
# sample3 읽기 (숫자만 들어있음)
with open("data/sample3.csv", "r") as f:
reader = csv.DictReader(f)
reader = csv.reader(f) # 리스트 형태로 읽어옴
for c in reader:
print(c)
![](https://blog.kakaocdn.net/dn/qf6jI/btrDInQnqHL/MpjsH9RPdd5XHKpJNO721K/img.png)
# csv 파일 만들기
# 1차원 리스트 csv파일로 저장
list1 = [1, 2, 3, 4, 5] # list1 = list(range(1,6))
with open("data/sample4.csv", "w") as f:
wt = csv.writer(f)
wt.writerow(list1) # 줄(행) 단위 적겠다
출력문은 안나오고 sample4.csv 파일 생성 확인
# 2차원 리스트
list1 = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12], [13, 14, 15], [16, 17, 18]]
with open("data/sample5.csv", "w", newline="") as f: # newline="" : 엔터 넣지마
wt = csv.writer(f)
# for문을 사용시 조건을 넣을 수 있음
for row in list1:
wt.writerow(row) # 한줄한줄 확인하면서 입력 가능
wt.writerows(list1) # writerrows 한번에 다 입력하겠다.
for문과, writerows 동일하게 출력.
![](https://blog.kakaocdn.net/dn/u8oSz/btrDHd1v4tB/wuU2m9gWu932NvVeRBp3XK/img.png)
'Python' 카테고리의 다른 글
Python 개념 및 실습 - 클래스(1) (1) | 2022.09.11 |
---|---|
Python 개념 및 실습 - 파일 읽고 쓰기(4) (0) | 2022.09.10 |
Python 개념 및 실습 - 파일 읽고 쓰기(2) (0) | 2022.09.09 |
Python 개념 및 실습 - 파일 읽고 쓰기(1) (0) | 2022.09.09 |
Python 개념 및 실습 - 함수(2) (0) | 2022.09.08 |
Comments