본문 바로가기
카테고리 없음

코딩 초보를 위한 파이썬 파일 입출력 기초

by 가치정보인 2025. 3. 17.
반응형

 

파이썬은 초보 개발자들이 배우기에 가장 쉬운 프로그래밍 언어 중 하나입니다. 특히 파일 입출력은 데이터를 저장하고 불러오는 데 필수적인 기능으로, 기초적인 사용법을 익히는 것이 중요합니다. 이 글에서는 파일을 생성하고, 읽고, 쓰는 방법부터 안전하게 파일을 다루는 방법까지 초보자를 위한 친절한 가이드를 제공합니다.

1. 파일 입출력 기초 – 파일 열기와 닫기

파이썬에서 파일을 다루기 위해서는 먼저 파일을 열어야 합니다. 이를 위해 open() 함수를 사용합니다. 파일을 열 때는 파일 모드를 지정해야 하며, 가장 많이 사용되는 모드는 다음과 같습니다.

  • 'r' (읽기 모드) – 파일을 읽기 전용으로 엽니다.
  • 'w' (쓰기 모드) – 파일을 새로 만들거나 기존 내용을 덮어씁니다.
  • 'a' (추가 모드) – 기존 파일의 끝에 새로운 내용을 추가합니다.

다음은 파일을 열고 닫는 기본적인 방법입니다.

# 파일 열기
file = open('example.txt', 'w')  # 쓰기 모드로 파일 열기
file.write("Hello, Python!")  # 파일에 내용 작성
file.close()  # 파일 닫기

하지만, 파일을 다룰 때는 항상 close()를 호출해야 하는데, 이를 잊어버리는 경우가 많습니다. 이를 방지하기 위해 with 문을 사용하는 것이 좋습니다.

# with 문을 사용한 파일 열기
with open('example.txt', 'w') as file:
    file.write("Hello, Python!")
# with 문을 사용하면 자동으로 파일이 닫힘

이 방법을 사용하면 코드가 더 깔끔해지고, 예외가 발생하더라도 파일이 자동으로 닫혀 안정성이 높아집니다.

2. 파일에서 데이터 읽기 – 여러 가지 방법

파일을 읽는 방법에는 여러 가지가 있으며, 필요에 따라 적절한 방법을 선택해야 합니다.

1) read()를 사용한 전체 읽기

with open('example.txt', 'r') as file:
    content = file.read()  # 파일 전체 읽기
    print(content)

이 방법은 파일의 모든 내용을 한 번에 읽습니다. 그러나 파일 크기가 클 경우 메모리를 많이 사용할 수 있습니다.

2) readline()을 사용한 한 줄씩 읽기

with open('example.txt', 'r') as file:
    line = file.readline()  # 첫 번째 줄 읽기
    print(line)

이 방법은 한 줄씩 읽기 때문에 메모리 부담이 적습니다.

3) readlines()를 사용한 여러 줄 읽기

with open('example.txt', 'r') as file:
    lines = file.readlines()  # 모든 줄을 리스트 형태로 읽기
    print(lines)

파일의 모든 줄을 리스트로 반환하기 때문에 각 줄을 개별적으로 처리할 수 있습니다.

3. 파일에 데이터 쓰기 – 덮어쓰기 vs 추가하기

파일에 데이터를 쓸 때는 기존 내용을 덮어쓸 것인지, 새로운 내용을 추가할 것인지 선택해야 합니다.

1) 'w' 모드로 덮어쓰기

with open('example.txt', 'w') as file:
    file.write("새로운 내용이 작성됩니다.\n")

이 모드는 기존 내용을 모두 삭제하고 새로운 내용을 작성합니다. 기존 내용을 유지하려면 'a' 모드를 사용해야 합니다.

2) 'a' 모드로 기존 내용에 추가하기

with open('example.txt', 'a') as file:
    file.write("추가된 내용입니다.\n")

이 모드는 기존 내용은 유지한 채 새로운 내용을 추가합니다.

결론

파일 입출력은 데이터 저장과 처리를 위한 필수적인 기능으로, 초보 개발자들도 쉽게 익힐 수 있습니다. open() 함수와 with 문을 적절히 활용하면 더욱 안전하고 효율적으로 파일을 다룰 수 있습니다. 또한, 파일을 읽는 방법과 쓰는 방법을 잘 익혀야 다양한 개발 프로젝트에서 유용하게 활용할 수 있습니다. 지금 배운 내용을 바탕으로 직접 파일을 다뤄보세요!

반응형