zoukankan      html  css  js  c++  java
  • Python 静态方法

    from math import sqrt
    class Triangle(object):
        def __init__(self,a,b,c):
            self._a=a
            self._b=b
            self._c=c
        #静态方法
        @staticmethod
        def is_valid(a,b,c):
            return a + b > c and a + c > b and b + c > a
        def perimeter(self):
            return self._a+self._b+self._c
        def area(self):
            href=self.perimeter()/2
            return sqrt(href*(href-self._a)*(href-self._b)*(href-self._c))
    def main():
        a,b,c=3,4,5
        #静态方法和类方法都是通过给类发消息来调用的
        if Triangle.is_valid(a,b,c):
            triangle=Triangle(a,b,c)
            print("三角形的周长是:",triangle.perimeter())
            # 也可以通过给类发消息来调用对象方法但是要传入接收消息的对象作为参数
            print(Triangle.perimeter(triangle))
            print("三角形的面积是:",triangle.area())
            print(Triangle.area(triangle))
        else:
            print("不好意思,不能构成三角形!")
    if __name__=='__main__':
        main()
  • 相关阅读:
    列表
    Lambda表达式
    委托
    泛型(二)
    泛型(一)
    继承
    object类
    linux 命令补全包
    记一次 mysql 安装完成后启动报错 且 日志为空
    nginx 下配置https 访问提示下载文件 解决方法
  • 原文地址:https://www.cnblogs.com/andrew3/p/13156447.html
Copyright © 2011-2022 走看看