设计一个基类Shape,包括:

  1. 名为sName的属性(图形名称);

  1. 构造函数应对sName属性进行初始化。

设计Shape的继承类Rectangle, 包括:

  1. 长,宽两个属性;

  1. 构造函数调用Shape的构造函数,并初始化长,宽两个属性;

  1. getArea()成员函数计算并返回矩形面积。

设计Shape的继承类Circle,包括:

  1. 半径属性;

  1. 构造函数调用Shape的构造函数,并初始化半径属性;

  1. getArea()成员函数计算并返回圆形面积。

注意:请注意阅读测试样例程序以理解题目对类的接口的要求。

类接口定义:

classShape:       ...
classRectangle(Shape):     ...
classCircle(Shape):    ...

裁判测试程序样例:

s1 = Shape("shape0")
s = input()  #矩形名称w = float(input()) #矩形宽度h = float(input()) #矩形高度r1 = Rectangle(s,w,h)
s = input()  #圆的名称r = float(input()) #圆的半径c1 = Circle(s,r)
print(s1.sName)
print("矩形%s面积: %.2f" % (r1.sName,r1.getArea()))
print("圆形%s面积: %.2f" % (c1.sName,c1.getArea()))

输入样例:

Jupyter
12.1
9.9
Moon
3.3

输出样例:

shape0
矩形Jupyter面积: 119.79
圆形Moon面积: 34.21

答案之一:

import math    #导入math模块
class Shape:    #定义一个Shape类def __init__(self,sName):self.sName = sNameself.__width = Noneself.__height = Noneself.__r = Noneclass Rectangle(Shape):def __init__(self,sName,width,height):self.sName = sNameself.width = widthself.height = heightdef getArea(self):return self.width * self.heightclass Circle(Shape):def __init__(self,sName,r):self.sName = sNameself.r = rdef getArea(self):return self.r ** 2 * math.pi

执行结果

6-1 设计Shape基类及Circle, Rectangle继承类(高教社,《Python编程基础及应用》习题9-7)分数 20相关推荐

  1. 6-1 设计一个股票类(高教社,《Python编程基础及应用》习题9-6)

    6-1 设计一个股票类(高教社,<Python编程基础及应用>习题9-6) (10 分) 设计一个名为Stock的类来表示一个公司的股票,包括以下内容: 1)股票代码.股票名称.前一天股票 ...

  2. 6-3 定义并实现Book类及其__del__函数(高教社,《Python编程基础及应用》习题9-4)

    图书馆里有很多的书, 请定义一个名为Book的类.该类的属性包括书名(字符串),书号(字符串),单价(浮点数):该类的构造函数接受书名,书号及单价三个参数并参成对象初始化:该类的__del__()函数 ...

  3. python编程基础—类与对象

    1.类的声明与定义 Python 是一门面向对象的语言. 面向对象编程 - Object Oriented Programming(简称 OOP)是一种编程思想,在面向对象编程中,把对象作为程序的基本 ...

  4. 【类、抽象与继承(练习)~python】

    python 练习目录 类的练习 简单介绍-1 学生的多重身份 中西兼备的厨师 继承 练习 运行效果如下: 简单介绍-2 抽象 练习 运行效果如下: pandas 每日一练: 程序运行结果为: 31. ...

  5. Python编程基础16:类和对象

    文章目录 零.本讲学习目标 一.面向对象 (一)程序员"面向对象" (二)两种编程思想实现五子棋 (三)面向过程 vs. 面向对象 (三)面向对象三大特点 1.封装(encapsu ...

  6. Python编程基础 第四章 编程练习 请定义一个Circle类,具体要求为:(1)每个Circle类对象可以存储圆心和半径信息;(2)具有设置圆心和半径的方法SetCenter和SetRadius

    题目内容: 请定义一个Circle类,具体要求为:(1)每个Circle类对象可以存储圆心和半径信息:(2)具有设置圆心和半径的方法SetCenter和SetRadius:(3)具有计算圆面积的方法G ...

  7. python编程基础及应用(重庆大学):9-8 设计一个学生类

    编写程序,设计一个学生类.包含姓名,学号及计数器三个属性,其中计数器属性用来统计实例化了多少个学生 #井号后的内容皆可不要 class Student:count=0 #类的计数属性def __ini ...

  8. 6-2 定义并实现身体质量指数类(高教社,《Python编程基础及应用》习题9-3)分数 20

    按图施工,设计下述BMI类,用于计算身体质量指数.该指数等于体重(kg)除以身高(米)的平方. 相应的判定标准如下图所示. BMI类接口定义: classBMI: ... 其中,name为姓名,age ...

  9. Python编程基础20:实例成员与类成员

    文章目录 零.本讲学习目标 一.类属性和实例属性 (一)类属性 1.概念 2.语法格式 (二)实例属性 1.概念 2.语法格式 (三)案例演示 二.类方法 (一)概念 (二)语法格式 (三)案例演示 ...

最新文章

  1. spring boot logback_SpringBoot集成logback后访问日志端点
  2. Protocol Buffer Basics: C#
  3. 第1章 Qt概述和下载安装及创建工程
  4. 两数组的交集(无重复)Intersection of Two Arrays
  5. 第二章:Android游戏开发之前台渲染
  6. php 中文字符串截取函数--比较好的
  7. java 九大内置对象_JSP九大内置对象(隐式对象)
  8. NameError: name ‘time‘ is not defined
  9. 百度英伟达联手推混合精度训练,同样性能只需一半内存 | 附论文
  10. 电脑办公技巧:他做了9小时的工作,我5秒就做完了
  11. Django - rest - framework - 下
  12. 《大白AI周报》精华内容整理汇总
  13. 大数据开源框架环境配置(一)——安装VMware
  14. 1038: 绝对值最大
  15. JAVA类计算机专业毕业设计题目课题选题
  16. 高德地图使用心得,百度地图使用心得
  17. 使用ansys workbench 的LSDYNA模块研究碰撞的接触设置
  18. 命令控制qq自动申请远程控制_代码详解
  19. matlab load save
  20. C语言为什么不能移植,C语言有可移植性强和可读性好等优点,而汇编语言的高效、快速等优点又是C语言所难以达...

热门文章

  1. 在linux下怎么安装mysql,手把手教你在Linux系统下安装MySQL
  2. 澳洲—适合中国学生的实用大学排名
  3. Day1 Linux的安装emmm吧
  4. 中国BIM意识和实践在世界BIM大潮中没有落伍,令人欣慰
  5. 软件工程9个测试坏味道
  6. UE4蓝图可视化编程资源发布
  7. 销售新手怎样才能逆袭成功
  8. 关于直流稳压电源,您这些知识或许不知道?
  9. linux用什么软件dos攻击,分类防范对Linux的DoS攻击
  10. buu [MRCTF2020]keyboard