self与cls的区别:python中类方法的定义

一.通过def定义

需要至少传递一个参数,即self,这样定义的方法必须通过一个类的实例去访问,类似于c++中通过对象去访问;

二.classmethod

这种类方法的特点就是可以通过类名去调用,但是也必须传递一个参数:cls, 即class,表示可以通过类名直接调用;

三staticmethod

静态的类方法,类似于c++的静态函数,特点是参数可以为空,支持类名和对象两种调用方式;

原文地址:https://www.cnblogs.com/huhume/p/9401291.html

时间: 2024-10-11 11:37:53

self与cls的区别:python中类方法的定义的相关文章

python中类方法、类实例方法、静态方法的使用与区别

body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI",Tahoma,Helvetica,Sans-Serif,"Microsoft YaHei", Georgia,Helvetica,Arial,sans-serif,宋体, PMingLiU,serif; font-size: 10.5pt; line-height: 1.5;

Python中类方法重载---大部分

重载方法格式: def __xxx__(self,other): ... 注:重载方法格式-----------------------------------------------------------------运算符运算符重载: 作用: 让自定义的类创建的对象像内建对象一样进项运算符操作 算数运算符: __add__ 加法 + __sub__ 减法 - __mul__ 乘法 * __truedif__ 除法 / __floordiv__ 地板除 // __mod__ 取模(求余) %

python socket编程入门(编写server实例)+send 与sendall的区别与使用方法

python 编写server的步骤: 1. 第一步是创建socket对象.调用socket构造函数.如: socket = socket.socket( family, type ) family参数代表地址家族,可为AF_INET或AF_UNIX.AF_INET家族包括Internet地址,AF_UNIX家族用于同一台机器上的进程间通信. type参数代表套接字类型,可为SOCK_STREAM(流套接字)和SOCK_DGRAM(数据报套接字). 2. 第二步是将socket绑定到指定地址.这

Python字典方法copy()和deepcopy()的区别

1 from copy import deepcopy # import deepcopy模块 2 d = {} 3 d['name'] = ['black', 'guts'] # d = {'name': ['black', 'guts']} 4 c = d.copy() # c = {'name': ['black', 'guts']} 5 dc = deepcopy(d) # dc = {'name': ['black', 'guts']} 6 d['name'].append('whit

Python中类的方法属性与方法属性的动态绑定

最近在学习python,纯粹是自己的兴趣爱好,然而并没有系统地看python编程书籍,觉得上面描述过于繁琐,在网站找了一些学习的网站,发现廖雪峰老师的网站上面的学习资源很不错,而且言简意赅,提取了一些python中的重要的语法和案例.重要的是可以在线测试python的运行代码,缺点就是没有系统的看python的书籍,不能及时的将知识的碎片化联系在一起,这也是看书与不看书的区别.尤其是在python类与实例的方法的调用中觉得云里雾里,思考之后将自己的想法记录下,一来加深自己理解,巩固自己记忆,而来

Python join() 方法与os.path.join()的区别

Python join() 方法与os.path.join()的区别 1. 函数作用: join() :将序列.字符串 .元组等中的元素以指定的字符连接生成一个新的字符串.os.path.join() : 将多个路径组合后返回 2. join()方法说明: join()方法语法:str.join(sequence)参数说明:str:指定的字符,即分隔符sequence:需要连接的元素 #字符串序列 seq = ("apple", "banana", "pe

ios开发中类方法与self的注意点 与实例方法区别

Objective-C里面既有实例方法也类方法.类方法(Class Method) 有时被称为工厂方法(Factory Method)或者方便方法(Convenience method).工厂方法的称谓明显和一般意义上的工厂方法不同,从本质上来说,类方法可以独立于对象而执行,所以在其他的语言里面类方法有的时候被称为静态方法. 注意点一:类方法 1,类方法可以调用类方法. 2,类方法不可以调用实例方法,但是类方法可以通过创建对象来访问实例方法. 3,类方法不可以使用实例变量.类方法可以使用self

Python中类的属性、方法及内置方法

1.类的属性 成员变量 对象的创建 创建对象的过程称之为实例化,当一个对象被创建后,包含三个方面的特性对象聚丙属性和方法, 句柄用于区分不同的对象, 对象的属性和方法,与类中的成员变量和成员函数对应, obj = MyClass()创建类的一个实例,扩号对象,通过对象来调用方法和属性 类的属性 类的属性按使用范围分为公有属性和私有属性类的属性范围,取决于属性的名称, **共有属性**---在内中和内外都能够调用的属性 **私有属性**---不能在内外贝类以外函数调用 定义方式:以"__"

Python中类的定义与使用

Python中类的定义与使用 目标: 1.类的定义 2.父类,子类定义,以及子类调用父类 3.类的组合使用 4.内置功能 1.类的定义 代码如下: #!/usr/bin/env python #coding:utf8 class Hotel(object): """docstring for Hotel""" def __init__(self, room, cf=1.0, br=15): self.room = room self.cf = c