- 浏览: 543391 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (618)
- java (109)
- Java web (43)
- javascript (52)
- js (15)
- 闭包 (2)
- maven (8)
- 杂 (28)
- python (47)
- linux (51)
- git (18)
- (1)
- mysql (31)
- 管理 (1)
- redis (6)
- 操作系统 (12)
- 网络 (13)
- mongo (1)
- nginx (17)
- web (8)
- ffmpeg (1)
- python安装包 (0)
- php (49)
- imagemagic (1)
- eclipse (21)
- django (4)
- 学习 (1)
- 书籍 (1)
- uml (3)
- emacs (19)
- svn (2)
- netty (9)
- joomla (1)
- css (1)
- 推送 (2)
- android (6)
- memcached (2)
- docker、 (0)
- docker (7)
- go (1)
- resin (1)
- groovy (1)
- spring (1)
最新评论
-
chokee:
...
Spring3 MVC 深入研究 -
googleyufei:
很有用, 我现在打算学学Python. 这些资料的很及时.
python的几个实用网站(转的) -
hujingwei1001:
太好了找的就是它
easy explore -
xiangtui:
例子举得不错。。。学习了
java callback -
幻影桃花源:
太好了,謝謝
Spring3 MVC 深入研究
python的类方法和类的静态方法,其实就是一个用@classmethod和@staticmethod修饰的类中的函数。其中类方法要在定义的时候指出在调用它时隐式赋给他的第一个参数,这个参数一般情况下是类本身(cls),这个有点像类的实例方法中代表类实例本身的self。类的静态方法在定义的时候就不用定义这个参数,因为他是静态方法不属于任何一个类实例。
========================================================================
类方法
classmethod( function)
Return a class method for function.
A class method receives the class as implicit first argument, just like an instance method receives the instance. To declare a class method, use this idiom:
为一个函数返回一个类方法
类方法隐式的接受类作为它的第一个参数,就像对象方法隐式的接受当前对象作为第一个参数一样.这样定义一个类方法:
class C:
@classmethod
def f(cls, arg1, arg2, ...): ...
The @classmethod form is a function decorator - see the description of function definitions in chapter 7 of the Python Reference Manual for details.
@classmethod是修饰方法的写法-请查阅Python手册第七章里面关于函数定义的描述.
It can be called either on the class (such as C.f()) or on an instance (such as C().f()). The instance is ignored except for its class. If a class method is called for a derived class, the derived class object is passed as the implied first argument.
它可以通过类调用(比如C.f()),也可以通过对象实例调用(比如C().f()).真正发挥作用的是类而不是类的实例对象.如果一个类方法被一个子类调用,这个子类的对象实例会作为第一个参数传给类方法.
Class methods are different than C++ or Java static methods. If you want those, see staticmethod() in this section. New in version 2.2. Changed in version 2.4: Function decorator syntax added.
Python的类方法不同于C++或Java的静态方法.如果你想要的是那样的静态方法,请查看staticmethod()方法,
=====================================================================
类的静态方法
staticmethod(function)
Return a static method for function.
为一个函数返回一个静态方法
A static method does not receive an implicit first argument. To declare a static method, use this idiom:
一个静态方法不接受一个隐式的第一个参数,要声明一个静态方法,用下面的方式:
class C:
@staticmethod
def f(arg1, arg2, ...): ...
The @staticmethod form is a function decorator – see the description of function definitions in Function definitions for details.
@staticmethod是一个函数修饰器。
It can be called either on the class (such as C.f()) or on an instance (such as C().f()). The instance is ignored except for its class.
可以通过类(C.f())或者类实例(C().f())来调用。通过类实例来调用起作用的其实是类,而不是类实例。
Static methods in Python are similar to those found in Java or C++. For a more advanced concept, see classmethod() in this section.
python的静态方法和java与c++中的很像。一些更高级的概念看classmethod()这一节。
For more information on static methods, consult the documentation on the standard type hierarchy in The standard type hierarchy.
关于静态函数更多的信息,看The standard type hierarchy中标准类型继承的文档。
发表评论
-
Django静态文件处理总结
2015-05-13 13:59 497原文地址:http://blog.csdn.net/wenxu ... -
原 异步非阻塞机制与多线程阻塞机制在处理并发耗时等待任务上的效率对比分析
2015-04-21 10:05 655原文地址:http://my.oschina.net/mall ... -
Django报错“_mysql_exceptions.Warning: Incorrect string value: ‘\xE6\xB5…’ for colu
2015-03-25 15:50 959原文地址:http://www.tuicool.com/art ... -
django使用mysql时的中文存储问题 - [python]
2015-03-25 15:36 1462原文地址:http://www.blogbus.com/831 ... -
NIO学习笔记——解决“服务器端cpu占用率高”
2015-01-29 10:17 946原文地址:http://blog.csdn ... -
python 调用 php 实例
2014-06-23 14:09 2593原文地址:http://hi.baidu.com/ji_hai ... -
php调用python
2014-06-23 14:08 756原文地址:http://blog.163.com/darwin ... -
uwsgi python ssl编译问题记录
2014-06-19 14:24 843uwsgi python ssl编译问题记录 发表于6个月前( ... -
python2.7 安装ssl模块
2014-06-19 14:22 3160python2.7 安装ssl模块 2012-02-28 13 ... -
Centos6.5下升级Python 2.6.6 to python 2.7.3
2014-06-19 13:53 629Centos6.5下升级Python 2.6.6 to pyt ... -
翻译:redis-py 说明文件 (2012-05-30 17:55:52)
2014-06-04 10:22 429翻译:redis-py 说明文件 (2012-05-30 17 ... -
关于Redis的Python客户端的连接池问题
2014-06-04 10:21 595关于Redis的Python客户端的连接池问题 在一 ... -
Windows下 Python 安装包的配置
2014-03-22 10:23 6131、下载安装 Python python-2.7.2.msi ... -
[翻译]深入理解Tornado——一个异步web服务器
2014-03-07 15:16 1599[翻译]深入理解Tornado— ... -
多版本Python共存[支持使用pip安装包]
2014-02-28 10:59 1105多版本Python共存[支持使 ... -
Django 数据库访问性能优化
2013-09-05 15:22 655Django 数据库访问性 ... -
Python六大开源框架对比:Web2py略胜一筹
2013-08-21 11:29 790Python是一门动态、面向对象语言。其最初就是作为一门面向 ... -
Python 代码调试技巧
2013-08-15 18:11 840使用 pdb 进行调试 pdb 是 python 自带的 ... -
python urlencode 编码
2013-07-05 13:28 929urlencode 调用方法 urlencode的参 ... -
window下使用virtualenv
2013-06-30 15:26 1077--- window下使用virtualenv -- ...
相关推荐
主要介绍了Python 类方法和实例方法(@classmethod),静态方法(@staticmethod),结合实例形式分析了Python 类方法和实例方法及静态方法相关原理、用法及相关操作注意事项,需要的朋友可以参考下
定义:第一个参数必须是实例对象,该参数名一般约定为“self”,通过它来传递实例的属性和方法(也可以传类的属性和方法); 调用:只能由实例对象调用。 类方法 定义:使用装饰器@classmethod。第一个参数...
主要介绍了python类和函数中使用静态变量的方法,实例分析了三种常用的实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下
主要介绍了关于Python中静态方法与类成员的相关资料,文中通过示例代码给大家详细总结了两者在语法和使用上的区别,有需要的朋友可以参考借鉴,下面来一起看看吧。
类方法和静态方法;类方法是类所拥有的方法,需要用修饰器“@classmethod”来标识其为类方法。对于类方法,第一个参数必须是类对象,一般以cls作为第一个参数(同self一样只是一个习惯),能够通过对象名调用类方法,...
在这个文件中,可以像 Java 中的静态方法一样,定义函数或类方法,只需在函数名或方法名前加上 @staticmethod 或者不加,即可定义成静态方法,无需实例化相关对象即可直接调用。 在 Python 中,可以使用模块(Module...
刚接触Python中的面向对象,对于类方法和静态方法难以区分,通过查找知乎、CSDN论坛,废了好大的劲思路才逐渐明朗,所以就总结顺便分享一下。 首先开始编辑代码 # 普通方法、类方法、静态方法的比较 # 普通方法、...
python中的对象方法、类方法、静态方法的区别以及python代码示例
主要介绍了解析python 类方法、对象方法、静态方法的的相关资料,帮助大家更好的理解和学习python,感兴趣的朋友可以了解下
何时定义静态方法和类方法:当你的某个函数与其它函数没有任何关系,就可以定义,静态方法和类方法只是为了方便调用,不需要创建实例,直接类名.函数名就可以调用。 静态方法 静态方法为类所有,可以通过对象来使用...
主要介绍了python 类方法/静态方法的相关资料,帮助大家更好的理解和学习python,感兴趣的朋友可以了解下
ython 类语法中有三种方法,实例方法,静态方法,类方法。 ps.python中self,cls的区别 普通实例方法,第一个参数需要是self,它表示一个具体的实例本身。 如果用了staticmethod,那么就可以无视这个self,而将这...
本篇文章是上一篇:初学者python笔记(面向对象编程、类与对象)的后续篇,是关于Python中面向对象编程的更深入分析,主要总结了类的三大方法:静态属性、类方法、类的组合方面的重点知识 类的三大方法 Ps:请先看...
主要介绍了Python 静态方法和类方法,结合实例形式分析了Python类、实例、静态方法等相关概念、原理与使用技巧,需要的朋友可以参考下
本文实例讲述了Python面向对象之静态属性、类方法与静态方法。分享给大家供大家参考,具体如下: 1. 静态属性:在函数前加@property,将函数逻辑”封装“成数据属性,外部直接调用函数名,如同调用属性一样。这个...
本文实例讲述了python的类方法和静态方法。分享给大家供大家参考。具体分析如下: python没有和C++中static关键字,它的静态方法是怎样的呢?还有其它语言中少有的类方法又是神马? python中实现静态方法和类方法都...