수업 선포하다
클래스는 개체를 보다 효율적으로 만들기 위해 만든 구성입니다.
다음 구문으로 클래스가 생성됩니다.
class 클래스 이름:
클래스 내용
※클래스명
Python 개발자가 각 단어의 첫 글자를 대문자로 표시하고 하나의 이름으로 결합하는 카멜 케이스 규칙에 따라 클래스 이름을 지정하는 것이 좋습니다.
이렇게 생성된 클래스는 클래스 이름과 동일한 기능(생성자)을 가진 객체를 생성합니다.
인스턴스명(변수명) = 클래스명( ) -> 호출된 생성자 함수
# 클래스를 선언합니다.
class Student :
pass
# 학생을 선언합니다.
student = Student()
# 학생 리스트를 선언합니다.
student = (
Student(),
Student(),
Student(),
Student(),
Student(),
Student()
)
건설자
클래스 이름이 있는 함수 건설자그것은이라고. 클래스 내부에 __init__이라는 함수를 만들면 객체가 생성될 때 처리할 내용을 작성할 수 있습니다.
class 클래스 이름 :
def __init__(self, 추가적인 매개변수):
pass
클래스 내의 함수는 첫 번째 매개변수로 self를 입력해야 합니다. 이때 본인“자신”을 나타내는 사전으로 생각할 수 있습니다. 그러나 self의 속성 및 기능에 액세스할 때는 self의 형태로 액세스해야 합니다.
※본인
self는 키워드가 아니라 단순 식별자이므로 변수명으로 사용할 수 있습니다. 그러나 거의 모든 Python 개발자는 self라는 이름을 사용하므로 기본 규칙을 준수하는 것이 좋습니다.
# 클래스를 선언합니다.
class Student :
def __init__(self,name,korean,math,english,science):
self.name = name
self.korean = korean
self.math = math
self.english = english
self.science = science
# 학생 리스트를 선언합니다.
students = (
Student("윤인성",87,98,88,95),
Student("연하진",92,98,96,98),
Student("구지연",76,96,94,90),
Student("나선주",98,92,96,92)
)
# Student 인스턴스의 속성에 접근하는 방법
students(0).name
students(0).korean
students(0).math
students(0).english
students(0).science
오물 소각로
생성자와 달리 인스턴스가 소멸될 때 호출되는 함수도 있습니다. 이것을 소멸자라고 합니다. 자주 사용하는 기능은 아니지만 그래도 나중에 사용하기 위해 스노우 스탬프를 찍어두어야겠죠? 소멸자는 클래스 내부에서 __del__(self) 형식으로 함수를 선언하여 생성됩니다.
class Test:
def __init__(self,name):
self.name = name
print("{} - 생성되었습니다.".format(self.name))
def __del__(self):
print("{} - 파괴되었습니다.".format(self.name))
test = Test("A")
=======================================================
A - 생성되었습니다.
A - 파괴되었습니다.
방법
클래스의 기능 방법그것은이라고. 클래스 내에서 메소드를 생성할 때 다음을 사용하십시오. 동일한 방식으로 생성자를 선언하되, 첫 번째 매개변수로 self를 지정해야 합니다.
class 클래스 이름:
def 메소드 이름(self, 추가적인 매개변수):
pass