class Test(object): def __init__(self, name): self.name = name print('这是构造函数') def say_hi(self): print('hell, %s' % self.name) def __del__(self): print('这是析构函数') obj = Test('bigberg') obj.say_hi() del obj #输出 这是构造函数 hello bigberg 这是析构函数
클래스의 내용 상태를 초기화하는 데 사용되며 Python에서 제공하는 생성자 유형 __init__(), 즉 클래스가 인스턴스화될 때 함수가 실행됩니다. __init__( ) 메서드는 선택 사항, 제공되지 않으면 Python은 기본 __init__ 메서드를 제공합니다.
"__del__"은 객체를 삭제하기 위해 del을 사용할 때 자체 소멸자가 호출됩니다. 또한 해당 객체가 특정 범위에서 호출되면 다른 범위를 벗어나게 됩니다. 소멸자는 범위와 동시에 한 번 호출되며, 이는 메모리 공간을 확보하는 데 사용할 수 있습니다.
__del__()도 선택 사항입니다. 제공되지 않으면 Python은 백그라운드에서 기본 소멸자를 제공합니다
s = '123' print('del...running') del s
del을 사용하여 객체를 삭제할 때 객체의 메모리 공간이 직접 지워지지 않습니다. Python은 재활용을 처리하기 위해 '참조 계산' 알고리즘을 사용합니다. 즉, 객체가 해당 범위 내의 다른 객체에 의해 더 이상 참조되지 않으면 Python은 자동으로 객체를 지웁니다.
소멸자 __del__()은 삭제된 객체가 참조될 때 해당 객체의 메모리 공간을 자동으로 지웁니다.
생성자:
은 클래스의 콘텐츠 상태를 초기화하는 데 사용됩니다. Python에서 제공하는 생성자는 __init__();
입니다. 즉, 클래스가 인스턴스화될 때 이 함수가 실행됩니다. 그런 다음 먼저 초기화할 속성을 이 함수에 넣을 수 있습니다. 다음 프로그램:
__init__() 메서드는 선택 사항입니다. 제공되지 않으면 Python은 기본 __init__ 메서드를 제공합니다.
일반 데이터 수집에는 정의된 get 및 set 메서드가 필요합니다
위 내용은 Python 소멸자와 생성자의 사용법에 대한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!