python-类的属性和方法练习
面向对象编程
类
类是一类事物的统称,比如学生。对象就是类的实例化。
类有属性(变量),比如学生的姓名、性别、年龄、成绩等,也就是编程里面的变量。
类有方法(函数),比如学生的上课、下课等,也就是编程里面的函数。创建类
类是一种数据结构,我们可以用它来定义对象,对象把数据值和行为特性融合在一起。Python 使用class
关键字来创建类:通常类名的第一个字母大写,推荐使用驼峰式命名法,单词首字母均大写。类有属性(变量)和方法(动作,函数)组成。
创建类
类是一种数据结构,我们可以用它来定义对象,对象把数据值和行为特性融合在一起。Python 使用class
关键字来创建类:通常类名的第一个字母大写,推荐使用驼峰式命名法,单词首字母均大写。类有属性(变量)和方法(动作,函数)组成。
class ClassName(bases):'class documentation string' #'类文档字符串'class_suite # 类体
简述__init___方法
__init__()
是类的实例(对象)创建后第一个被调用的方法,通常被用来进行对象中属性(变量)的初始化。设置实例的属性可以在实例创建后任意时间进行,但是通常情况下优先在__init__()
方法中实现。
#导入时间包
import time
#定义一个类Stu
class Stu():
#定义类自身的初始属性 __init__ self()//固定搭配def __init__(self,name,sex,age,score):self.name= nameself.sex= sexself.age= ageself.score= score#定义了good_ssss方法为努力学习,且在方法中在方法中打印"努力学习"# 并暂停10秒钟(使用time.sleep(10)模拟学习时间),# 然后将成绩增加0.1。def good_ssss(self):print("努力学习")time.sleep(10)self.score += 0.1#get_score方法用于获取学生的成绩,打印学生姓名和成绩。def get_score(self):print(f"{self.name}的成绩是{self.score}")
# 此处创建了两个学生对象
stu1 = Stu ("AJEST",True,24,59.9)
stu2 = Stu ("XBD",False,24,69.9)
#此处stu1调用了get_score方法.
# 打印成绩并使用good_ssss方法学习,然后再调用get_score方法打印成绩,并暂停10s
stu1.get_score()
stu1.good_ssss()
stu1.get_score()
创建一个Stu 类,继承Kid 类,同时包含成绩属性,获取成绩方法,努力学习方法,play 方法,要求play 方法重写,成绩属性私有
私有化失败
私有化成功
最终代码
3 由Stu 类生成学生对象
4 测试类中方法
#导入时间模块
import time
#定义一个类Kid
class Kid():#定义类自身的初始属性 __init__ self()//固定搭配def __init__(self,name ="",sex ="",age =""):self.name = nameself.age = ageself.sex =sex#定义了play方法并输出LOL中def play(self):print('LOL中')
#表示Stu类会继承Kid类属性和方法
class Stu(Kid):#定义类自身的初始属性 __init__self()//固定搭配def __init__(self,name ='',sex ='',age ='',score =''):# 是一个构造方法(初始化方法)的调用,用于初始化 Kid 类的实例对象。这个方法接受了 self、name、sex 和 age 四个参Kid.__init__(self,name,sex,age)# 给当前代码score赋值self.score = score# 给get_score定义方法将输出名字和成绩插入到输出语句中。def get_score(self):print(f'{self.name} 的成绩是{self.score}')# 定义一个玩的方法def play(self):print('LOL中......')time.sleep(2) # 停2sself.score -= 0.1 #成绩降低了0.1def good_good_study(self): # 定义了good_good_study的方法print('努力学习中')time.sleep(2) #停2s后self.score += 0.1#成绩提升了0.1#此处创建了4个学生对象并被赋值了类的属性
stu1 = Stu(name = 'XBD',sex = True, age = 24,score = 59.9) # 生成学生对象
stu2 = Stu(name ='X',sex = True, age = 25,score =49.9)
stu3 = Stu(name = 'XB',sex = True,age =23,score = 99.9)
stu4 = Stu(name = 'BD', sex = True, age = 24,score =79.9)
stu1.play()
stu1.get_score()
# print(stu1.__score) #私有化
stu1.good_good_study () #测试类中方法
stu1.good_good_study ()
stu1.good_good_study ()
stu1.get_score()
nt(stu1.__score) #私有化
stu1.good_good_study () #测试类中方法
stu1.good_good_study ()
stu1.good_good_study ()
stu1.get_score()