>백엔드 개발 >파이썬 튜토리얼 >Python의 동일한 클래스 내에서 다른 클래스 함수를 어떻게 호출합니까?

Python의 동일한 클래스 내에서 다른 클래스 함수를 어떻게 호출합니까?

Susan Sarandon
Susan Sarandon원래의
2024-12-17 21:29:14458검색

How Do I Call One Class Function from Another Within the Same Class in Python?

클래스 내 함수 호출: 실용적인 접근 방식

객체 지향 프로그래밍에서 클래스는 데이터와 기능을 캡슐화하여 논리적 엔터티로 구성합니다. 이러한 개체에 대해 작업을 수행해야 하는 경우 클래스 내에서 멤버 함수를 정의할 수 있습니다. 그러나 둘 다 동일한 클래스에 정의된 경우 다른 함수 내에서 하나의 함수를 호출하는 방법이 항상 명확하지는 않습니다.

문제:

다음을 계산하는 코드를 고려하세요. 좌표 간 거리:

class Coordinates:
    def distToPoint(self, p):
        # Calculate distance using Pythagoras' theorem

    def isNear(self, p):
        # How do we call distToPoint from isNear?

이 예에서는 다음을 사용하여 점이 다른 점 근처에 있는지 확인하려고 합니다. distToPoint 함수. isNear 함수 내에서 이 함수를 어떻게 호출합니까?

해결책:

동일한 클래스 내에서 멤버 함수를 호출하려면 클래스(관례적으로 self라고 함)를 사용하여 해당 메서드에 액세스합니다. 수정된 isNear 함수는 다음과 같습니다.

class Coordinates:
    def distToPoint(self, p):
        # Calculate distance using Pythagoras' theorem

    def isNear(self, p):
        self.distToPoint(p)
        # Continue with other operations

distToPoint 앞에 self를 추가하면 Coordinates 클래스의 self 인스턴스에서 distToPoint 멤버 함수를 호출하려는 것을 명시적으로 나타냅니다.

사용 예:

이 코드를 사용하려면 Coordinates 클래스의 인스턴스를 생성한 다음 해당 인스턴스에서 isNear 함수를 호출합니다.

coordinates = Coordinates()
coordinates.isNear(another_point)

이렇게 하면 distToPoint 함수를 사용하여 인스턴스의 좌표와 지정된 another_point 사이의 거리가 계산됩니다.

위 내용은 Python의 동일한 클래스 내에서 다른 클래스 함수를 어떻게 호출합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.