해결된 질문
작성
·
194
0
함수를 정의하는 부분에서 '-> int'와 '-> None'이 정확히 무엇을 의미하는지 궁금합니다.
사진 속 세 번째 함수는 제가 첫 번째 함수를 본따와서 두 번째 함수를 임의로 바꿔본 것인데요. 이렇게 해도 두 번째 함수와 아무런 차이가 없나요?
답변 2
2
안녕하세요. 좋은 질문 감사합니다.
네 질문에 답을 드리면 차이는 없습니다.
기초에서는 이해하기 약간 힘든 중급 정도의 개념을 강의에 넣어 본 내용인데요. 잘 캐치 하셨어요.
함수 어노테이션이라는 문법입니다. PEP-3107 에서 설명하고 있는데요.
명시적으로 이 함수는 (정수,정수) -> 정수 와 같은 형식 즉
소스코드를 리뷰 할 때 아~ 이 함수는 정수형 2개를 인자로 받아서 다시 정수형으로 반환을 하는구나
라고 명시적으로 설명해주는 문법입니다.
즉 세번째 경우에 None을 반환한다고 적어놨지만 결과적으로 70이 나왔기 때문에
애노테이션 문법은 적합하다고 볼 수 없겠네요. None은 반환값이 없음을 명시합니다.
그러면 코드 가독성이 좋아지고 내가 작성해놓은 코드를 누군가 리뷰를 할 때 조금 더 빠르게 이해할 수 있어요.
관련 링크 참조드립니다.
0