Python

(파이썬) read readline readlines: 텍스트 파일 읽기

고니자니 2023. 8. 28. 09:18
반응형

파이썬에서 텍스트 파일을 다루기 위해서는 다음 단계를 따릅니다.

1. 파일을 연다(open)
2. 파일 내용을 읽는다(또는 저장한다.)
3. 파일을 닫는다(close)

 

파일 모드에는 다음과 같은 값을 사용할 수 있습니다.

파일 모드 설명
r 읽기 전용. 기본 값
w 쓰기(저장) 전용. 파일이 이미 존재하면 기존 내용은 모두 삭제됨
r+ 읽기와 쓰기
a 추가. 파일이 이미 존재하면 추가되고 없으면 새로 생성
t 텍스트 모드(텍스트 파일). 기본값
b 이진 모드(바이너리 모드. 이진 파일)

 

 

파이썬에서 텍스트 파일을 읽기 위해서는 read(), readline(), readlines() 함수를 사용할 수 있습니다.

read() 파일 전체를 한 번에 읽는다
readline() 파일에서 한 라인을 읽는다. 여러 번 읽어야 전체를 읽을 수 있다.
readlines() 파일 전체를 한 라인씩 읽어서 리스트로 만든다

 

readline()

다음 예제는 readline() 함수를 이용해서 텍스트 파일에서 한 라인씩 읽어서 출력하는 파이썬 코드입니다.

infile = open("C:/temp/text_1.txt", "r",  encoding='utf-8')

while True :
    line = infile.readline()
    if line == "" :
        break;
    print(line, end='')

infile.close()

text_1.txt 다운로드 - 김소월의 진달래꽃

text_1.txt
0.00MB

(Output)

(파이썬) 텍스트 파일 입출력

 

readlines()

readlines() 함수로 텍스트 파일을 한 번에 다 읽을 수 있습니다. 

다음 코드를 살펴보겠습니다.

infile = open("C:/temp/text_1.txt", "r",  encoding='utf-8')

lines = infile.readlines()
print(lines)

infile.close()

(Output)

(파이썬) 텍스트 파일 입출력

 

readlines() 함수로 읽어서 그대로 출력하니까..'\n'과 같은 제어문자가 그대로 화면에 출력되는 것이 보입니다.

코드를 수정해 보겠습니다.

infile = open("C:/temp/text_1.txt", "r",  encoding='utf-8')

lines = infile.readlines()
for line in lines:
    print(line, end='')

infile.close()

 

(파이썬) 텍스트 파일 입출력

 

read()

read() 함수로 파일 전체를  한 번에 읽어옵니다.

다음 코드를 살펴보겠습니다.

infile = open("C:/temp/text_1.txt", "r",  encoding='utf-8')

lines = infile.read()
print(lines)
infile.close()

(Output)

위 예제의 그림과 동일함

반응형