先看语法,python 类语法中有三种方法,实例方法,静态方法,类方法。 实例方法只能被实例对象调用,静态方法(由@staticmethod装饰的方法)、类方法(由@classmethod装饰的方法),可以被类或类的实例对象调用。 实例方法,第一个参数必须要默认传实例对象,一般习惯用self。 静态 ...
分类:
编程语言 时间:
2018-07-13 16:20:11
阅读次数:
193
Python的方法主要有3个,即静态方法(staticmethod),类方法(classmethod)和实例方法 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 def foo(x): print "executing foo(%s)"%(x) class A(obje ...
分类:
编程语言 时间:
2018-07-12 23:49:52
阅读次数:
240
property是一种特殊的属性,访问它时会执行一段功能(函数)然后返回值 注意:此时的特性arear和perimeter不能被赋值 c.area=3 #为特性area赋值 2 为什么要用property 将一个类的函数定义成特性以后,对象再去使用的时候obj.name,根本无法察觉自己的name是 ...
分类:
其他好文 时间:
2018-07-12 22:37:20
阅读次数:
132
一、静态方法(staticmethod) 静态方法是通过@staticmethod 装饰器,将普通方法装饰为一个静态方法。 静态方法在类中不必传入self参数,不能访问类变量和实例变量。下面先写一个静态方法的例子: 这里面的foo方法就被装饰为了一个静态方法,他不能访问类变量和实例变量,可以调用。 ...
分类:
编程语言 时间:
2018-06-30 18:53:24
阅读次数:
165
1. self表示一个类的实例对象本身。如果用了staticmethod就无视这个self了,就将这个方法当成一个普通的函数使用了。 2. cls表是这个类本身。 3. 更多: 类先调用__new__方法,返回该类的实例对象,这个实例对象就是__init__方法的第一个参数self,即self是__ ...
分类:
编程语言 时间:
2018-06-20 21:18:57
阅读次数:
177
实例方法:在类中,定义的方法,这个方法的第一个参数默认是实例对象,一般习惯使用self 类方法:在类中,定义的方法,这个方法的第一个参数默认是类对象,一般习惯用cls表示,用@classmethod装饰器装饰 静态方法:在类中定义的方法,这个方法的参数没有要求,用@staticmethod装饰器装饰... ...
分类:
其他好文 时间:
2018-06-11 22:04:29
阅读次数:
111
静态方法和类方法的创建: 将它们分别包装在staticmethod和classmethod类的对象中。 静态方法的定义中没有参数self,可直接通过类来调用。 类方法的定义中包含类似于self的参数,通常被命名为cls。对于类方法,也可通过对象直接调用,但参数cls将自动关联到类。 示例: 像这样手 ...
分类:
编程语言 时间:
2018-06-04 23:29:07
阅读次数:
327
1.(静态方法) class Dog(object): def __init__(self, name): self.name = name @staticmethod def name(obj): print('%s is name'%obj) Dog.name('ronghua') @stati ...
分类:
其他好文 时间:
2018-05-28 20:16:32
阅读次数:
140
@property装饰器放置在类中的无需带参数传递的函数上一行,表示该函数为类的一个属性,调用方法为:类对象.函数名 eg: @staticmethod静态方法装饰器,放置在类中的无需带参数传递的函数上一行,表示该函数为类的一个静态方法。 @classmethod类方法装饰器,被装饰的函数是被类调用 ...
分类:
其他好文 时间:
2018-05-24 18:17:42
阅读次数:
134
python staticmethod 返回函数的静态方法。 该方法不强制要求传递参数,如下声明一个静态方法: class C(object): @staticmethod def f(arg1, arg2, ...): ... 以上实例声明了静态方法 f,类可以不用实例化就可以调用该方法 C.f(... ...
分类:
其他好文 时间:
2018-05-24 10:26:25
阅读次数:
180