두 리스트에서 같은 인덱스에 있는 항목을 비교해서 공통되는 원소만을 출력하고 싶습니다.

조회수 548회

두 가지 리스트를 입력하게 하고 마지막에 각 리스트를 비교해서 '0'라는 공통되는 항목만 출력하고 싶은데 어떻게 하면 될까요? 예를 들어 이렇게 셸창에 입력했을 때

캠메이트1의 월요일 시간표를 입력세요.

1시간대: 0
2시간대: X
3시간대: X
4시간대: 0

캠메이트2의 월요일 시간표를 입력세요.

1시간대: 0
2시간대: X
3시간대: 0
4시간대: 0

마지막에 결과가

월: [1시간대:0 , 4시간대:0]

이런 식으로 '0'에 해당되는 공통된 시간대가 나오게 하려면 어떻게 해야 할까요ㅠㅠ 초보라 방법을 모르겠어요.


timetable1 = {}
day = ["월"]

for i in day : #i에 day에 있는 요일들이 월부터 금까지 반복된다.
    print("캠메이트1의 %s요일 시간표를 입력하세요. "%i)
    day_timetable1 = [ ]  #그 날의 시간표를 입력받을 리스트
    for j in range(1,8):  #1교시부터 7(8-1)교시까지 입력 
        day_timetable1.append(input("%d시간대 :"%j)) #1교시씩 입력받음
    timetable1[i] = day_timetable1 #timetable["요일"]에 하루 시간표 넣기.


timetable2 = {}
for i in day : 
    print("캠메이트2의 %s요일 시간표를 입력하세요. "%i)
    day_timetable2 = [ ]  
    for j in range(1,8):  
        day_timetable2.append(input("%d시간대 :"%j)) 
    timetable2[i] = day_timetable2

여기까지 했는데 뭘 추가해야 공통 항목만 나올까요...?

1 답변

  • 요일 = '월'
    
    for j in range(7):
        일치하는거 = []
        if timetable1[요일][j] == timetable2[요일][j] == '0':
            일치하는거.append("%d시간대:0"%(j+1))
    
    print("%s: [%s]"%(요일, " , ".join(일치하는거)))
    
    • 저 답변해주신 내용을 붙여서 실행해봤는데 알 수 없는 사용자 2020.12.23 09:39
    • File "/solution.py", line 22 요일 = '월' ^ SyntaxError: invalid syntax 이렇게 오류가 뜨네요.. 뭐가 잘못된건가요? 알 수 없는 사용자 2020.12.23 09:40
    • @jayyy : 답변의 코드를 이해하셔야 합니다. 오류 하나하나 다 잡아줄 수는 없어요. 스스로 뚝딱뚝딱 고쳐가면서 오류를 잡으면서, 원하는 답을 만들어보세요. 경력이 오래되 개발자라도 모두 한번에 완벽한 코드를 써내는 게 아닙니다. nowp 2020.12.23 11:52

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

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

(ಠ_ಠ)
(ಠ‿ಠ)