rect.py 884 字节
Newer Older
骆昊的技术专栏's avatar
骆昊的技术专栏 已提交
1 2 3 4 5 6 7 8 9 10
"""
定义和使用矩形类

Version: 0.1
Author: 骆昊
Date: 2018-03-08
"""


class Rect(object):
J
jackfrued 已提交
11
    """矩形类"""
骆昊的技术专栏's avatar
骆昊的技术专栏 已提交
12

J
jackfrued 已提交
13
    def __init__(self, width=0, height=0):
J
jackfrued 已提交
14
        """初始化方法"""
J
jackfrued 已提交
15 16
        self.__width = width
        self.__height = height
骆昊的技术专栏's avatar
骆昊的技术专栏 已提交
17

J
jackfrued 已提交
18 19 20
    def perimeter(self):
        """计算周长"""
        return (self.__width + self.__height) * 2
骆昊的技术专栏's avatar
骆昊的技术专栏 已提交
21

J
jackfrued 已提交
22 23 24
    def area(self):
        """计算面积"""
        return self.__width * self.__height
骆昊的技术专栏's avatar
骆昊的技术专栏 已提交
25

J
jackfrued 已提交
26 27 28
    def __str__(self):
        """矩形对象的字符串表达式"""
        return '矩形[%f,%f]' % (self.__width, self.__height)
骆昊的技术专栏's avatar
骆昊的技术专栏 已提交
29

J
jackfrued 已提交
30 31 32
    def __del__(self):
        """析构器"""
        print('销毁矩形对象')
骆昊的技术专栏's avatar
骆昊的技术专栏 已提交
33 34 35


if __name__ == '__main__':
J
jackfrued 已提交
36 37 38 39 40 41 42 43
    rect1 = Rect()
    print(rect1)
    print(rect1.perimeter())
    print(rect1.area())
    rect2 = Rect(3.5, 4.5)
    print(rect2)
    print(rect2.perimeter())
    print(rect2.area())