파이썬 파일 입출력 기초
파이썬에서 파일 입출력 작업은 데이터를 저장하고 읽는 데 매우 중요한 기능입니다. 프로그램에서 생성된 데이터나 정보를 영구적으로 보관하고, 필요할 때마다 다시 활용할 수 있게 해줍니다. 이번 포스트에서는 파이썬에서 파일을 다루는 기초적인 방법에 대해 알아보겠습니다.

파일 입출력이란?
파일 입출력은 프로그램이 데이터와 외부 파일 간의 상호작용을 할 수 있게 해주는 과정입니다. 이는 파일 시스템과의 소통을 통해 이루어지며, 주로 텍스트 기반의 파일이나 바이너리 형식의 파일을 사용합니다. 파이썬은 내장된 open()
함수를 통해 파일을 열고, read()
, write()
등 다양한 메서드를 활용하여 데이터를 읽고 쓸 수 있습니다.
open() 함수와 파일 모드
파일을 열 때는 open()
함수를 사용해야 하며, 이 함수는 두 개의 주요 인자를 필요로 합니다. 첫 번째 인자는 열고자 하는 파일의 경로 또는 이름이고, 두 번째 인자는 파일을 열 때 사용할 모드입니다. 파이썬에서 제공하는 파일 모드는 다음과 같습니다:
r
: 읽기 전용 모드 (기본값)w
: 쓰기 모드 (파일을 새로 만들거나 기존 파일을 덮어씀)a
: 추가 모드 (기존 파일의 뒤에 내용을 덧붙임)x
: 파일이 존재하는 경우 오류 발생 (새롭게 생성)b
: 바이너리 모드 (데이터를 이진 형식으로 처리)t
: 텍스트 모드 (기본값)+
: 읽기와 쓰기를 동시에 가능하게 함
예를 들어, open('파일이름.txt', 'r')
는 파일을 읽기 전용 모드로 열고, open('파일이름.txt', 'w')
는 쓰기 모드로 파일을 엽니다.
파일을 열고 내용 쓰기
먼저 파일에 내용을 작성해 보겠습니다. 아래의 코드는 특정 파일을 열고, 텍스트를 기록하는 방법을 보여줍니다.
my_file = open("example.txt", "w", encoding="utf-8")
my_file.write("이것은 파이썬 파일 입출력 예제입니다.\n")
my_file.write("여기에 여러 줄을 추가할 수 있습니다.")
my_file.close()
위 코드에서 example.txt
라는 파일을 쓰기 모드로 열어 텍스트를 작성한 후 마지막에 close()
메서드를 호출하여 파일을 닫았습니다. 파일을 닫는 것은 중요합니다. 파일 작업이 완료된 후 데이터가 제대로 저장되도록 해야 하기 때문입니다.
파일에 내용 추가하기
기존 파일에 내용을 추가하고 싶을 때는 a
모드를 사용합니다. 다음은 이전에 작성한 파일에 내용을 추가하는 예입니다.
my_file = open("example.txt", "a", encoding="utf-8")
my_file.write("\n여기서는 추가적인 정보가 덧붙여집니다.")
my_file.close()
이번 예제에서는 기존에 있던 내용 뒤에 줄을 추가했습니다. 주의할 점은, write()
메서드는 자동으로 개행을 하지 않기 때문에, 개행이 필요할 경우에는 \n
을 명시적으로 입력해야 한다는 것입니다.

파일 읽기
작성한 파일의 내용을 확인하고자 할 때는 읽기 모드를 사용합니다. 다음은 파일에서 내용을 읽어 출력하는 방법입니다.
my_file = open("example.txt", "r", encoding="utf-8")
content = my_file.read()
print(content)
my_file.close()
위 코드에서는 read()
메서드를 이용해 파일의 모든 내용을 읽어온 후 출력하고 있습니다. 읽은 내용은 변수 content
에 저장되어 있습니다.
한 줄씩 읽기
파일의 내용을 한 줄씩 읽고 싶을 때는 readline()
메서드를 사용할 수 있습니다. 아래와 같은 예제를 통해 시연해 보겠습니다.
my_file = open("example.txt", "r", encoding="utf-8")
while True:
line = my_file.readline()
if not line: # EOF
break
print(line.strip())
my_file.close()
여기서는 무한 루프를 사용하여 파일의 끝에 도달할 때까지 각 줄을 읽고 출력합니다. strip()
메서드를 통해 줄 끝의 개행 문자를 제거했습니다.
with 구문 사용하기
파일 작업을 할 때 with
구문을 사용하면 자동으로 파일이 닫히게 됩니다. 이는 코드가 예외를 발생시켜도 파일이 안전하게 닫힐 수 있도록 도와줍니다. 다음은 with
구문을 이용한 파일 작업의 예입니다:
with open("example.txt", "w", encoding="utf-8") as my_file:
my_file.write("이것은 파일 작업을 안전하게 수행할 수 있는 방법입니다.")
위 코드에서는 with
블록이 끝난 후, my_file
가 자동으로 닫힙니다. 따라서 별도로 close()
를 호출할 필요가 없습니다.

결론
파이썬에서의 파일 입출력은 데이터 저장 및 처리를 위해 필수적인 도구입니다. 다양한 모드를 활용하여 파일을 읽고 쓰는 방법을 익히면, 프로그램의 유용성이 더욱 향상됩니다. 주어진 예제를 통해 파일 입출력 작업을 직접 구현해 보실 것을 권장하며, 이러한 기초적인 작업이 나중에 더욱高级的인 작업을 수행할 때 큰 도움이 될 것입니다.
지금까지 파이썬의 파일 입출력에 대해 살펴보았습니다. 이를 통해 프로그래밍의 한계를 극복하고, 여러분의 문제 해결 능력을 강화할 수 있기를 바랍니다!
자주 찾으시는 질문 FAQ
파이썬에서 파일을 어떻게 열 수 있나요?
파일을 열기 위해서는 open()
함수를 사용해야 합니다. 이 함수는 파일의 경로와 함께 읽기 또는 쓰기와 같은 모드를 지정해야 합니다. 예를 들어, 읽기를 원하신다면 open('파일이름.txt', 'r')
와 같이 작성하시면 됩니다.
파이썬 파일에 내용을 쓰는 방법은 무엇인가요?
파일에 내용을 추가하려면 write()
메서드를 사용해야 합니다. 이때, 파일을 쓰기 모드로 열어야 하며, 예를 들어 my_file.write("내용")
과 같이 사용하시면 해당 내용이 파일에 기록됩니다.
0개의 댓글