zoukankan      html  css  js  c++  java
  • python 实例方法,类方法,静态方法,普通函数

    python中有实例方法,类方法,静态方法,普通函数

    类方法需要@ classmethod 修饰并且有个隐藏参数 cls,实例方法必须有个参数 self, 静态方法必须有 @staticmethod修饰

    普通函数限制:

    def ordinary_function(formal_parameter):
            print "I am an ordinary function, I can't vist class var and intance var"
            print self.instance_var #报错,因此普通函数无法访问实例方法
            print clacc_var#报错,因此普通函数无法访问类变量

     实例方法可以添加参数,也可以不添加参数:

    下面这段代码能正确运行。add是一个实例方法,fcn也是实例方法,所以实例方法能调用实例方法,但普通函数是不能调用实例方法的

    class TestClass(object):
      val1 = 100
       
      def __init__(self):
        self.val2 = 200
       
      def fcn(self,val = 400):
        val3 = 300
        self.val4 = val
        self.val5 = 500
        result = self.val4 + self.val5
        return result
    
      def add(self):
        return self.fcn() + 1
    
    
    if __name__ == '__main__':
      inst = TestClass()
      print inst.add()
  • 相关阅读:
    FCN 分割网络详解
    ResNet 结构理解
    使用 Estimator 构建卷积神经网络
    Object Detection Review
    MP 及OMP算法解析
    Docker 使用及常用命令
    采用std::thread 替换 openmp
    模型优化,汇总
    图像几何变换
    多线程下C#如何保证线程安全?
  • 原文地址:https://www.cnblogs.com/ymjyqsx/p/7376308.html
Copyright © 2011-2022 走看看