>백엔드 개발 >파이썬 튜토리얼 >Python에서 클래스를 사용해야 하는 경우

Python에서 클래스를 사용해야 하는 경우

silencement
silencement원래의
2019-06-21 13:37:174898검색

Python에서 클래스를 사용해야 하는 경우

Python의 모든 데이터는 객체입니다. Python의 장점 중 하나는 강력하고 사용하기 쉬운 고급 내장 데이터 유형입니다. 그렇다면 언제 사용자 정의 클래스를 사용해야 할까요? 예를 들어, Person 클래스를 디자인할 때 사용자 정의 클래스를 사용하지 않는 경우 다음과 같이 할 수 있습니다.

person=['mike', 23, 'male']  #0-姓名, 1-年纪, 2-性别
print(person[0], person[1], person[2])

보시다시피 내장 유형 목록을 사용할 때 다음을 사용해야 합니다. 회원 데이터를 참조하기 위한 첨자는 직관적이지 않습니다. 대신 dic 유형을 사용할 수 있습니다:

person1={'name':'mike', 'age': 23, 'sex': 'male'}
person2={'name':'hellen', 'age': 20, 'sex': 'female'}
print(person1['name'], person1['age'], person1['sex'])

이 방법을 사용하면 아래 첨자를 기억할 필요가 없으며 훨씬 더 직관적입니다. 하지만 사전의 구문은 여전히 ​​다소 번거롭기 때문에 person.name, person.age 등과 같이 참조할 수 있으면 더 좋을 것입니다. 커스텀 클래스가 존재한다는 장점은 다음과 같습니다.

class Person:
    def __init__(self, name, age, sex):
        self.name = name
        self.age = age
        self.sex = sex
    def __str__(self): #重载该函数便于测试
        sep = ','
        return self.name+sep+str(self.age)+sep+self.sex
person1 = Person('mike', 23, 'male') 
person2 = Person('hellen', 20, 'female')
print(person1)
print(person2.name, person2.age, person2.sex)

보시다시피 이 클래스의 생성자가 정의되어 있는 한 이 클래스의 인스턴스를 쉽게 생성할 수 있고 편리하기도 합니다. 데이터 멤버를 참조하는 것이 내장 유형을 직접 사용하는 것보다 훨씬 편리합니다. 실제로 Python은 내장 유형 dic을 사용하여 사용자 정의 클래스 멤버의 저장 및 참조를 구현합니다. 이러한 관점에서 사용자 정의 클래스는 내장 클래스를 사용하는 간단한 방법이며 내장 유형은 Python의 필수 내부 구성 요소입니다. 사용자 정의 부분. 동시에 사용자 정의 클래스는 자체 멤버 함수를 정의하거나 미리 정의된 메서드를 오버로드할 수 있기 때문에 사용자 정의 클래스는 내장 클래스의 기능을 확장하고 실제 사물에 대한 더 나은 시뮬레이션을 제공할 수 있습니다. 프로그래밍할 때 먼저 시뮬레이션할 사물의 개념을 형성한 다음 클래스를 사용하여 개념을 포착해 보십시오. 이것이 객체 지향 설계의 핵심입니다. 동일한 유형의 여러 개체를 생성해야 하는 경우 해당 개체를 최대한 추상화하도록 사용자 정의 클래스를 디자인해야 합니다.

커스텀 클래스를 과도하게 사용하지 마세요. 일부 함수는 함수로만 정의하면 됩니다. 이때는 커스텀 클래스를 설계할 필요가 없습니다.

위 내용은 Python에서 클래스를 사용해야 하는 경우의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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