> 백엔드 개발 > 파이썬 튜토리얼 > Python `return`, `return None` 및 `return` 없음: 주요 차이점은 무엇입니까?

Python `return`, `return None` 및 `return` 없음: 주요 차이점은 무엇입니까?

Patricia Arquette
풀어 주다: 2024-12-17 17:33:13
원래의
997명이 탐색했습니다.

Python `return`, `return None`, and No `return`: What are the Key Differences?

Python의 반환, 반환 없음, 반환 없음: 차이점은 무엇인가요?

다음 함수를 고려하세요.

def my_func1():
    print("Hello World")
    return None

def my_func2():
    print("Hello World")
    return

def my_func3():
    print("Hello World")
로그인 후 복사

모두 None을 반환하는 것처럼 보일 수 있지만, 그 내용에는 미묘한 차이가 있습니다. 동작.

동작 차이

이러한 함수가 실행될 때:

  • my_func1(): 인쇄 "Hello World"를 선택하고 명시적으로 반환합니다. None.
  • my_func2(): "Hello World"를 인쇄하고 암시적으로 None(함수의 기본 동작)을 반환합니다.
  • my_func3(): "Hello World"를 인쇄하고 아무것도 반환하지 않습니다(심지어 None).

사용 고려 사항

Return None

  • 다음을 목적으로 하는 기능에 사용합니다. None이더라도 값을 반환합니다.
  • 반환된 값은 다음과 같습니다. 나중에 코드에서 사용되거나 무시됩니다.
  • 대체 반환 값이 없으면 None을 반환하지 마세요.

Return

  • 루프의 break 문과 유사하게 함수를 명시적으로 종료하는 데 사용합니다.
  • 반환 값은 관련이 없으며 사용하면 안 됩니다.
  • 특정 값을 반환하지 않고 함수만 종료하려는 경우에 유용합니다.

No Return

  • 값을 반환할 필요가 없거나 단순히 성공적인 실행을 나타낼 필요가 없는 함수에 사용합니다.
  • 반환과 마찬가지로 반환된 값은 사용하거나 캡처할 수 없습니다.
  • C 및 Java와 같은 다른 언어의 void 함수와 유사합니다.

어머니 이름 알아내기(반환) 없음):

def get_mother(person):
    if is_human(person):
        return person.mother
    else:
        return None
로그인 후 복사

칼로 죄수 찾기(반환):

def find_prisoner_with_knife(prisoners):
    for prisoner in prisoners:
        if "knife" in prisoner.items:
            prisoner.move_to_inquisition()
            return # No need to check the other prisoners.
    raise_alert()
로그인 후 복사

어머니 이름 설정(반환 없음) ):

def set_mother(person, mother):
    if is_human(person):
        person.mother = mother
로그인 후 복사

위 내용은 Python `return`, `return None` 및 `return` 없음: 주요 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿