본문 바로가기

Decorator3

[python] request 함수를 사용하여 오류가 발생했을 때 재작업하는 방법 request 를 이용하여 http 요청을 처리할 때 재작업을 해야 하는 경우가 있습니다. 하나는 서버에 연결후 정상적으로 응답이 와서 응답을 보고 재작업을 해야 하는 경우 retry 모듈을 이용하여 재작업을 처리할 수 있습니다. 다른 방법은 서버에 정상적으로 연결이 되지 않는 경우 다시 재작업을 해야 하는 경우 데코레이터 모듈을 이용하여 재작업을 할 수 있습니다. retry 모듈 retry 모듈은 서버의 응답에 따라서 재작업을 진행할 수 있습니다. 서버가 특정 응답을 보낼때는 재작업을 한다는 룰을 가질 수 있는 경우 사용할 수 있습니다. https://brownbears.tistory.com/613 [Python] requests 모듈 retry 추가하기 requests 모듈은 https://brown.. 2022. 11. 16.
[python] 데코레이터를 이용하여 파라미터의 값을 제한 하는 예제 파이썬에서 파라미터로 전달받는 데이터의 값을 제한하기 위해서 데코레이터를 이용하는 방법은 다음과 같다. 파이썬3면 Enum을 이용하면 좀더 깔끔하게 처리할 수 있을 것 같다. 인스펙트를 이용하여 추가로 처리하는 예제는 다음과 같다. #!/usr/bin/env python # -*- coding: utf-8 -*- import inspect values = [ "a", "b", "c" ] def check_param_values(param_name, check_list): def wrapper(func): param_index = inspect.getargspec(func).args.index(param_name) def decorator(*args, **kwargs): if args[param_index.. 2018. 9. 7.
[python] 파이썬의 데코레이터(Decorator) 간단 예제 파이썬의 데코레이터는 함수를 실행하기 전과 후에 공통적으로 해야할 작업이 있을 경우 사용하면 도움이 된다. @을 이용하여 함수위에 선언해주면되고, 데코레이터는 함수, 클래스를 이용하여 선언할 수 있다. 다수의 데코레이터를 적용할 수도 있다. 간단한 예제는 다음과 같다. 실행결과는 다음과 같다. print_hello1시작 hello1 print_hello1종료 ------------------------------- 2018-07-26 15:18:16.128121 print_hello2시작 hello2 print_hello2종료 2018-07-26 15:18:16.128121 None ------------------------------- 2018-07-26 15:18:16.128121 hello3 20.. 2018. 9. 7.