파이썬 장식에, 당신은 매개 변수, 반환 값을 가질 수 있도록하는 방법이 두 장식 장식에는 반환 값 방법이없는 인수없이, 그리고 메소드가 리턴 값이 될 수 또는 매개 변수를 꾸밀 수있다? 다음과 같이 보편적 장식가있다 :
DEF (시험) 장식 #이 함수를 정의 장식
데프 대담한 (* 인수, ** kwargs로는 ) : # * 인수는 , 임의 수의 매개 변수가 나타날 수 있습니다
# ** 인수는 매개 변수 사전의 복수 중 하나가 나타날 수 있습니다
( '스타일 = "blod 글꼴 무게를"') 인쇄
고해상도 = 시험 (* 인수, ** kwargs로) # 개 들이 장식되어 있더라도 쓰기, 테스트 기능은 전혀 없습니다
# 반환 값없이 불평하지 않습니다하지 않습니다.
#test 고해상도를 돌려주는 함수가 반환은 반환에 값을 더 리턴 없음
굵은 반환
위의 코드가 완료 될 때 파이썬 표현 보편적 장식, (* 인수, ** kwargs로를 모든 유형의 매개 변수의 수를 수신 할 수있다), 값이 더 수익있을 수 없다 반환 . 수정 인쇄 자신의 원하는 기능에 대한 문장을, 그것은 그들의 보편적 인 장식입니다. 그 결과, 당신은 임의의 기능을 장식하실 수 있습니다.
어떤 기능을 사용하면 위의 코드를 테스트합니다 :
@decorate # 장식 값을 반환하지 않는 인수를 방법 없다
데프 TEST1 () :
( "TEST1 인쇄 인수는 어떤 값도 반환하지 않는다 ")
@decorate # 장식 파라미터 방법의
데프 TEST2 (이름) :
인쇄 ( "TEST2 : 매개 변수 % s에"% 이름)
@decorate # 장식은 방법의 값을 반환
데프 TEST3 () :
strs = "TEST3 : 리턴 값 "
반환 strs
TEST1 () #의 결과 : 스타일 = "글꼴 - 무게 : blod"
TEST1 : 매개 변수없이, 더 리턴 값 없습니다
TEST2 ( "SS") #의 결과 : 스타일 = "글꼴 - 무게 : blod"
TEST2 : 매개 변수 SS
테스트 3 A = ()
(A) #의 인쇄 결과 : 스타일 = "글꼴 - 무게 : blod을"
TEST3 : 반환 값