Python实战:类

一、圆的面积、周长

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个学生信息存储到列表

python 复制代码
# 姓名、年龄、性别、分数、学生信息输出的方法
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()

运行结果:

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

python 复制代码
# 父类
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)

运行结果:

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

python 复制代码
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()
相关推荐
天赐范式8 分钟前
天赐范式第186天:让方差开始自洽——Bulmer效应的闭式验证
python·数字生命·天赐范式·动态运行时·遗传方差·bulmer效应
泡茶喝茶写代码10 分钟前
A股量化数据工程:从 REST 接口到策略信号(第 8 篇):成长能力因子:营收与利润增速
java·python·股票数据api·股票数据api接口·股票量化数据api·股票量化数据接口·股票数据api数据
Είναι η κοπέλα1 小时前
显存计算与模型选择:你的显卡能跑多大的模型
人工智能·pytorch·python·开源·conda
ROSF68681 小时前
2026 仿石漆乳液供应商:市场布局与行业发展态势梳理
大数据·人工智能·python
青少儿编程课堂1 小时前
AC自动机多模式串匹配精讲:校园关键词巡检实战解析
c++·python·算法·bfs·信息学竞赛
hhzz2 小时前
【YOLO 入门到精通 04】理解任务与模型家族:7 大 CV 任务与 YOLO26 选型指南
人工智能·python·深度学习·yolo·计算机视觉
Escalating_xu2 小时前
【Python】使用库:标准库、第三方库、pip、项目实战与程序打包
java·python·pip
水獭比特2 小时前
Agent 工具审批不止一个按钮:用 v0.22.1 复盘入口、恢复和副作用
人工智能·python
苦瓜打怪兽2 小时前
leetcode 热题100(11. 盛最多水的容器)
python·算法·leetcode
砚底藏山河2 小时前
量化实战:回测数据底座快照与版本管理进阶
java·大数据·python·金融·maven