[Python] 파일 입출력

Narcoker·2023년 3월 28일
0

Python

목록 보기
7/13
post-thumbnail

파일 입출력

open(파일명, 열기 모드, encoding='인코딩')

열기모드

  • r : 읽기
  • a : 이어서 쓰기
  • w : 쓰기
f = open('list.txt', 'w', encoding='utf-8')
# 쓰기 모드로 파일 열기, 있으면 열고 없으면 새로 만듦
f.write('김xx\n')
f.write('이xx\n')
f.write('박xx\n')
f.close() # 파일 닫기
f = open('list.txt', 'r', encoding='utf-8')
# 읽기 모드로 파일 열기
contents = f.read()
print(contents);

f.close() # 파일 닫기
# 한줄씩 파일 읽기
f = open('list.txt', 'r', encoding='utf-8')
for line in f: 
	print(line, end='')
    # end를 ''로 설정하지 않으면 개행이 생길 수도 있다.
f.close()

with

파일을 불러오면 사용 후 닫아줘야한다.
닫지 않으면 자원 누수, 데이터 손상, 파일 충돌 등의 문제가 발생할 수 있다.

파일 닫기를 잊는 것을 방지하기 위해 with 을 사용한다.
with 을 사용한 open 후 블록이 생기는데
이 블록을 다 수행하면 파일 닫기 명령을 지정하지 않아도 파일이 닫힌다.

따라서 가급적이면 파일 입출력 시 with 구문을 사용하는 것이 좋다.

with open('list.txt', 'w', encoding='utf-8') as f: 
	f.write('김xx\n')
    f.write('이xx\n')
    f.write('박xx\n')
    # 파일 닫기
with open('list.txt', 'r', encoding='utf-8') as f: 
	contents = f.read()
    print(contents)
    # 파일 닫기
profile
열정, 끈기, 집념의 Frontend Developer

0개의 댓글