当前位置: 首页 > news >正文

郴州网站建设软件定制开发平台e盘网站建设

郴州网站建设软件定制开发平台,e盘网站建设,介绍自己做的电影网站,惠城区龙丰街道浙大疏锦行 DAY 28 类的定义和方法 知识点回顾: 1.类的定义 2.pass占位语句 3.类的初始化方法 4.类的普通方法 5.类的继承:属性的继承、方法的继承 作业 题目1:定义圆(Circle)类 要求: 1.包含属性&#x…

@浙大疏锦行
DAY 28 类的定义和方法

知识点回顾:
1.类的定义
2.pass占位语句
3.类的初始化方法
4.类的普通方法
5.类的继承:属性的继承、方法的继承

作业
题目1:定义圆(Circle)类
要求:
1.包含属性:半径 radius。
2.包含方法:
●calculate_area():计算圆的面积(公式:πr²)。
●calculate_circumference():计算圆的周长(公式:2πr)。
3.初始化时需传入半径,默认值为 1。

# 示例运行
circle = Circle(5)
print(f"半径:{circle.radius}")       # 输出:半径:5
print(f"面积:{circle.calculate_area()}")   # 输出:面积:78.54(保留两位小数)
print(f"周长:{circle.calculate_circumference()}") # 输出:周长:31.42(保留两位小数)

题目2:定义长方形(Rectangle)类
1.包含属性:长 length、宽 width。
2.包含方法:
●calculate_area():计算面积(公式:长×宽)。
●calculate_perimeter():计算周长(公式:2×(长+宽))。 is_square() 方法,判断是否为正方形(长 == 宽)。
3.初始化时需传入长和宽,默认值均为 1。

rect = Rectangle(4, 6)
print(f"长:{rect.length}, 宽:{rect.width}")  # 输出:长:4, 宽:6
print(f"面积:{rect.calculate_area()}")      # 输出:面积:24
print(f"周长:{rect.calculate_perimeter()}")  # 输出:周长:20
print(f"是否为正方形:{rect.is_square()}")    # 输出:是否为正方形:Falsesquare = Rectangle(5, 5)
print(f"是否为正方形:{square.is_square()}")  # 输出:是否为正方形:True

题目3:图形工厂
创建一个工厂函数 create_shape(shape_type, *args),根据类型创建不同图形对象:图形工厂(函数或类)

shape_type="circle":创建圆(参数:半径)。
shape_type="rectangle":创建长方形(参数:长、宽)。
shape1 = create_shape("circle", 5)
print(shape1.calculate_circumference())  # 输出:31.42shape2 = create_shape("rectangle", 3, 4)
print(shape2.is_square())                # 输出:False

题目1:定义圆(Circle)类

import mathclass Circle:def __init__(self, radius=1):self.radius = radiusdef calculate_area(self):return round(math.pi * self.radius ** 2, 2)def calculate_circumference(self):return round(2 * math.pi * self.radius, 2)

题目2:定义长方形(Rectangle)类

class Rectangle:def __init__(self, length=1, width=1):self.length = lengthself.width = widthdef calculate_area(self):return self.length * self.widthdef calculate_perimeter(self):return 2 * (self.length + self.width)def is_square(self):return self.length == self.width

题目3:图形工厂

def create_shape(shape_type, *args):if shape_type == "circle":return Circle(*args)elif shape_type == "rectangle":return Rectangle(*args)else:raise ValueError("Invalid shape type")

示例运行

# 题目1示例
circle = Circle(5)
print(f"半径:{circle.radius}")                 # 输出:半径:5
print(f"面积:{circle.calculate_area()}")       # 输出:面积:78.54
print(f"周长:{circle.calculate_circumference()}")  # 输出:周长:31.42# 题目2示例
rect = Rectangle(4, 6)
print(f"长:{rect.length}, 宽:{rect.width}")    # 输出:长:4, 宽:6
print(f"面积:{rect.calculate_area()}")         # 输出:面积:24
print(f"周长:{rect.calculate_perimeter()}")    # 输出:周长:20
print(f"是否为正方形:{rect.is_square()}")      # 输出:是否为正方形:Falsesquare = Rectangle(5, 5)
print(f"是否为正方形:{square.is_square()}")    # 输出:是否为正方形:True# 题目3示例
shape1 = create_shape("circle", 5)
print(shape1.calculate_circumference())        # 输出:31.42shape2 = create_shape("rectangle", 3, 4)
print(shape2.is_square())                      # 输出:False

代码解释

  1. Circle类

    • 使用math.pi获取圆周率。
    • calculate_area()calculate_circumference()方法通过公式计算面积和周长,并用round()保留两位小数。
  2. Rectangle类

    • calculate_area()直接返回长和宽的乘积。
    • calculate_perimeter()通过公式计算周长。
    • is_square()通过比较长和宽判断是否为正方形。
  3. 图形工厂

    • create_shape()函数根据shape_type动态创建对应的图形对象。*args用于接受可变数量的参数,确保不同图形的构造函数可以正确调用。
http://www.dtcms.com/a/406059.html

相关文章:

  • 在Unix/Linux中bash/sh/source以及./执行脚本的区别
  • 宜春公司做网站双语网站建设定制开发
  • Spring Boot 应用启动组件加载顺序与优先级详解
  • Spring Boot 事件发布与监听 观察者模式的实际应用
  • Sui Stack Messaging SDK:为 Web3 打造可编程通信
  • 光谱相机的未来趋势
  • 【Java后端】《Spring Boot Starter 原理详解》博客
  • 设计与绘制一个网站首页同学录wordpress
  • Vue2的生命周期
  • MySQL学习笔记04:MySQL InnoDB存储引擎核心机制深度解析
  • 中国企业网站建设响应式网站管理
  • 遇到不会的事,先写一写
  • 心理咨询 网站模版嘉兴网站建设技术开发
  • 【面试】Kafka / RabbitMQ / ActiveMQ
  • 新网站建设的工作总结文化网站建设需要的功能
  • 11.WPF 的命令处理事件--参数介绍
  • 旅游管理虚拟仿真实训室:打通理论与实践壁垒
  • FreeLong-无需训练即可延长视频生成时长
  • Lynx:新一代个性化视频生成模型,单图即可生成视频,重新定义身份一致性与视觉质量
  • 关于机器视觉中的”果冻效应“讲解:全局曝光 vs 卷帘曝光
  • 如何做百度的网站网站开发技术的雏形 cgi
  • 织梦医院网站源码6731官方网站下载
  • Transformer模型/注意力机制/目标检测/语义分割/图神经网络/强化学习/生成式模型/自监督学习/物理信息神经网络等
  • 公司网站 域名seo快速提高网站转化率
  • Planner Agent 和 PlanReAct 的区别
  • Google Play合规指南:您的应用所使用的原生库不支持 16 KB 内存页面大小.快速解决
  • 什么是覆盖索引?PostgreSQL 是否支持覆盖索引?
  • 谨慎地迭代函数所收到的参数 (Effective Python 第31条)
  • ESP32 NTC热敏电阻测温全攻略:从ADC采样到线性插值算法详解
  • 介绍 τ-bench:一个评估语言智能体在真实场景中与人、工具、规则交互能力的新基准