类方法

使用装饰器@classmethod 第一个参数必须是当前类对象,该参数名一般约定为“cls” (可修改但不建议)通过他来传递类的属性和方法(不能传实例的属性和方法)

调用:实例对象和类对象多可以调用

实例方法

第一个参数必须是实例对象,该参数名要为“self”通过他来传递实例的属性和方法(可传递类的属性和方法)

调用:实例对象调用

静态方法

普通函数就位于类定义的命名空间中,它不会对任何实例类型进行操作,需要使用装饰器@staticmethod定义静态方法

调用:类对象和实例都可以调用类方法

通过实例了解

class Book(object):
# 类属性
age = 23
def __init__(self,title,name='a'):
self.title = title
self.name = name
#类方法
@classmethod
def create(cls,title,x):
book = cls(title=title,name=x)
return book
# 静态方法
@staticmethod
def cx(x):
return x
def add(self):
print(self.title,self.name)
def lei(self):
# 实例访问类变量
print(self.__class__.age)
@classmethod
def lei2(cls):
# 类方法访问类变量
print(cls.age) # 实例化对象
book = Book("腾")
book.add() # 腾 a
# 改变实例属性
book.title="翁婿"
book.add() #翁婿 a
book.lei2() #
print(Book.age) #
#修改类属性
Book.age =55
print(Book.age)
# 类调用静态方法
print(Book.cx(3))
# 实例调用静态方法
print(book.cx(4))

Python 类方法、实例方法、静态方法的使用与及实例的更多相关文章

  1. python类方法、静态方法、实例方法例子

    类方法,静态方法,普通方法 #coding=utf-8   class Foo:     def __init__(self,name):         self.name=name       d ...

  2. python类方法和静态方法

    C++的静态方法是用static关键字,python j是没用static的. python中实现静态方法和类方法都是依赖于python的修饰器来实现的. class MyClass: def  me ...

  3. Python类方法、静态方法与实例方法

    静态方法是指类中无需实例参与即可调用的方法(不需要self参数),在调用过程中,无需将类实例化,直接在类之后使用.号运算符调用方法. 通常情况下,静态方法使用@staticmethod装饰器来声明. ...

  4. Python类方法、静态方法与实例方法 -----类里面不需要实例化参数 和没带self的函数 调用此函数的方法

    来源: https://www.cnblogs.com/blackmatrix/p/5606364.html 静态方法是指类中无需实例参与即可调用的方法(不需要self参数),在调用过程中,无需将类实 ...

  5. Classmethod and Staticmethod - Python 类方法 和 静态方法

    classmethod and staticmethod classmethod 的是一个参数是类对象 cls (本类,或者子类), 而不是实例对象 instance (普通方法). classmet ...

  6. python类的实例方法\静态方法\类方法区别解析(附代码)

    前言 搞了好久python,一直搞得不太清楚这几种类的方法,今天花时间好好测试一下,算是弄懂点皮毛吧. 三种方法的不同 先剽窃个图看一下 可以看到,实例是三种方法都可以调用的,而类只可以调用两种.所以 ...

  7. python中的实例方法、类方法、静态方法的区别

    Python 除了拥有实例方法外,还拥有静态方法和类方法,跟Java相比需要理解这个类方法的含义. class Foo(object): def test(self)://定义了实例方法 print( ...

  8. python类:类方法和静态方法

    http://blog.csdn.net/pipisorry/article/details/49516185 面相对象程序设计中,类方法和静态方法是经常用到的两个术语.逻辑上讲:类方法是只能由类名调 ...

  9. python之 类对象 类方法 实例对象 实例方法 静态方法

    实例对象1. 创建的时间:使用 类名()的时候,就创建一个实例对象2. 实例属性:怎样添加 只要是一个变量能够指向这个实例对象,那么这个变量.xxxx = 111就是给其添加一个实例属性 特点: 跟着 ...

随机推荐

  1. linux文件系统相关命令(df/du/fsck/dumpe2fs)

    一.文件系统查看命令df 格式 df [选项] [挂载点] 选项 名称 作用 -a 显示所有的文件系统信息,包括特殊文件系统,如/proc,/sysfs -h 使用习惯单位显示容量,如KB,MB或GB ...

  2. JS中this的几种情况

    1.给元素的某个事件行为绑定方法,事件触发,方法执行,此时方法中的this一般都是当前元素本身: <div id="div"></div> div.oncl ...

  3. clr via c# 参数和属性

    1,可选参数和命名参数 当给参数指定默认值时,可以在调用的时候省略 有默认值的参数,必须放在所有没有默认值的参数后面,但是 参数数组必须放在最后面,parm 默认值必须时编译时能确定的常量值,对于值类 ...

  4. cjson库的移植和使用

    cjson 下载链接 https://github.com/DaveGamble/cJSON 下载完成将其中的cJson.c cJson.h复制到自己的项目中引用即可: 1.字符串转json格式 cJ ...

  5. python練習

    #登录,账户密码储存在文件中,限制登录 count = 0 for i in range(3): b = input("账号:") c = b + "," + ...

  6. 《Adaptive Density Map Generation for Crowd Counting》密集人群检测论文笔记

    背景 密度图\(D_g\)的生成对于最终网络预测结果\(D_e\)至关重要,但是密度图\(D_g\)生成的过程中,高斯核的大小常常是手动设定的,并且对于不同的数据集,核大小和形状通常不一样.这些手动选 ...

  7. linuxWeb环境安装——小皮面板不错的面板

    安装环境为最新的:CentOS8.1.1911  linux的web环境安装,说白了,弄明白了就不难.为此阅读了多部文献,最先的是linux教程,重理论轻实践:之后,看了鸟哥的私房菜,有2本,每本都8 ...

  8. Elementui_day01,基础

    Elementui_day01 1. 安装 npm i element-ui -S 2. 引入 import ElementUI from 'element-ui'; import 'element- ...

  9. C# WPF之Material Design自定义颜色

    微信公众号:Dotnet9,网站:Dotnet9,问题或建议:请网站留言, 如果对您有所帮助:欢迎赞赏. C# WPF之Material Design自定义颜色 阅读导航 本文背景 代码实现 本文参考 ...

  10. python数据类型(第二弹)

    针对上一篇博文提出的若干种python数据类型,笔者将在本文和后续几篇博文中详细介绍. 本文着重介绍python数据类型中的整数型.浮点型.复数型.布尔型以及空值. 对于整数型.浮点型和复数型数据,它 ...