readline이란 무엇인가?
readline() 은 주어진 파일에서 완전한 한 줄을 읽는 데 도움이 되는 파일 메서드입니다.
반환된 문자열 끝에 후행 줄 바꿈("\n")이 있습니다.
또한 size 매개변수를 사용하여 선의 특정 길이를 얻을 수 있습니다.
size 매개변수는 선택 사항이며 기본적으로 전체 라인이 반환됩니다.
readline()의 흐름은 아래 표시된 스크린샷에서 잘 이해됩니다.
demo.txt 파일이 있고 readline()을 사용하면 demo.txt의 첫 번째 줄을 반환합니다.
파이썬 readline() 특징
다음은 readline의 중요한 특성 입니다.
- 파이썬 readline() 메서드는 주어진 파일에서 완전한 한 줄만 읽습니다.
- 줄 끝에 줄 바꿈("\n")을 추가합니다.
- 일반 읽기 모드에서 파일을 열면 readline()이 문자열을 반환합니다.
- 이진 모드에서 파일을 열면 readline()이 이진 객체를 반환합니다.
- readline()의 인수로 size를 줄 수 있으며 줄 바꿈을 포함하여 주어진 크기에 따라 줄을 가져옵니다. 기본적으로 크기는 0이며 전체 줄을 반환합니다.
구문 :
file.readline(size)
매개변수
size : (선택사항) 여기서 readline()에 숫자, 정수 값을 지정할 수 있습니다. 해당 크기의 문자열을 가져옵니다. 기본적으로 크기 값은 -1이므로 전체 문자열이 반환됩니다.
예: readline()을 사용하여 첫 번째 줄을 읽기
여기서는 readline() 메서드를 사용하여 주어진 파일에서 줄을 읽는 방법을 이해합니다. 여기서는 demo.txt 파일을 이용하여 내용을 읽어보겠습니다.
demo.txt의 파일 내용은 다음과 같습니다.
demo.txt
Testing - FirstLine
Testing - SecondLine
Testing - Third Line
Testing - Fourth Line
Testing - Fifth Line
다음은 demo.txt 파일에서 한 줄을 읽는 단계입니다.
Step 1 :
먼저 아래와 같이 파일 open() 메서드를 사용하여 파일을 엽니다.
myfile = open("demo.txt", "r")
open() 메서드는 첫 번째 매개변수를 파일 이름으로 사용하고 두 번째 매개변수는 열려는 동안의 모드입니다. 지금은 "r"을 사용했는데, 이는 파일이 읽기 모드로 열린다는 의미입니다.
Step 2 :
아래와 같이 readline() 메서드를 사용하여 demo.txt 파일에서 줄을 읽습니다.
myline = myfile.readline()
Step 3 :
읽은 줄은 myline 안에 저장됩니다. 이제 행을 인쇄하여 세부 정보를 확인하겠습니다.
print(myline)
Step 4 :
읽기가 완료되면 아래와 같이 close() 메서드를 사용하여 파일을 닫습니다.
myfile.close()
전체 코드는 다음과 같습니다.
myfile = open("demo.txt", "r")
myline = myfile.readline()
print(myline)
myfile.close()
출력 :
Testing - FirstLine
예 : readline()에서 size 인수 사용
주어진 파일에서 전체 줄을 읽는 방법을 살펴보았습니다. 크기 매개변수를 사용하여 필요한 선 길이만 가져올 수도 있습니다.
주어진 예제에는 크기 매개변수가 10으로 지정되어 있습니다. 첫 번째 줄을 가져오고 0에서 10까지의 문자가 있는 줄을 반환합니다.
앞에서 사용한 demo.txt 파일을 활용해 보겠습니다. 파일 demo.txt를 저장하고 open() 함수 내에서 demo.txt의 위치를 사용합니다.
myfile = open("demo.txt", "r")
myline = myfile.readline(10)
print(myline)
myfile.close()
출력 :
Testing -
파이썬에서의 기본 파일 IO (입출력)
읽기 또는 쓰기를 위해 파일을 여는 파이썬의 기본 파일 IO는 내장 open() 함수입니다.
open() 함수에 들어가는 두 가지 중요한 인수는 파일 경로(문자열)와 파일이 읽기용인지 쓰기용인지 지정하는 모드입니다. 모드 인수는 문자열입니다.
구문:
open("file path", "mode")
다음은 open() 메서드와 함께 사용할 수 있는 사용 가능한 모드입니다.
모드 | 설명 |
R | 파일이 읽기 모드로 열립니다. |
W | 파일에 쓸 수 있습니다. |
a | 파일이 쓰기 모드로 열리고 내용이 끝에 추가됩니다. |
rb | 이진 데이터 읽기를 위해 파일을 엽니다. |
wb | 이진 데이터를 쓰기 위해 파일을 엽니다. |
읽기 위해 파일이 필요하므로 읽기 모드 즉 (r)을 사용할 것입니다.
파일을 한 줄씩 읽기
readline() 메서드는 한 번에 한 줄만 읽는 데 도움이 되며 주어진 파일에서 첫 번째 줄을 반환합니다.
여기에서 주어진 파일에서 모든 줄을 읽기 위해 readline()을 사용할 것입니다. 읽을 파일은 demo.txt입니다. 파일의 내용은 다음과 같습니다.
파일 demo.txt를 저장하고 open() 함수 내에서 demo.txt의 위치를 사용합니다.
Testing - FirstLine
Testing - SecondLine
Testing - Third Line
Testing - Fourth Line
Testing - Fifth Line
while 루프 내에서 readline()을 사용하면 demo.txt 파일에 있는 모든 행을 읽습니다.
출력 :
Testing - FirstLine
Testing - SecondLine
Testing - Third Line
Testing - Fourth Line
Testing - Fifth Line
한 번에 파일의 모든 줄을 읽는 방법
주어진 파일에서 모든 줄을 읽으려면 readlines() 함수를 사용할 수 있습니다. readlines() 함수의 특수 기능은 주어진 파일에서 모든 내용을 읽고 출력을 목록에 저장하는 것입니다.
readlines() 함수는 내부적으로 readline() 함수를 사용하여 파일 끝까지 읽고 파일에서 읽은 모든 행이 포함된 목록을 반환합니다.
다음은 readlines()를 사용하여 파일에서 모든 줄을 읽는 작업 예제입니다.
우리가 읽을 파일은 test.txt입니다. test.txt 파일의 내용은 다음과 같습니다. test.txt: test.txt 파일을 저장하고 open() 함수 내에서 test.txt의 위치를 사용합니다.
Line No 1
Line No 2
Line No 3
Line No 4
Line No 5
myfile = open("test.txt", "r")
mylist = myfile.readlines()
print(mylist)
myfile.close()
출력 :
['Line No 1\n', 'Line No 2\n', 'Line No 3\n', 'Line No 4\n', 'Line No 5']
for 루프를 사용하여 파일을 한 줄씩 읽는 방법
다음은 for-loop를 사용하여 주어진 파일에서 한 줄씩 읽는 단계입니다.
Step 1:
먼저 읽기 모드에서 Python open() 함수를 사용하여 파일을 엽니다.
Step 2 :
open() 함수는 파일 핸들러를 반환합니다. for-loop 내에서 파일 처리기를 사용하고 주어진 파일에서 한 줄씩 모든 줄을 읽습니다.
Step 3 :
완료되면 close() 함수를 사용하여 파일 핸들러를 닫습니다.
다음은 for-loop를 사용하여 주어진 파일에서 한 줄씩 읽는 작업 예제입니다. 여기서 사용할 파일은 test.txt입니다.
test.txt의 내용은 아래와 같습니다. test.txt 파일을 저장하고 open() 함수 내에서 test.txt의 위치를 사용합니다.
Line No 1
Line No 2
Line No 3
Line No 4
Line No 5
myfile = open("test.txt", "r")
for line in myfile:
print(line)
myfile.close()
출력 :
Line No 1
Line No 2
Line No 3
Line No 4
Line No 5
while - loop를 사용하여 파일을 한 줄씩 읽는 방법
while - loop를 사용하여 주어진 파일에서 한 줄씩 내용을 읽을 수 있습니다. 그러기 위해서는 먼저 open() 함수를 사용하여 파일을 읽기 모드로 엽니다. open()에서 반환된 파일 핸들러는 줄을 읽기 위해 while - loop 내부에서 사용합니다.
readline() 함수는 while - loop 내에서 행을 읽는 데 사용됩니다. for - loop의 경우 파일의 끝을 만나면 루프가 종료됩니다. 그러나 while - loop의 경우에는 그렇지 않으며 파일 읽기가 완료되었는지 계속 확인해야 합니다. 따라서 readline() 함수가 빈 문자열을 반환하면 break 문을 사용하여 while - loop에서 종료할 수 있습니다.
다음은 while - loop를 사용하여 파일을 한 줄씩 읽는 작업 예제입니다.
사용할 파일은 test.txt입니다. test.txt 파일을 저장하고 open() 함수 내부의 test.txt 위치를 사용합니다.
Line No 1
Line No 2
Line No 3
Line No 4
Line No 5
myfile = open("test.txt", "r")
while myfile:
line = myfile.readline()
print(line)
if line == "":
break
myfile.close()
출력 :
Line No 1
Line No 2
Line No 3
Line No 4
Line No 5
요약 :
- readline()은 주어진 파일에서 완전한 한 줄을 읽는 데 도움이 되는 파일 메서드입니다. 반환된 문자열 끝에 후행 줄 바꿈("\n")이 있습니다.
- 또한 size 매개변수를 사용하여 라인의 특정 길이를 얻을 수 있습니다. size 매개변수는 선택 사항이며 기본적으로 전체 라인이 반환됩니다.
- readline() 메서드는 한 번에 한 줄만 읽는 데 도움이 되며 주어진 파일에서 첫 번째 줄을 반환합니다. 주어진 파일에서 모든 줄을 읽기 위해 readline()을 사용할 것입니다.
- 주어진 파일에서 모든 줄을 읽으려면 readlines() 함수를 사용할 수 있습니다. readlines() 함수의 특징은 주어진 파일에서 모든 내용을 읽고 출력을 목록에 저장한다는 것입니다.
- readlines() 함수는 내부적으로 readline() 함수를 사용하여 파일 끝까지 읽고 파일에서 읽은 모든 행이 있는 목록을 반환합니다.
- for - loop를 사용하여 파일을 한 줄씩 읽을 수 있습니다. 그러기 위해서는 먼저 읽기 모드에서 open() 함수를 사용하여 파일을 엽니다. open() 함수는 파일 핸들러를 반환합니다. for-loop 내에서 파일 처리기를 사용하고 주어진 파일에서 한 줄씩 모든 줄을 읽습니다. 완료되면 close() 함수를 사용하여 파일 핸들러를 닫습니다.
- while - loop를 사용하여 주어진 파일에서 한 줄씩 내용을 읽을 수 있습니다. 그러기 위해서는 먼저 open() 함수를 사용하여 파일을 읽기 모드로 엽니다. open()에서 반환된 파일 핸들러는 줄을 읽기 위해 while - loop 내부에서 사용합니다.
- readline() 함수는 while - loop 내에서 행을 읽는 데 사용됩니다.
'초보자를 위한 Python > 6. Python 파일처리' 카테고리의 다른 글
6.6 파이썬 예외 처리: try, catch, finally & raise (0) | 2022.11.16 |
---|---|
6.5 파이썬으로 압축 파일(zip, tar) 만들기 (0) | 2022.11.15 |
6.4 파이썬 파일이름 폴더이름 바꾸기 os.rename() (0) | 2022.11.14 |
6.3 파이썬 파일복사 방법 : shutil.copy(), shutil.copystat() (0) | 2022.11.11 |
6.2 파일 존재여부 확인 : 디렉토리 존재여부 확인법 (0) | 2022.11.10 |
댓글