快捷搜索: 王者荣耀 脱发

python 类的创建、初始化方法、实例方法

类的创建语法:

class 类名(继承列表)

"""类文档字符串"""

类的作用:

可以用类创建一个或多个此类的对象(实例)

类内的变量和方法能被此类所创建的所有实例所共同拥有

说明:

类名必须是标识符(与变量名命名规则相同,建议首字母大写)

类名实质上就是变量,它绑定一个类实例

类的定义最后面要加上两个空格以告诉解释执行器,类的定义已经结束

构造函数:

构造函数的调用表达式

类名([创建传参列表]) []里的内容代表可省略

作用:

创建这个类别的实例对象,并返回此实例对象的引用关系

示例:

class Dog: #定义一个类

pass

dog1 = Dog() #用类来创建一个对象用dog1绑定

print(id(dog1)) #打印dog1所在的内存地址

dog2 = Dog() #创建第二个对象 用dog2绑定

print(id(dog2))

print(dog1 is dog2) #判断两只狗是不是同一只狗

实例说明:

实例有自己的作用域或名字空间,可以为该实例添加实例变量(也叫属性)

实例可以调用类的方法

实例可以访问类中的类变量

实例变量(属性 attribute)

每个实例可以有自己的变量,成为实例变量(属性)

属性的使用语法:

实例.属性名

属性的赋值规则:(同变量规则相同)

1、首次为属性赋值则创建此属性

2、再次为属性赋值则改变属性的绑定关系

示例:

class Dog:

pass

dog1 = Dog()

dog1.kinds = "京巴" #为dog1绑定的实例添加kinds属性

dog1.color = "白色" #添加属性

print(dog1.kinds,dog1.color) #访问属性

dog1.color = 黄色 #修改dog1.color的绑定关系

print(dog1.color)

实例方法 method

语法:

class 类名(继承列表):

def 实例方法名(self,参数1,参数2,...):

语句块

作用:

用于描述一个对象的行为,让此类型的全部对象拥有相同的行为

说明:

实例方法的实质是函数,是定义在类内的函数

实例方法的第一个参数代表调用这个方法的实例,一般会命名为self

实例方法的调用语法:

实例.实例方法名(调用参数)

类名.实例方法名(实例,调用参数)

示例:

1、

# instance_method.py

#此示例示意实例方法的定义方式和调用方法

class Dog():

"""这是一个类,用来描述一个小动物的行为"""

def eat(self,food):

"""小狗能够有吃东西的行为"""

print("小狗吃了",food)

def sleep(self,hour):

print("小狗睡了",hour,"小时")

dog1 = Dog() #创建一个示例对象

dog1.eat("骨头") #让狗吃东西

dog1.sleep(1) #让够睡觉

dog2 = Dog() #创建一个示例对象

dog2.eat("包子") #让狗吃东西

dog2.sleep(2)

dog3 = Dog() #创建一个示例对象

Dog.eat(dog3,"狗粮") #让狗吃东西

Dog.sleep(dog2,3)

初始化方法

作用:

对新创建的对象添加属性等必须的资源

语法形式:

class 类名:

def __init__(self[,参数列表]):

语句块

[] 代表其中内容可省略

说明:

初始化方法必须为__init__不可改变

初始化方法会在构造函数创建实例后自动调用,且将实例吱声通过第一个参数self传入__init__方法

构造函数的实参将通过__init__方法的参数列表传到__init__方法中

初始化方法内如果需要return语句返回,则必须返回None

经验分享 程序员 微信小程序 职场和发展