파이썬 파일에 있는 데이터를 리스트로 불러오기

조회수 13689회

아래와 같은 데이터를 가지고 있는 파일(data.txt)을 리스트로 불러와 처리하고 싶습니다.

[skkim@master test]$ cat data.txt 
0.367763
0.335844
0.333843
0.333408
0.0741867
0.0189132
0.00119196
0.00676449
0.00847439
0.0105101
0.119838
0.130812
0.136221
0.468357
0.468717

이런 파일인데요..

파이썬 환경에서

data = open('./data.txt')
data.split()
print(data)

이렇게 하는게 아닌거 같습니다.. 아래와 같은 메세지가 뜨네요..

    data.split()
AttributeError: 'file' object has no attribute 'split'

2 답변

  • data = open('./data.txt')
    [float(num) for num in data.read().split()]
    

    와 같이 해 보시겠어요?

    data.read().split()하시면 데이터를 읽어오게 되고, 대괄호[] 사이에 있는 부분은 list comprehension을 이용해서 문자열 배열을 float배열로 바꾸는 과정입니다.

  • 감사합니다.

    문제는 숫자가 string으로 읽히는것 같아요..

    프린트하면..

    ['0.367763', '0.335844', '0.333843', '0.333408', '0.0741867', '0.0189132', '0.00119196', '0.00676449', '0.00847439', '0.0105101', '0.119838', '0.130812', '0.136221', '0.468357', '0.468717']
    

    과 같이 나오는데 저는 숫자를 데이터로 입력해 처리해야하거든요... 도움을 부탁드립니다.

    감사합니다.

    • (•́ ✖ •̀)
      알 수 없는 사용자
    • 답변 수정했습니다. 정토드 2017.3.3 13:45

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

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

(ಠ_ಠ)
(ಠ‿ಠ)