첫째, 정적 메서드와 클래스 메소드
1. 정적 전화 : @staticmethod
클래스 A (객체) : @staticmethod 데프 () : 인쇄 ( 'A') 금주 모임을 ()
당신은 클래스의 비 클래스 멤버의 존재를해야하는 경우 정적 메소드 호출을 사용할 수 있습니다
2. 예
면적 계산 @staticmethod으로 : 경우, 입력이, 사각형의 네면인지 여부를 판정한다
ZFX 클래스 (객체) DEF __init __ (자기, A, B, C, D) self.a = A self.b = B self.c = C self.d = D @staticmethod DEF is_valid (A, B, C , d) : [B, C, D] I에 대해 : 만약 = A! 거짓 돌아가 다른 : True를 반환 DEF 영역 (자기) 입술 == 경우 true를 용제동 = self.a * self.b의 복귀 용제동 FX = ZFX (5,5,5,5) 고해상도 = fx.is_valid (5,5,5,5) fx.area () 고해상도 경우 == 사실 : 인쇄 (fx.area ())
3. 수업 방법
(1) 기본값 :
DEF A (BL = '안녕하세요') 인쇄 (BL) A ()
출력은 안녕하세요
(2) cocaltime
# 라이브러리를 호출의 현지 : 가져 오기 시간 시간에서의 현지, 절전 인쇄 (시간 ())
타임 스탬프 년 1 월 1 일부터 초 1970 00.00.00 번호는 지금 경험 시작
(3) @classmethod
@classmethod : 클래스 자체 (CLS)의 속성을 가져 와서 변경 될 수 있습니다.
classmethod 수정은 해당 기능, 아니 자기 매개 변수를 인스턴스화 할 필요는 없지만, 첫 번째 매개 변수 자체가 클래스를 호출 할 수 CLS 필수 매개 변수입니다 클래스, 클래스 메소드, 인스턴스 다른 개체 속성
관계 클래스 4 클래스 사이에 (유전)
(1) 제 1 단계는 클래스 상속 된 클래스의 이름을 쓰는 것이다
(2) 클래스 명 (클래스 명) 제안 __ 초기화 __ (자기)하십시오 .__ 초기화 __ (자체)
(3) 예 : 하위 클래스, 부모와 두 숫자 계산 sum_를 만드는 부모 클래스를 만들고,이 서브 클래스 sum_를 인쇄
푸 클래스 (객체) DEF __init __ (자기) self.a = 10 self.b = 20 DEF sum_ (자기) 합계 = self.a + self.b 리턴 합 클래스 ZI (푸) DEF __init __ (자기) : 푸 .__ INIT __ (자기) 데프 PRINT (자기) 입술 self.sum_ = () 인쇄 (해상도) B = ZI () b.PRINT ()
출력 : 30
리스트 및리스트 생성 부 수식
#리스트 화학식 A = [X X 대 범위 (100)] 인쇄 (A) #리스트 생성기 A = (X 범위에 대한 X (100)) 프린트 (A)
장점과 단점 작성기 목록 작성기 유형을 나열합니다 :
(1) 식 :
장점 : 빠른 계산, 메모리에로드 된 모든 시간을 가지고, 데이터 볼륨이 경우 10000-2000- 너무 크지 않은
단점 : 메모리
(2) 발전기 :
장점 : 메모리 저장
단점 : 느린 계산을 생성하기로
둘째, 장식
1. 장식 사용
도보 장식 기능을 이동
실시 예 2. 장식 세 가지 기능, 두 개의 매개 변수의 장식이 두 파라미터의 처리, 이들 두 파라미터의 인쇄 기능을 각각 만들
조커 DEF (FUNC) DEF 워프 (N1, N2, N3) : NUM = N1 + N2 복귀 FUNC (0, NUM, N3) 복귀 워프 * 데코 처음 두 자릿수를 합산, 제 함수 자체 세 개의 파라미터와 곱하여 * @Joker DEF SUM (NUM1, NUM2, num3) 인쇄 (NUM1, NUM2, num3) 인쇄 (NUM2 *의 num3) SUM (10,2,3)