파이썬에서 클래스 호출

Abdul Jabbar 2021년11월30일
파이썬에서 클래스 호출

Python은 모든 유형의 작업을 완료하기 위해 사용하기 쉬운 객체 지향 언어입니다. 매우 사용하기 쉬운 기능이 있습니다. 따라서 클래스와 개체를 만드는 것은 그 기능 중 하나이며 절대적으로 쉽습니다. 이 문서에서는 클래스 인스턴스를 만들고 이를 개체와 함께 사용하여 Python의 개체 지향 프로그래밍을 사용하여 클래스를 호출하는 방법을 소개합니다.

인스턴스는 단일 발생의 예입니다. 또한 객체는 클래스의 인스턴스라고 하며 이는 모든 클래스 객체가 해당 클래스에 고유함을 의미합니다. 또한 클래스에는 해당 특정 클래스와 관련된 세부 정보를 저장하는 데이터 멤버와 메서드가 포함되어 있습니다. 또한 점 표기법을 사용하여 해당 클래스의 객체에서 클래스에 액세스할 수 있습니다.

클래스는 클래스 개체를 식별하는 속성 집합을 설명하는 개체에 대한 사용자 정의 패턴입니다. 클래스의 속성을 데이터 멤버라고 하며 클래스 변수 및 클래스의 인스턴스 변수라고도 합니다. 클래스의 메서드는 기본 함수에서 점 표기법을 통해 액세스됩니다. 또한 인스턴스는 특정 클래스의 개별 개체입니다. 예를 들어, 클래스 야채에 속하는 개체는 야채 전용 클래스의 인스턴스입니다. 인스턴스 변수는 클래스의 생성된 개체에서만 인식됩니다. 이 정의에서 우리는 각 클래스 객체가 클래스 변수와 메서드에 대해 서로 다른 액세스 권한을 갖는다는 결론을 내립니다.

예를 들어 채소를 클래스로 간주할 수 있으며 오이, 당근, 감자 등은 vegetables 클래스의 객체 또는 인스턴스입니다. 당근은 맛이 독특하기 때문에 다른 야채에도 동일하게 적용됩니다. 즉, 감자에서 당근을 부를 수 없으며 그 반대도 마찬가지입니다.

클래스의 인스턴스를 만드는 구문은 다음과 같습니다.

Object_name = class_name()

클래스의 객체로 작업하려면 클래스 이름을 사용하여 클래스를 호출한 다음 생성자 메서드가 허용하는 모든 인수를 전달해야 합니다.

"The below code would create first object of the Vegentables"
veg1 = vegetables("carrot")
"The below code would create second object of the Vegentables"
veg1 = vegetables("cucumber")

Python에서 클래스의 인스턴스 호출

클래스 메서드는 모든 인스턴스와 클래스 자체에서도 호출할 수 있습니다. 이러한 인스턴스는 클래스와 동일한 메서드를 사용합니다. vegetables 클래스에 대한 메서드가 포함된 아래 코드를 살펴보겠습니다.

먼저 야채 클래스의 개체를 만들고 메서드를 호출합니다. 여기서 야채라는 클래스를 생성합니다. 속성 이름은 당근, 색상은 빨간색으로 할당했습니다. 그런 다음 get_color()라는 메서드를 만듭니다. 이 클래스 메서드에서 매개변수를 self로 메서드에 전달합니다. 이 당근 클래스에 대해 빨간색을 반환합니다.

그런 다음 get_name()이라는 메서드를 만듭니다. 이 클래스 메소드에서 매개변수를 self로 메소드에 전달합니다. 이 당근 클래스에 대해 빨간색을 반환합니다. 그런 다음 마지막으로 야채 클래스의 인스턴스를 만들고 vegetables 클래스의 vegetable1 인스턴스를 사용하여 get color 및 get name 클래스 메서드를 호출합니다.

class vegetables:
    name = "carrot"
    color = "red"

    def get_color(self):
        return self.color

    def get_name(self):
        return self.name


vegetable1 = vegetables()
print(vegetable1.get_name())
print(vegetable1.get_color())

출력:

carrot
red
작가: Abdul Jabbar
Abdul Jabbar avatar Abdul Jabbar avatar

Abdul is a software engineer with an architect background and a passion for full-stack web development with eight years of professional experience in analysis, design, development, implementation, performance tuning, and implementation of business applications.

LinkedIn

관련 문장 - Python Class