[python] 파일에서 특정 라인 삭제하기

이번에는 Python을 사용하여 파일에서 특정 라인을 삭제하는 방법에 대해 알아보겠습니다.

파일에서 특정 라인 삭제하는 방법

Python을 사용하여 파일에서 특정 라인을 삭제하는 가장 간단한 방법은 새로운 파일을 생성하여 삭제하려는 라인을 제외한 다른 모든 라인을 복사하는 것입니다. 이후 원래 파일과 새로 생성한 파일의 이름을 변경하여 교체하는 방식으로 원본 파일을 갱신할 수 있습니다.

아래는 파일에서 특정 라인을 삭제하는 Python 코드의 예시입니다.

def delete_line_from_file(file_path, line_number):
    with open(file_path, "r") as file:
        lines = file.readlines()
    with open(file_path, "w") as file:
        for index, line in enumerate(lines):
            if index != line_number - 1:
                file.write(line)

위 코드는 파일의 특정 라인을 삭제하는 함수를 정의한 것입니다. 함수는 파일 경로와 삭제하고자 하는 라인 번호를 인자로 받습니다. lines 리스트에서 삭제하고자 하는 라인을 제외한 다른 모든 라인을 새 파일에 쓴 후, 원본 파일을 덮어쓰는 방식으로 동작합니다.

예시

다음은 위에서 정의한 함수를 사용하여 파일에서 라인을 삭제하는 예시입니다.

file_path = "example.txt"
line_number_to_delete = 3
delete_line_from_file(file_path, line_number_to_delete)

위 예시 코드는 “example.txt” 파일에서 세 번째 라인을 삭제합니다.

정상적으로 동작할 경우, 해당 파일에는 세 번째 라인이 제거된 상태로 저장될 것입니다.

파이썬을 사용하여 파일에서 특정 라인을 삭제하는 방법에 대해 알아보았습니다. 이를 참고하여 파일 작업에 유용하게 활용하시기 바랍니다.

참고 자료