龙空技术网

python类变量,类方法的定义案例

空山画雨 124

前言:

目前我们对“python定义类”可能比较注重,朋友们都想要分析一些“python定义类”的相关知识。那么小编也在网摘上收集了一些对于“python定义类””的相关资讯,希望我们能喜欢,朋友们一起来了解一下吧!

类变量

1、语法:在类中,方法外面定义变量

class类名:

类变量=表达式

2、调用:类名.类变量

不建意通过对象访问类变量

说明:存储在类中只有一份被所有对象共享

4、作用:描述所有对象的共享数据

类方法;

语法

定义:@classmethod

Def yy ifc qk (cls,参数列表):

方法体

调用:类名.方法名(参数列表)

不建议通过对象访问类方法

说明:

----至少有一个形参,有一个形参用于绑定类,一般命名为cls

----使用@classmethod修饰的目的是调用类方法时可以隐式传递类

----类方法中不能访问实例成员,实例方法中可以访问类成员。

3、作用:操作类变量

class ICBC:

'''

工商银行

'''

#因为类方法没有对象地址所以不能访问实例成员

zong_money=100000#类变量,总行钱数

@classmethod

def print_mony(cls):

#print("总行的存款余额为:%d"%ICBC.zong_money)

print("总行的存款余额为:%d"%cls.zong_money)

#cls与ICBC是同一变量

def __init__(self,name,money):

self.name=name

self.money=money

ICBC.zong_money-=money

ic01=ICBC("工商天津分行",10000)

ic02=ICBC("工商上海分行",10000)

print("总行作款为",ICBC.zong_money)

ICBC.print_mony()

#定义一个学生类,创建三个学生对象。

#可以通过类变量类方法统计对象个数。

class Sduiduns:

counm=0

@classmethod

def print(cls):

#print("一共有%d名学生" % Sduiduns.counm)

print("一共有%d名学生" % cls.counm)#Stuiduns和cls指向同一个内存地址。

def __init__(self,name,nianling):

self.name=name

self.nianling=nianling

Sduiduns.counm+=1

list01=[Sduiduns("张三",21),

Sduiduns("李四",32),

Sduiduns("王五",27),

]

Sduiduns.print()

标签: #python定义类