인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

숲지훈님의 프로필 이미지
숲지훈

작성한 질문수

[리뉴얼] 처음하는 파이썬 데이터 분석 (쉽게! 전처리, pandas, 시각화 전과정 익히기) [데이터분석/과학 Part1]

파이썬으로 Plain Text 포맷 파일 다루기

마지막 예제 풀이가 없습니다.

작성

·

207

0

마지막 문제 풀이를 안 하고 지나가셨습니다.

예제 파일에서도 답안이 없습니다. 

3. 00_data/text_data_practice.txt 파일 읽고, 다음과 같이 출력되는지 확인하기

유치원A 

초등학교B 

중학교C 

고등학교D 

대학교E 

아래는 제가 풀이한 코드인데요. 반복문으로 출력하면 한 행씩 공백이 발생합니다.

예제처럼 이어서 출력할 순 없을까요?

data_file = open('00_data/text_data_practice.txt', 'r', encoding='utf-8-sig')

data_lines = data_file.readlines()

for data_line in data_lines:

    print (data_line)

data_file.close()

답변 1

1

안녕하세요.

3번은 1번과 2번에서 작성한 코드를 테스트만 하는 것이라고 생각해서, 별도로 풀이를 하지 않았는데요.

가만 보니, readlines() 를 하면, 텍스트 맨 끝에 \n 줄바꿈을 넣어주지 않아도, 자동으로 \n 이 하나 붙네요. 그러다보니 자동으로 붙은 \n 에 저희가 추가로 넣어준 \n 가 붙어서 한 행씩 공백이 발생한다고 보시면 좋을 것 같습니다. 이 부분 양해를 부탁드려요.

이 부분은 깔끔하게 해결하는 방법은 불필요한 문자열을 지워주는 strip() 함수를 쓰시면 됩니다.

다음과 같이 작성하시면 data_line 에 붙였던 \n 이 자동으로 삭제가 되어, 한행씩 공백이 발생하지 않고 출력이 될 수 있습니다.

지적해주셔서 감사합니다. 이 부분은 답변으로 정리해도 될 것 같습니다.

data_file = open('00_data/text_data_practice.txt', 'r', encoding='utf-8-sig')

data_lines = data_file.readlines()

for data_line in data_lines:

    print (data_line.strip())

data_file.close()

숲지훈님의 프로필 이미지
숲지훈

작성한 질문수

질문하기