텍스트 파일의 문자열들이 전체 몇 라인인지, 줄 수를 세는 방법에 대해서 알아보겠습니다.

1. file.readlines()를 이용한 방법

readlines()는 파일의 텍스트들을 라인으로 읽어서 리스트로 리턴합니다. 즉, 리스트의 크기(size)를 계산하면 텍스트 파일의 줄 수를 알 수 있습니다.

file_path = 'sample.txt'

with open(file_path, 'r') as file:
    lines = file.readlines()
    line_count = len(lines)

print(f"파일 '{file_path}'의 총 라인 수: {line_count}")

Output:

파일 'sample.txt'의 총 라인 수: 4

2. file.readline()을 이용한 방법

readline()는 파일에서 한 줄을 읽고 문자열을 리턴합니다.

아래와 같이 while을 이용하여 더 이상 읽을 것이 없을 때까지 읽으면서 라인 수를 셀 수 있습니다.

file_path = 'sample.txt'
line_count = 0

with open(file_path, 'r') as file:
    while file.readline():
        line_count += 1

print(f"파일 '{file_path}'의 총 라인 수: {line_count}")

Output:

파일 'sample.txt'의 총 라인 수: 4

3. enumerate()를 이용한 방법

enumerate(file)은 파일에 대해서 라인 번호와 문자열을 튜플로 리턴하는데, 이걸 리스트로 변환하고, 리스트의 크기를 구하면 전체 라인 수가 됩니다.

file_path = 'sample.txt'

with open(file_path, 'r') as file:
    line_count = len(list(enumerate(file, 1)))

print(f"파일 '{file_path}'의 총 라인 수: {line_count}")

Output:

파일 'sample.txt'의 총 라인 수: 4

enumerate() 리턴 값

enumerate(file)을 출력해보면, 아래와 같이 보입니다.

file_path = 'sample.txt'

with open(file_path, 'r') as file:
    for date in enumerate(file, 1):
        print(date)

Output:

(1, 'Hello,\n')
(2, 'Python!\n')
(3, '파일 마지막에 문장을 추가합니다.\n')
(4, '다음 문장.\n')