파이썬 리스트 입력관련 질문입니다.

조회수 1577회

리스트의 첫 열들에 시간 문자열을 집어넣고 싶어서 코드를 짜봤습니다.

    matrix = [[0 for col in range(11)] for row in range(400)]

    time = datetime.datetime(1990, 1, 1, 9, 0)
    temp = time.time()
    for i  in range(0,400):
        matrix[i][0]=temp
        print temp
        time = time + datetime.timedelta(minutes=1)
        temp = time.time()
    print matrix

temp를 출력하면 09:00:00 부터 15:39:00 까지 값들이 출력이 됩니다. 그러나 matrix를 출력하니

[[datetime.time(9, 0), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[datetime.time(9, 1), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
[datetime.time(9, 2), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] ... 

이런 형식으로 09:00:00꼴이 아닌 'datetime.time()' 의형태로 list안에 입력이 되더라구요. matrix안에 09:00:00 부터 15:39:00까지 집어넣고 싶은데 방법이 없을까요?

1 답변

  • matrix안에 데이터는 datetime.time(9,0)의 값이 들어가 있습니다. 출력했을때만 저렇게 보여주는거에요.

    matrix에 데이터 자체를 9:00:00과 같은 형식으로 넣고 싶으시면 문자열로 바꿔서 넣어 보세요.

    for i  in range(0,400):
            matrix[i][0] = str(temp) # 여기서 문자열로 바꿔 주면 됩니다.
            print temp
            time = time + datetime.timedelta(minutes=1)
            temp = time.time()
    

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

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

(ಠ_ಠ)
(ಠ‿ಠ)