python的类方法和静态方法
2016-03-04 13:34
429 查看
这篇文章主要介绍了python的类方法和静态方法,以实例形式分析了Python中类方法和静态方法的实现技巧与应用方法,需要的朋友可以参考下
本文实例讲述了python的类方法和静态方法。分享给大家供大家参考。具体分析如下:
python没有和C++中static关键字,它的静态方法是怎样的呢?还有其它语言中少有的类方法又是神马?
python中实现静态方法和类方法都是依赖于python的修饰器来实现的。
复制代码代码如下:
class MyClass:
def method(self):
print("method")
@staticmethod
def staticMethod():
print("static method")
@classmethod
def classMethod(cls):
print("class method")
大家注意到普通的对象方法、类方法和静态方法的去别了吗?
对象方法有self参数,类方法有cls参数,静态方法是不需要这些附加参数的。
在C++中是没有类方法着个概念的的
复制代码代码如下:
class A(object):
"This ia A Class"
@staticmethod
def Foo1():
print("Call static method foo1()\n")
@classmethod
def Foo2(cls):
print("Call class method foo2()")
print("cls.__name__ is ",cls.__name__)
A.Foo1();
A.Foo2();
结果是:
Call static method foo1()
Call class method foo2()
cls.__name__ is A
希望本文所述对大家的Python程序设计有所帮助。
本文实例讲述了python的类方法和静态方法。分享给大家供大家参考。具体分析如下:
python没有和C++中static关键字,它的静态方法是怎样的呢?还有其它语言中少有的类方法又是神马?
python中实现静态方法和类方法都是依赖于python的修饰器来实现的。
复制代码代码如下:
class MyClass:
def method(self):
print("method")
@staticmethod
def staticMethod():
print("static method")
@classmethod
def classMethod(cls):
print("class method")
大家注意到普通的对象方法、类方法和静态方法的去别了吗?
对象方法有self参数,类方法有cls参数,静态方法是不需要这些附加参数的。
在C++中是没有类方法着个概念的的
复制代码代码如下:
class A(object):
"This ia A Class"
@staticmethod
def Foo1():
print("Call static method foo1()\n")
@classmethod
def Foo2(cls):
print("Call class method foo2()")
print("cls.__name__ is ",cls.__name__)
A.Foo1();
A.Foo2();
结果是:
Call static method foo1()
Call class method foo2()
cls.__name__ is A
希望本文所述对大家的Python程序设计有所帮助。
相关文章推荐
- 杂记(python)
- Python 拆分字符串
- Python正则表达式的七个使用范例
- python学习笔记一
- 第一个Python程序
- 《笨办法学Python》 总结
- python 汉字编码问题,请大神帮忙!!
- python 类里面的单下划线与双下划线的区别(私有和保护) .
- Python推荐书籍
- python解析html
- 安装Python
- python正则表达式中的match 和 search
- Python简介
- arcgis10.3 python2.7 开发环境配置
- python round()方法
- python os.execl记录下遇到的传参问题
- python中__name__的使用
- Python模块学习笔记— —time与datatime
- Python array
- PythonOCC 3D图形库学习—创建立方体模型