Python自定义函数

自定义一个函数,用于计算矩形的面积和周长,函数包含两个参数:长和宽,由于正方形是特殊的矩形,因此也支持传递一个参数的情况。当传递一个参数时,表示长和宽相等,最后将计算结果进行返回。(同时支持一个参数和两个参数,同时返回多个值)


def AreaLength(*args):
    length = 0
    width = 0
    if len(args) == 1:
        length = args[0]
        width = length
    if len(args) == 2:
        length = args[0]
        width = args[1]
    if not width:
        width = length
    return length * width, 2 * ( length + width)


print(AreaLength(10,5))
def cal(l, *w):
    if len(w) == 0:
        w = l
    else:
        w = w[0]
    return l*w, 2*(l+w)

print(cal(3,4))
print(cal(4))


def getV(*edge):
    if len(edge) == 1:
        return edge[0] ** 2, 4 * edge[0]
    else:
        return edge[0] * edge[1], 2 * sum(edge)
    
res = getV(2, 5)
print(res)
res = getV(5)
print(res)

可以用类及方法来解:

>>> class Rectangle():
    def __init__(self,a,b=0):
        self.a = a
        self.b = b if b!=0 else a
 
    def Area(self):
        return self.a*self.b
 
    def Perimeter(self):
        return (self.a+self.b)*2

>>> rectangle = Rectangle(3,4)
>>> print(rectangle.Area(),rectangle.Perimeter())
12 14
>>> rectangle = Rectangle(3)
>>> print(rectangle.Area(),rectangle.Perimeter())
9 12