파일 전체를 리스트가 아닌 스트링으로 읽으려면?

조회수 5180회

발생하는 문제 및 실행환경

제 파일은

LLKKKKKKKKMMMMMMMMNNNNNNNNNNNNN
GGGGGGGGGHHHHHHHHHHHHHHHHHHHHEEEEEEEE

같이 생겼고 이걸 아래의 소스코드를 써서 읽으면 ['LLKKKKKKKKMMMMMMMMNNNNNNNNNNNNN\n', 'GGGGGGGGGHHHHHHHHHHHHHHHHHHHHEEEEEEEE'] 같이 띄어쓰기로 구분돼서 리스트로 저장됩니다.

제가 원하는 건 "LLKKKKKKKKMMMMMMMMNNNNNNNNNNNNN GGGGGGGGGHHHHHHHHHHHHHHHHHHHHEEEEEEEE"같이 쭉 스트링 형태로 불러오고 싶은데 어떻게 하면 되나요?

소스코드

with open ("data.txt", "r") as myfile:
    data=myfile.readlines()

1 답변

  • 좋아요

    0

    싫어요
    채택 취소하기

    readlines()은 파일에서 한 줄씩 읽어 한 줄 한 줄을 리스트 형식으로 저장합니다. read()는 파일을 통째로 읽어 들이므로 질문하신 경우 read()를 쓰는 게 적합합니다.

    myfile = open("input.txt")
    
    lines = myfile.read()
    print lines
    

    결과:

    LLKKKKKKKKMMMMMMMMNNNNNNNNNNNNN
    GGGGGGGGGHHHHHHHHHHHHHHHHHHHHEEEEEEEE
    

    보다시피 이건 개행 문자까지 같이 읽어오기 때문에 "LLKKKKKKKKMMMMMMMMNNNNNNNNNNNNN\nGGGGGGGGGHHHHHHHHHHHHHHHHHHHHEEEEEEEE"이 아니라 "LLKKKKKKKKMMMMMMMMNNNNNNNNNNNNN GGGGGGGGGHHHHHHHHHHHHHHHHHHHHEEEEEEEE"를 원하신다면

    lines = myfile.read().replace('\n', ' ') 로 개행 문자 \n를 공백 문자 ' '로 바꿔야 합니다.

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)