Python程序设计#1作业

Python程序设计#1作业 作业题目 每人独立设计并实现一个小型python程序(功能不限),代码需要涉及:class类,对象实例化,继承(分别定义父类和子类)

本文包含相关资料包-----> 点击直达获取<-------

Python程序设计#1作业

作业题目

每人独立设计并实现一个小型python程序(功能不限),代码需要涉及:class类、对象实例化、继承(分别定义父类和子类)、对象方法(self参数)、类方法(@classmethod)、静态方法(@staticmethod)、对象属性、类属性、多态。

作业内容

程序源代码嵌入下方的code block中。

```python

图形基类

class Shape(): num=0 def init (self) -> None: pass def get_area(self): return self.area

@staticmethod
def start():
    print("create Shape")

@classmethod
def add_nums(cls):
    cls.num=cls.num+1

def get_all_nums(self):
    return self.num

圆形类

class Circle(Shape): def init (self,rr): self.r=rr self.area=3.14 rr rr Shape.add_nums() def set_r(self,rr): self.r=rr self.area=3.14 rr rr

长方形类

class Rectangle(Shape): def init (self,xx,yy): self.x=xx self.y=yy self.area=xx yy Shape.add_nums() def set_xy(self,xx,yy): self.x=xx self.y=yy self.area=xx yy

正方形类

class Square(Rectangle): def init (self,xx): self.set_xy(xx,xx) Shape.add_nums()

if name ==" main ": Shape.start()

cir1=Circle(5)
cir1.px=5
cir1.py=10
rec1=Rectangle(3,4)
squ1=Square(6)

print("Circle1 area:{0}".format(cir1.get_area()))
print("Rectangle1 area:{0}".format(rec1.get_area()))
print("Square1 area:{0}".format(squ1.get_area()))
print("Circle1 Position x={0},y={1}".format(cir1.px,cir1.py))

print("All shapes number is {0}".format(cir1.get_all_nums()))

```

代码说明

该程序完成的功能如下:定义基类图形类,圆形类继承图形类,长方形类继承图形类,正方形类继承长方形类。可以计算不同图形的面积。

在每个类中有init初始化函数为类函数,即实例化需要采用初始化函数进行实例化操作。运用 对象方法 (self)参数来定义需要输入的参数。同时在父类中定义了get_area函数来获得不同图形的面积。在父类中还定义了 静态方法 (@staticmethod)get_all_nums 用来实现程序的开始提示标志。定义了 类属性 num用来记录创建属性数量,定义了 类方法 (@classmethod)add_nums 用来增加图形。在实例化后,添加了 对象属性 ,表示此圆的圆心的位置。同时最后三个实例都调用get_area,得到了不同的结果,实现了调用了同一个函数得到不同结果的 多态 功能。

参考文献

  • 基于J2EE的物流信息管理系统的设计与实现(北京邮电大学·杨帆)
  • 基于B/S架构的作业管理系统的研究与实现(郑州大学·曹晏祯)
  • 基于J2EE的远程网络教育系统研究与实现(电子科技大学·陈南荪)
  • 基于J2EE的地区电子政务系统的设计与实现(电子科技大学·薛刚)
  • 基于.NET的表格组件研究与实现(长沙理工大学·袁圣江)
  • 基于Python的非结构化数据检索系统的设计与实现(南京邮电大学·董海兰)
  • C语言程序设计精品课网站的设计与开发(大连理工大学·朱志刚)
  • 基于web的旅游服务平台的设计与实现(内蒙古大学·张凡)
  • 基于J2EE的地区电子政务系统的设计与实现(电子科技大学·薛刚)
  • 基于SSH架构的个人空间交友网站的设计与实现(北京邮电大学·隋昕航)
  • 基于B/S架构的酷跑社区系统的设计与实现(内蒙古大学·张晓乐)
  • 基于SSH架构的个人空间交友网站的设计与实现(北京邮电大学·隋昕航)
  • 广告业务管理系统的设计与实现(山东大学·曹阳)
  • C语言程序设计精品课网站的设计与开发(大连理工大学·朱志刚)
  • 基于B/S架构的作业管理系统的研究与实现(郑州大学·曹晏祯)

本文内容包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主题。发布者:毕设助手 ,原文地址:https://bishedaima.com/yuanma/36022.html

相关推荐

发表回复

登录后才能评论