0923 클래스의 개요

폐쇄 기능

정의 폐쇄 기능

폐쇄 : 폐쇄 된 (내부 함수의 함수)를 닫으면, 상기 패키지 (내부 함수보다는 글로벌 범위의 가변 범위 외부 참조)이다.

폐쇄 수단은 : 내부, 외부 기준의 기능 및 전역이 아니 범위의 기능.

예 폐쇄 기능

import requests


def outter(url):
    def get():
        response = requests.get(url)
        print(f"done: {url}")
    return get

baidu=outter('https://www.baidu.com')
python = outter('https://www.python.org')

baidu()
baidu()

python()
python()   

레이어 장식

장식 정의

장치는 공구를 지칭하고, 프로그램의 함수가 장식 오브젝트에 추가 기능을 추가하는 장식 지칭 기능성 도구를 가지고있다. 따라서, 장식 정의 함수를 정의하지만, 함수의 기능은 다른 기능으로 기능을 추가하는 데 사용된다.

데코레이터 원칙

두 가지 원칙을 따라야 장식을 달성 :

  1. 객체의 소스 코드를 수정하지 않습니다 장식한다
  2. 전화는 장식용 물건의 방식을 수정하지 않습니다

레이어 장식 템플릿

def outter(func):
    def innter(*args,**kwargs):
        # 代码块  需要实现的功能
        res = func(*args,**kwargs)
        return res
    return innter

세 가지 장식

레이어 층 외부 장식 데코는 함수를 래핑하는 파라미터는 장식 층을 통과

def sanceng(engine):
    def outter(func):
        def wrapper(*args, **kwargs):  # wrapper是未来要运行的函数
            # 加功能

            res = func(*args, **kwargs)  # func是被装饰的函数
            return res
        return wrapper
    return outter

반복자 도입

정의는 반복 가능 객체 : __ iter__ 메소드가 불려 반복 가능 객체를

정의 반복자 수 : __ iter__ 및 __ next__ 방법이라고 반복자를

추천

출처www.cnblogs.com/faye12/p/11573188.html