Python实战:类

一、圆的面积、周长

class Circle:
    # 初始化一个类参数:r
    def __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 = name
        self.age = age
        self.sex = sex
        self.score = score

    def 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 = type
        self.no = no

    def 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 = name

    def 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()

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

深山老林.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值