logo

Python의 클래스와 객체

Python은 재사용 가능한 코드를 작성하기 위한 강력한 도구인 클래스를 제공하는 객체 지향 프로그래밍 언어입니다. 공유된 특성과 동작을 가진 객체를 설명하기 위해 클래스가 활용됩니다. 우리는 이 글에서 클래스와 객체에 대한 Python의 개념을 살펴볼 것입니다.

Python의 클래스:

Python에서 클래스는 데이터 자체와 이를 조작하는 데 사용할 수 있는 메서드를 모두 포함하는 사용자 정의 데이터 유형입니다. 어떤 의미에서 클래스는 객체를 생성하기 위한 템플릿 역할을 합니다. 이는 객체가 사용할 특성과 작업을 제공합니다.

클래스가 건물의 프로토타입이라고 가정해 보겠습니다. 건물에는 바닥, 방, 문, 창문 등에 대한 모든 세부 정보가 포함되어 있습니다. 이러한 세부 정보를 기반으로 우리는 원하는 만큼 많은 건물을 만들 수 있습니다. 따라서 건물은 하나의 클래스로 볼 수 있으며 이 클래스의 개체를 최대한 많이 만들 수 있습니다.

Python에서 클래스 만들기

Python에서는 클래스 키워드 뒤에 클래스 이름을 사용하여 클래스를 만들 수 있습니다. 클래스를 생성하는 구문은 다음과 같습니다.

통사론

빈 목록 자바
 class ClassName: #statement_suite 

Python에서는 각 클래스가 다음을 사용하여 액세스할 수 있는 문서 문자열과 연결되어 있다는 점에 유의해야 합니다. .__문서__. 클래스에는 필드, 생성자, 함수 등 정의를 포함한 명령문 모음이 포함되어 있습니다.

예:

암호:

osi 모델 레이어
 class Person: def __init__(self, name, age): # This is the constructor method that is called when creating a new Person object # It takes two parameters, name and age, and initializes them as attributes of the object self.name = name self.age = age def greet(self): # This is a method of the Person class that prints a greeting message print('Hello, my name is ' + self.name) 

이름과 나이는 Person 클래스의 두 가지 속성입니다. 또한 인사말을 인쇄하는 Greeting이라는 기능도 있습니다.

Python의 객체:

객체는 고유한 특성과 기능을 가진 클래스의 특정 인스턴스입니다. 클래스가 확립된 후에는 이를 기반으로 객체를 만들 수 있습니다. 클래스 생성자를 사용하면 Python에서 클래스의 객체를 만들 수 있습니다. 객체의 속성은 __init__이라는 이름을 가진 특수 프로시저인 생성자에서 초기화됩니다.

통사론:

 # Declare an object of a class object_name = Class_Name(arguments) 

예:

jdbc jdbc

암호:

 class Person: def __init__(self, name, age): self.name = name self.age = age def greet(self): print('Hello, my name is ' + self.name) # Create a new instance of the Person class and assign it to the variable person1 person1 = Person('Ayan', 25) person1.greet() 

산출:

 'Hello, my name is Ayan' 

자체 매개변수

자체 매개변수는 클래스의 현재 인스턴스를 참조하고 클래스 변수에 액세스합니다. self 대신 무엇이든 사용할 수 있지만 클래스에 속한 모든 함수의 첫 번째 매개변수여야 합니다.

_ _init_ _ 메소드

Python에서 클래스의 인스턴스를 만들기 위해 __init__이라는 특정 함수가 호출됩니다. 객체의 속성을 설정하는 데 사용되지만 생성자라고도 합니다.

strsep

자기 인수는 __init__ 메서드에 필요한 유일한 인수입니다. 이 인수는 새로 생성된 클래스 인스턴스를 참조합니다. 객체와 관련된 각 속성의 값을 초기화하려면 __init__ 메서드에서 추가 인수를 선언할 수 있습니다.

클래스 및 인스턴스 변수

클래스의 모든 인스턴스는 클래스 변수를 교환합니다. 이는 클래스 메소드와 독립적으로 작동하며 클래스 이름을 사용하여 액세스할 수 있습니다. 다음은 예시입니다.

암호:

 class Person: count = 0 # This is a class variable def __init__(self, name, age): self.name = name # This is an instance variable self.age = age Person.count += 1 # Accessing the class variable using the name of the class person1 = Person('Ayan', 25) person2 = Person('Bobby', 30) print(Person.count) 

산출:

 2 

반면, 인스턴스 변수는 클래스의 각 인스턴스에만 적용됩니다. __init__ 메소드의 자기 인수를 사용하여 지정됩니다. 다음은 예시입니다.

암호:

리눅스 키보드 단축키
 class Person: def __init__(self, name, age): self.name = name # This is an instance variable self.age = age person1 = Person('Ayan', 25) person2 = Person('Bobby', 30) print(person1.name) print(person2.age) 

산출:

 Ayan 30 

클래스 변수는 모든 클래스 메서드와 별도로 생성되며 모든 클래스 복사본에서 공유됩니다. 클래스의 모든 인스턴스에는 자체 인수를 활용하는 __init__ 메서드에 지정되는 자체 인스턴스 변수가 있습니다.

결론:

결론적으로, Python의 클래스와 객체 개념은 재사용 가능한 프로그램을 작성할 수 있는 강력한 아이디어입니다. 클래스를 설정하여 많은 객체를 구축하는 데 사용할 수 있는 단일 엔터티로 정보와 기능을 결합할 수 있습니다. 점 표기법을 사용하면 객체가 생성된 후 객체의 메서드와 속성에 액세스할 수 있습니다. Python의 클래스와 객체를 이해하면 보다 논리적이고 효과적이며 관리하기 쉬운 코드를 개발할 수 있습니다.