python 함수의 귀속

3315 단어 python 학습python

함수 귀속


함수는 코드의 봉인으로 다른 프로그램에 호출될 수도 있고 함수 내부에서 호출될 수도 있으며 함수 내부에서 자신을 호출하는 방식을 함수의 귀속이라고 부른다.마치 사람이 거울 앞에 서서 거울을 보는 것과 같다. 거울 속의 거울도 마찬가지다. 한 사람이 거울을 보고 있고, 거울 속의 거울 속의 거울도 한 사람이 거울을 보는 것과 같다... 약간 내미가 난다.수학에서의 곱셈은 귀속으로 계산할 수 있다. 만약 네가 n을 계산하려고 한다면!당신은 반드시 (n-1)을 계산해야 합니다!,계산하고 싶어(n-1)!계산해야 돼(n-1-1)!이렇게 유추하면 마지막에 앞으로 n번 추산하면 (n-n)!=0 그래서 우리는 0을 얻었다!1,0의 곱하기가 있으면 1의 곱하기(0!*1)를 알 수 있고, 1의 곱하기가 있으면 2의 곱하기 1을 알 수 있다!**2,이렇게 유추하면 n의 계승을 얻을 수 있다.만약 우리가 곱하기를 구하는 함수func를 설정한다면, 우리는 n을 계산하려고 한다.(n-1)의 곱셈을 알아야 한다. 이런 식으로 추론하면func(n)-->func(n-1)-->func(n-2)-->func(n-3)-->...>func(0)=1 우리는 0의 곱셈 값이 있으면 다음과 같이 계산할 수 있다. 1!그리고 2!n! func(0)=1->func(1)-->func(2)-->func(3)-->...->func(n) 우리는 n의 곱셈을 계산할 때마다 계산(n-1)의 곱셈으로 돌아간다. 그러면 우리는 어떻게 함수를 계산(n-1)의 곱셈으로 돌아갑니까?우리는 리턴을 배운 적이 있다. 리턴은 함수의 제어권을 호출자에게 되돌릴 수 있다. 그러면 자신이 호출자로서 제어권을 본 함수에 이어서 계산할 수 없다(n-1)!그래. 깜찍한 놈이야. 깜찍한 놈이야.
def func(n):
    if(n==0):
        return 1    # , 
    else:
        return n*func(n-1) 
        '''
         n!=n*(n-1)*(n-2)*...*1
         (n-1)! func(n-1) , 
        '''
print(func(3))

결과는 다음과 같다. 6 그 중에서 끝까지 귀속되는 특수값(또는 이미 알고 있는 값)을 기례라고 하는데 기례는 다시 귀속할 필요가 없다. 이것은 확정된 값이다.그리고 모든 기례는 하나 이상의 기례로 끝내야 한다.함수 귀속을 능숙하게 사용하려면 자신을 호출하는 의미를 이해해야 한다. 즉, 미지의 값을 함수 자체로 나타내고 귀속이 구해야 할 문제의 전후항 사이에 일정한 관계가 있음을 알아야 한다.귀속 실행 시 첫 번째 항목에서 기본 사례로 계속 실행되며, 기본 사례로 실행된 후 기본 사례에서 첫 번째 항목으로 역행하여 최종 결과를 되돌려줍니다. 시작도 있고 끝도 있습니다.당신들에게 건강서의 귀속 해설도를 드리겠습니다.
마지막으로, 귀속을 사용할 때 반드시 기례의 구축에 주의해야 한다. 그렇지 않으면 귀속이 되돌아오지 못하면 오류가 발생할 것이다.기본적으로 귀속 층수는 1000층을 초과해서는 안 되며, 시스템이 허용하는 최대 귀속 깊이를 초과하면python 해석기는 프로그램을 종료합니다.이러한 설정은 무한 귀속을 방지하기 위해 메모리를 무한히 점용하는 것을 방지하기 위해 설계된 것이다.만약 당신의 귀속이 정확하지만 층수가 1000층을 초과하면 최대 귀속 한도를 설정할 수 있습니다.
import sys
max=2000# 
sys.setrecursionlimit(max)

자, 또 작별인사를 할 때가 되었군(→ ←) 오늘 너는 학업을 그만두었느냐(・ω・안녕히 계세요.

좋은 웹페이지 즐겨찾기