• 티스토리 홈
  • 프로필사진
    31514
  • 방명록
  • 공지사항
  • 태그
  • 블로그 관리
  • 글 작성
31514
  • 프로필사진
    31514
    • 분류 전체보기 (106) N
      • Book (66)
        • Learning SQL (9)
        • SQL 레벨업 (8)
        • 견고한 데이터 엔지니어링 (5)
        • 운영체제 (2)
        • 스파크 완벽 가이드 (9)
        • 파이썬 코딩의 기술 (29)
        • 분산 컴퓨팅 (4)
      • 개발 (24) N
      • 기타 (10)
        • 출퇴근 공부 간단 정리 (7)
      • ELK (6)
  • 방문자 수
    • 전체:
    • 오늘:
    • 어제:
  • 최근 댓글
      등록된 댓글이 없습니다.
    • 최근 공지
      • 31514의 이전 블로그는 여기로!
      등록된 공지가 없습니다.
    # Home
    # 공지사항
    #
    # 태그
    # 검색결과
    # 방명록
    • [BW 20] None을 반환하기보다는 예외를 발생시켜라
      2024년 10월 23일
      • 31514
      • 작성자
      • 2024.10.23.:02

      False와 동등한 반환 값을 잘못 해석하는 경우는 None이 특별한 의미를 가지는 파이썬 코드에서 흔히 저지르는 실수다.

      아래 코드처럼 result는 0이 되어야 하는데, 잘못된 입력이 출력되는 상황이 발생한다.

      x, y = 0, 5
      
      def careful_divide(a, b):
          try:
              return a / b
          except ZeroDivisionError:
              return None
              
      
      result = careful_divide(x, y)
      if not result:
          print('잘못된 입력')
      

      이를 해결하기 위해 두 가지 방법을 생각해볼 수 있다.

      1. 반환 값을 튜플로 분리한다.
        • 첫 번째 요소에 성공 여부를 표시한다.
        • 두 번째 요소에 실제 값을 표시한다.
      2. Exception을 호출한 쪽으로 발생시켜서 호출자가 이를 처리하게 한다.

      'Book > 파이썬 코딩의 기술' 카테고리의 다른 글

      [BW 22] 변수 위치 인자를 사용해 시각적인 잡음을 줄여라  (1) 2024.10.23
      [BW 21] 변수 영역과 클로저의 상호작용 방식을 이해하라  (0) 2024.10.23
      [BW 19] 함수가 여러 값을 반환하는 경우 절대로 네 값 이상을 언패킹하지 말라  (0) 2024.10.22
      [BW 18] __missing__을 사용해 키에 따라 다른 디폴트 값을 생성하는 방법  (0) 2024.10.22
      [BW 14] 복잡한 기준을 사용해 정렬할 때는 key 파라미터를 사용하라  (1) 2024.10.22
      다음글
      다음 글이 없습니다.
      이전글
      이전 글이 없습니다.
      댓글
    조회된 결과가 없습니다.
    스킨 업데이트 안내
    현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
    ("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)
    목차
    표시할 목차가 없습니다.
      • 안녕하세요
      • 감사해요
      • 잘있어요

      티스토리툴바