1. 程式人生 > >python-class(2)

python-class(2)

del ini 析構 計數器 sel div blog 垃圾回收 析構函數

#!/usr/bin/env python
#-*- coding:utf-8 -*-
############################
#File Name: class2.py
#Author: frank
#Email: [email protected]
#Created Time:2017-09-04 14:40:07
############################

‘‘‘
Python 使用了引用計數這一簡單技術來跟蹤和回收垃圾。
在 Python 內部記錄著所有使用中的對象各有多少引用。
一個內部跟蹤變量,稱為一個引用計數器。
當對象被創建時, 就創建了一個引用計數, 當這個對象不再需要時, 也就是說, 這個對象的引用計數變為0 時, 它被垃圾回收。但是回收不是"立即"的, 由解釋器在適當的時機,將垃圾對象占用的內存空間回收。
‘‘‘ class Point: def __init__(self, x=0, y=0): self.x = x self.y = y def __del__(self): #析構函數 __del__ ,__del__在對象銷毀的時候被調用,當對象不再被使用時,__del__方法運行 class_name = self.__class__.__name__ print class_name, "destroy" pt1 = Point() pt2 = pt1 pt3 = pt1 print id(pt1), id(pt2), id(pt3)
del pt1 del pt2 del pt3 #140370461034832 140370461034832 140370461034832 #Point destroy

python-class(2)