python 장고 템플릿 질문

조회수 420회
dic =
[ {'name': '나이브스 아웃', 'dt_area': '김태형관[1관] 6층', 'start_time': '22:15', 'seat': '잔여좌석139석', 'area': 'CGV강남'},
 {'name': '나이브스 아웃', 'dt_area': '김태형관[1관] 6층', 'start_time': '24:55', 'seat': '잔여좌석144석', 'area': 'CGV강남', '},
 {'name': '겨울왕국', 'dt_area': '김태형관[1관] 6층', 'start_time': '27:35', 'seat': '잔여좌석143석', 'area': 'CGV강남'},
 {'name': '겨울왕국', 'dt_area': '방탄소년단 뷔관[2관(Laser)] 6층', 'start_time': '12:30', 'seat': '잔여좌석25석', 'area': 'CGV강남'}]

장고의 템플릿 에서

다음과 같은 배열을 db로 부터 받아와서

템플릿 태그를 사용해서

값을 하나씩 빼오면서

앞에 있던 name의 key 값과 지금 name의 key 값을 비교해서 같다면

중복돼는 값을 빼고 출력하려고 했지만 어떤식으로 접근해야 할지

떠오르지를 않네요 혹시 아래의 출력 예처럼 출력하려면 어떠한 방식으로

접근하는게 있을까요 도와주세요 !!!

아니면 혹시

템플릿 태그 말고 파이썬 안에서 해결을 하는 방법도 있을까요 ?

출력 예를 들면 이런 식입니다.

나이브스 아웃
김태형관[1관] 6층
'22:15
잔여좌석139석
김태형관[1관] 6층
'24:55
잔여좌석144석

겨울왕국
김태형관[1관] 6층
27:35
잔여좌석143석
방탄소년단 뷔관[2관(Laser)] 6층
12:30
잔여좌석25석
  • (•́ ✖ •̀)
    알 수 없는 사용자

1 답변

  • itertools 모듈에 groupby 함수가 있습니다.

    아래와 같이 name 으로 groupby 하면 name 에 따라 그룹핑 됩니다.

    dic =[{'name': '나이브스 아웃', 'dt_area': '김태형관[1관] 6층', 'start_time': '22:15', 'seat': '잔여좌석139석', 'area': 'CGV강남'},
     {'name': '나이브스 아웃', 'dt_area': '김태형관[1관] 6층', 'start_time': '24:55', 'seat': '잔여좌석144석', 'area': 'CGV강남', },
     {'name': '겨울왕국', 'dt_area': '김태형관[1관] 6층', 'start_time': '27:35', 'seat': '잔여좌석143석', 'area': 'CGV강남'},
     {'name': '겨울왕국', 'dt_area': '방탄소년단 뷔관[2관(Laser)] 6층', 'start_time': '12:30', 'seat': '잔여좌석25석', 'area': 'CGV강남'}]
    
    for k, g in it.groupby(dic, lambda e:e['name']):
        print('{} {}'.format(k, list(g)))
    
    나이브스 아웃 [{'name': '나이브스 아웃', 'dt_area': '김태형관[1관] 6층', 'start_time': '22:15', 'seat': '잔여좌석139석', 'area': 'CGV강남'}, {'name': '나이브스 아웃', 'dt_area': '김태형관[1관] 6층', 'start_time': '24:55', 'seat': '잔여좌석144석', 'area': 'CGV강남'}]
    겨울왕국 [{'name': '겨울왕국', 'dt_area': '김태형관[1관] 6층', 'start_time': '27:35', 'seat': '잔여좌석143석', 'area': 'CGV강남'}, {'name': '겨울왕국', 'dt_area': '방탄소년단 뷔관[2관(Laser)] 6층', 'start_time': '12:30', 'seat': '잔여좌석25석', 'area': 'CGV강남'}]
    
    
    
    • 감사합니다 덕분에 어떤식으로 접근해야 할지 알것같아요 알 수 없는 사용자 2019.12.7 11:51

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

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

(ಠ_ಠ)
(ಠ‿ಠ)