0Pricing
Python Academy · 강의

파일 읽기와 쓰기

read_text와 write_text 사용하기

파일 읽기와 쓰기은(는) CoddyKit의 무료 Python Academy 강의입니다. 이것은 4개 중 2번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Python Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Python Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

pathlib 방식의 파일 입출력

간단한 경우에는 명시적으로 open()을 호출하지 않아도 pathlib 경로로 파일을 직접 읽고 쓸 수 있습니다. read_text, write_text, read_bytes, write_bytes 메서드가 일반적인 작업을 지원합니다.

write_text

write_text()는 문자열을 파일에 쓰며, 파일이 없으면 만들고 기존 내용이 있으면 바꿉니다. 기록한 문자 수를 반환합니다.

from pathlib import Path

p = Path('greeting.txt')
n = p.write_text('Hello, pathlib!')
print('wrote', n, 'characters')

read_text

read_text()는 파일을 열어 전체 내용을 읽은 다음 닫고, 전체 내용을 문자열로 반환합니다.

from pathlib import Path

p = Path('greeting.txt')
p.write_text('Hello, pathlib!')
content = p.read_text()
print(content)

수동으로 닫을 필요 없음

이 도우미 함수들이 파일을 대신 열고 닫아 주므로, 한 번만 읽거나 쓰는 작업에서 with open(...) 블록을 작성하는 번거로움을 피할 수 있습니다.

from pathlib import Path

p = Path('notes.txt')
p.write_text('line one')
print(p.read_text())

인코딩 지정하기

텍스트 인코딩을 제어하려면 encoding 인수를 전달하십시오. 이식성을 위해 UTF-8을 명시적으로 지정하는 것이 안전한 선택입니다.

from pathlib import Path

p = Path('uni.txt')
p.write_text('cafe resume', encoding='utf-8')
print(p.read_text(encoding='utf-8'))

바이트 다루기

이진 데이터에는 write_bytes()와 read_bytes()를 사용합니다. 이 메서드들은 문자열 대신 bytes 객체를 다룹니다.

from pathlib import Path

p = Path('data.bin')
p.write_bytes(b'\x00\x01\x02')
print(p.read_bytes())

추가 기록과 고급 모드

일회성 도우미 함수는 항상 기존 내용을 덮어씁니다. 내용을 추가하거나 스트리밍하려면 Path에서 open()을 호출해 with 블록에서 사용할 수 있는 일반 파일 객체를 얻으십시오.

from pathlib import Path

p = Path('log.txt')
p.write_text('start\n')
with p.open('a') as f:
    f.write('more\n')
print(p.read_text())

한 줄씩 읽기

전체 텍스트를 읽은 다음 줄로 나누거나, 경로를 열고 순회할 수 있습니다. 작은 파일이라면 read_text()의 결과를 나누는 방법이 가장 간단합니다.

from pathlib import Path

p = Path('multi.txt')
p.write_text('a\nb\nc\n')
for line in p.read_text().splitlines():
    print('line:', line)

상위 디렉터리 만들기

상위 디렉터리가 없으면 쓰기 작업이 실패합니다. 먼저 상위 디렉터리에서 mkdir(parents=True, exist_ok=True)를 사용해 폴더 구조를 만드십시오.

from pathlib import Path

p = Path('out/sub/file.txt')
p.parent.mkdir(parents=True, exist_ok=True)
p.write_text('done')
print(p.read_text())

파일 삭제

unlink()로 파일을 삭제합니다. missing_ok=True를 전달하면 파일이 이미 없을 때 오류를 피할 수 있습니다.

from pathlib import Path

p = Path('temp.txt')
p.write_text('bye')
print(p.exists())
p.unlink(missing_ok=True)
print(p.exists())

읽기, 변환, 쓰기

파일을 읽고, 텍스트를 변환한 다음, 다시 쓰는 방식은 흔히 사용하는 패턴입니다. pathlib를 사용하면 이 작업을 깔끔한 세 줄로 처리할 수 있습니다.

from pathlib import Path

p = Path('caps.txt')
p.write_text('hello world')
p.write_text(p.read_text().upper())
print(p.read_text())

빠른 확인

파일이 이미 존재할 때 Path('a.txt').write_text('hi')는 무엇을 하나요?

복습

pathlib로 파일을 읽고 쓰는 방법을 배웠습니다.

  • write_text/read_text는 파일 전체를 문자열로 입출력합니다.
  • write_bytes/read_bytes는 이진 데이터를 처리합니다.
  • 내용을 추가하거나 스트리밍하려면 open()을 사용합니다.
  • mkdir로 상위 디렉터리를 만들고 unlink로 삭제합니다.

자주 묻는 질문

“파일 읽기와 쓰기” 강의는 무료인가요?

네 — “파일 읽기와 쓰기” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Python Academy 강의 전체를 잠금 해제할 수 있습니다. Python Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

“파일 읽기와 쓰기”에서 뭘 배우나요?

read_text와 write_text 사용하기 브라우저에서 직접 실행하는 실습 코드로 Python Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

Python Academy을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 Python Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 2번째 강의입니다.

“파일 읽기와 쓰기” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 Python Academy 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 Python Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. Path 객체
  2. 파일 읽기와 쓰기
  3. 글로빙과 반복 처리
  4. 경로 조작
← Python Academy(으)로 돌아가기