파이썬으로 텍스트 파일 다루기 기초 실습 예제

파이썬을 활용한 텍스트 파일 다루기 기초

오늘은 파이썬을 사용해 텍스트 파일을 효과적으로 다루는 방법에 대해 알아보겠습니다. 많은 데이터 분석가와 개발자들은 특정 데이터 처리 과정에서 텍스트 파일을 자주 사용하게 되는데, 이를 위한 기본적인 테크닉을 익히는 것이 중요합니다. 파이썬은 이러한 작업을 간편하게 수행할 수 있는 다양한 기능을 제공합니다.

텍스트 파일 읽기

가장 먼저 텍스트 파일을 읽는 과정부터 시작해보겠습니다. 파이썬에서는 open() 함수를 통해 파일을 열 수 있으며, 이 함수의 첫 번째 매개변수로 파일 경로를 지정하고, 두 번째 매개변수로 파일을 열 때의 모드를 설정할 수 있습니다. 읽기 전용 모드인 ‘r’을 사용하면 됩니다.

file = open('파일명.txt', 'r', encoding='utf-8')

파일을 연 후, read() 메서드를 사용하여 파일의 전체 내용을 읽거나, readline() 메서드를 이용해 한 줄씩 읽을 수 있습니다. 또한, readlines() 메서드를 쓰면 모든 줄을 리스트 형태로 반환받을 수 있습니다.

텍스트 파일에 쓰기

이제 텍스트 파일에 데이터를 작성하는 방법도 알아보도록 하겠습니다. 파일에 쓰기 위해서는 파일 모드를 ‘w’ 또는 ‘a’로 설정해야 합니다. ‘w’는 파일을 새로 작성하거나 기존 파일을 덮어쓰고, ‘a’는 기존 파일 뒤에 내용을 추가하는 모드입니다.

file = open('파일명.txt', 'w', encoding='utf-8')

이후 write() 메서드를 이용해 내용을 파일에 저장할 수 있습니다. 예를 들어, 다음과 같이 작성할 수 있습니다:

file.write('새로운 내용입니다.\n')

작업이 끝난 후에는 반드시 close() 메서드를 호출하여 파일을 닫아야 합니다.

추가적인 텍스트 처리 및 전처리

파일을 읽고 쓴 후에는 정제와 전처리가 필요할 때가 많습니다. 예를 들어, 특수 문자를 제거하거나 불필요한 공백을 없애는 등의 작업이 이에 해당합니다.

  • 특수문자 제거
  • 중복 단어 없애기
  • 문자열에서 특정 단어 치환하기

특수 문자를 제거하고 싶다면 replace() 메서드나 정규 표현식(re 모듈)을 사용할 수 있습니다. 다음은 정규 표현식을 사용하는 예입니다:

import re
text = "Hello! This is a sample text with special characters: @#$%. "
cleaned_text = re.sub(r'[^a-zA-Z0-9\s]', '', text)

위 코드는 특수 문자를 모두 제거하고 알파벳과 숫자, 공백만 남기는 방식을 보여줍니다. 이렇게 전처리를 통해 데이터의 품질을 개선할 수 있습니다.

정규 표현식을 이용한 텍스트 필터링

정규 표현식은 특정 패턴에 맞는 문자열을 찾거나 대체하는 데 매우 유용합니다. 예를 들어, 특정 형식의 이메일 주소를 추출하고자 할 때 정규 표현식으로 간단하게 구현할 수 있습니다.

email_pattern = r'[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}'
emails = re.findall(email_pattern, text)

위 코드는 입력된 텍스트에서 이메일 주소 패턴을 찾아 리스트로 반환합니다. 이를 통해 많은 양의 데이터에서 필요한 정보만 손쉽게 추출할 수 있습니다.

데이터 저장 및 출력

텍스트 데이터 처리를 마친 후에는 결과를 파일에 다시 저장할 수 있습니다. 예를 들어, 전처리된 데이터를 새로운 파일로 저장하려면 다음과 같이 할 수 있습니다.

with open('정제된_파일.txt', 'w', encoding='utf-8') as f:
  f.write(cleaned_text)

이 코드는 with 구문을 사용하여 파일 작업을 안전하게 처리합니다. 이렇게 하면 파일을 자동으로 닫아 주기 때문에 오류를 줄일 수 있습니다.

결론

오늘은 파이썬을 이용한 텍스트 파일 다루기와 관련된 여러 가지 기초적인 방법들을 살펴보았습니다. 파일 읽기와 쓰기, 텍스트 전처리, 정규 표현식 활용 등을 통해 데이터 분석의 기초를 다질 수 있었습니다. 이러한 기본기를 숙달하면, 더 복잡한 데이터 처리 작업도 손쉽게 수행할 수 있을 것입니다. 앞으로도 꾸준히 연습하시어 실력을 다져보시기 바랍니다.

자주 찾는 질문 Q&A

파이썬에서 텍스트 파일을 어떻게 읽을 수 있나요?

파이썬에서는 open() 함수를 사용하여 텍스트 파일을 열 수 있습니다. 이때 파일 경로와 함께 ‘r’ 모드를 지정하면 읽기 전용으로 파일을 열 수 있습니다.

텍스트 파일에 어떻게 데이터를 쓸 수 있나요?

파일에 데이터를 작성하려면 open() 함수를 이용하여 ‘w’ 또는 ‘a’ 모드로 파일을 열어야 합니다. 그런 다음 write() 메서드를 통해 내용을 추가할 수 있습니다.

파일 처리 후 반드시 파일을 닫아야 하나요?

예, 파일 작업이 끝난 후에는 close() 메서드를 사용하여 파일을 닫는 것이 중요합니다. 이는 리소스를 해제하고 데이터 손상을 방지하는 데 도움이 됩니다.

정규 표현식은 어떻게 활용하나요?

정규 표현식은 특정 패턴을 찾거나 변경하는 데 유용합니다. 이를 통해 특정 형식의 문자열, 예를 들어 이메일 주소를 쉽게 추출할 수 있습니다.

텍스트 파일에서 특수 문자를 제거할 수 있나요?

물론입니다. replace() 메서드나 정규 표현식을 사용하여 텍스트에서 특수 문자를 제거할 수 있습니다. 이를 통해 데이터의 품질을 높일 수 있습니다.

답글 남기기