점프 투 파이썬 종합문제 15번 관련 질문
안녕하세요? 
먼저 좋은 책 써주셔서 파이썬 세계로 입문하게 해주신 것 감사드립니다~^^
코딩 전혀 모르고 살다가 혼자서 책 보고 공부하려니 어려운게 너무 많습니다. ㅠㅠ
앞으로 잘 부탁드리겠습니다. 
제목에서 말씀드린 종합문제 15번 해설을 봐도 잘 이해가 되지 않습니다.
def chkDupNum(s):
      result = []
            for num in s: 
                 if num not in result:
                           result.append(num)
                    else:
                          return False
            return len(result) == 10
- 
리스트 자료형을 사용하여 중복된 값이 있는지 먼저 조사한다. 
 (result = [] ... if num not in result: 가 여기에 해당되는지요?)
- 
중복된 값이 있을 경우는 False를 리턴한다. 
 (else: return False 가 여기에 해당되는지요? )
- 
최종적으로 중복된 값이 없을 경우 0~9까지의 숫자가 모두 사용되었는지 판단하기 위해 입력 문자열의 숫자 값을 
 저장한 리스트 자료형의 총 개수가 10인지를 조사하여 10일 경우는 True, 아닐 경우는 False를 리턴한다.
 ( return len(result) == 10 이 여기에 해당 되는지요? 만역 그렇다면 이해가 안되는게 보통 def 함수문에서 return은 결과값을 저장할때 쓴다고 배웠는데 여기에서는 다른 용도로 쓰였는지요?)
질문이 답답하시더라도 너그러운 마음으로 많은 양해 부탁드립니다. ^^
배기성 님 556
M 2020년 12월 28일 8:55 오전
1개의 답변이 있습니다. 1 / 1 Page
def chkDupNum(s):
    result = []
    for num in s:   # 입력 문자열 s에서 한 문자씩 num에 대입
        if num not in result:  # result 리스트에 num이 들어 있지 않은경우라면
            result.append(num)  # result에 num을 추가
        else:  # result 리스트에 num이 들어 있는경우, num이 중복임을 알수 있음
            return False  # 이런 경우는 False를 리턴
    return len(result) == 10  # 루프 종료후 리스트의 갯수가 10개인지 조사하여 10개면 True, 아닌경우에는 False리턴
코드에 주석을 달아보았습니다.
도움되시기를..
                            
                            
                                 박응용 님
                            
                            
                            박응용 님
                        
M 2020년 12월 28일 9:23 오전
 박응용님,
            
            
            M 2020년 12월 29일 11:01 오후
            
        
        
            추천
        
        
        ,
        
        
            대댓글
            
            
            박응용님,
            
            
            M 2020년 12월 29일 11:01 오후
            
        
        
            추천
        
        
        ,
        
        
            대댓글