您的位置:首页 > 财经 > 金融 > Python实战:类

Python实战:类

2024/12/23 4:42:38 来源:https://blog.csdn.net/shengshanlaolin_/article/details/141001733  浏览:    关键词:Python实战:类

一、圆的面积、周长

class Circle:# 初始化一个类参数:rdef __init__(self,r):self.r = r# 计算面积的方法def get_area(self):return 3.14*pow(self.r,2)# 计算周长的方法def get_perimeter(self):return 2*3.14*self.r#创建对象
r = eval(input('请输入圆的半径:'))
c = Circle(r)#调用方法
area = c.get_area() #调用计算面积的方法
perimeter = c.get_perimeter() #调用计算周长的方法
print('圆的面积为:',area)
print('圆的周长为:',perimeter)

运行结果:

二、定义学生类录入5个学生信息存储到列表

# 姓名、年龄、性别、分数、学生信息输出的方法
class Student:def __init__(self,name,age,sex,score):self.name = nameself.age = ageself.sex = sexself.score = scoredef info(self):print("姓名:",self.name,",年龄:",self.age,",性别:",self.sex,",分数:",self.score)print('请输入5位学生的信息:(姓名#年龄#性别#成绩)')
lst = [] # 用于存储5个学生对象
for i in range (0,5):s = input(f'请输入学生第{i+1}位学生的信息及成绩:')s_lst = s.split('#') # 这个列表中索引为0的是姓名,1:年龄,2:性别 3:成绩# 创建学生对象stu = Student(s_lst[0],s_lst[1],s_lst[2],s_lst[3])lst.append(stu)#遍历列表,调用info方法
for item in lst:item.info()

运行结果:

三、使用面向对象思想实现乐器弹奏

# 父类
class Instrument:def make_sound(self):pass#Erhu集成Instrument类
class Erhu(Instrument):#重写父类方法def make_sound(self):print('二胡在弹奏')class Piano(Instrument):def make_sound(self):print('钢琴在弹奏')class Violin(Instrument):def make_sound(self):print('小提琴在弹奏')#编写函数
def play(obj):obj.make_sound()er = Erhu()
piano = Piano()
vio = Violin()#调用方法
play(er)
play(piano)
play(vio)

运行结果:

四、使用面向对象思想,设计自定义类,描述出租车和家用轿车的信息

class Car(object):def __init__(self,type,no): # 车型、车牌号self.type = typeself.no = nodef start(self):print('我是车,我能启动')def stop(self):print('我是车,我能停止')class Taxi(Car):def __init__(self, type, no,company):super().__init__(type, no)self.company = company#重写父类的启动和停止方法def start(self):print('乘客您好!')print(f'我是{self.company}c出租车公司,我的车牌是:{self.no},您要去哪里?')def stop(self):print('目的地到了,请您扫码付款,欢迎下次乘坐')class FamilyCar(Car):def __init__(self, type, no,name):super().__init__(type, no)self.name = namedef start(self):print(f'我是{self.name},我的轿车我做主')def stop(self):print('目的地到了,我们去玩吧')#编写测试
taxi = Taxi('上海大众','9999','长城')
taxi.start()
taxi.stop()
family_car = FamilyCar('上海大众','9999','张三')
family_car.start()
family_car.stop()

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com