큰 파일을 한 줄씩 읽는 방법


발생하는 문제 및 실행환경

안녕하세요 이제 막 파이썬 처음 시작한 뉴비입니다 아주 큰 파일을 한줄씩 읽어서 처리하고 싶은데 저는 통째로 읽은 다음에 한줄 한줄 끊어읽는 방법밖에 몰라서요

다른 방법이 있는지 알고 싶습니다.

소스코드

for each_line in fileinput.input(input_file):
    do_something(each_line)

    for each_line_again in fileinput.input(input_file):
        do_something(each_line_again)
  • 2016년 02월 04일에 작성됨

조회수 238


1 답변


좋아요
0
싫어요
채택취소하기

파일을 한 줄씩 읽는 가장 pythonic한 방법은

with open(...) as f:
    for line in f:
        //여기에서 처리

입니다.

  1. with로 파일을 열고/닫고
  2. if블록 안에서 f에서 한 줄씩 읽습니다.(파이썬은 file도 iterable)

buffered-IO에 자동으로 메모리를 관리해주기 때문에 큰 파일도 문제없이 실행하실 수 있을 겁니다

  • 2016년 02월 04일에 작성됨

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close