day17-面向对象作业
定义一个矩形类,拥有属性:长、宽 拥有方法:求周长、求面积
class Orthogon:def __init__(self, long=0, wide=0):self.long = longself.wide = widedef perimeter(self):print('周长:', (self.long + self.wide) * 2)def area(self):print('面积:', self.long * self.wide)o1 = Orthogon(3, 4) o1.perimeter() # 周长: 14 o1.area() # 面积: 12
定义一个二维点类,拥有属性:x坐标、y坐标 拥有方法:求当前点到另外一个点的距离
class Coordinates:def __init__(self, x=0, y=0):self.x = xself.y = ydef print_coordinates(self):print("x : ", self.x, ", y: ", self.y)def distance(self, other):print('我和你的距离只有:', ((other.x-self.x)**2 + (other.y-self.y)**2)**0.5)p1 = Coordinates(23, 32) p2 = Coordinates(26, 36) p1.print_coordinates() # x : 0 , y: 0 p2.print_coordinates() # x : 23 , y: 32 p1.distance(p2) # 我和你的距离只有: 5.0
定义一个圆类,拥有属性:半径、圆心 拥有方法:求圆的周长和面积、判断当前圆和另一个圆是否外切
import mathclass Circle:def __init__(self, x, y, r):self.x = xself.y = yself.r = rdef perimeter(self):print('周长:', 2*self.r*math.pi)def area(self):print('面积:', self.r**2*math.pi)def judge_circumscribed(self, other):if ((other.x-self.x)**2 + (other.y-self.y)**2)**0.5 == self.r + other.r:print('外切')else:print('不外切')c1 = Circle(4, 5, 3) c1.perimeter() # 周长: 18.84955592153876 c1.area() # 面积: 28.274333882308138 c2 = Circle(7, 9, 2) c1.judge_circumscribed(c2) # 外切
定义一个线段类,拥有属性:起点和终点, 拥有方法:获取线段的长度
class Segment:def __init__(self, x1, y1, x2, y2):self.x1 = x1self.y1 = y1self.x2 = x2self.y2 = y2def obtain_length(self):print('线段长度:', ((self.x2-self.x1)**2+(self.y2-self.y1)**2)**0.5)s1 = Segment(1, 3, 7, 11) s1.obtain_length() # 线段长度: 10.0
定义一个狗类和一个人类:
狗拥有属性:姓名、性别和品种 拥有方法:叫唤
人类拥有属性:姓名、年龄、狗 拥有方法:遛狗
class Dog:def __init__(self, name, age, color):self.name = nameself.age = ageself.color = colordef bark(self):print(f'{self.name}在嘤嘤嘤!')class Person:def __init__(self, name, age, dog=None):self.name = nameself.age = ageself.dog = dogdef walk_dog(self):if self.dog:print(f'{self.name}带着{self.dog.name}要饭!')else:print(f'没有狗和{self.name}去要饭!')d1 = Dog('来福', 2, '黄色')
d1.bark() # 来福在嘤嘤嘤!p1 = Person('常威', 20, d1)
p1.walk_dog() # 常威带着来福要饭!p2 = Person('常威', 20)
p2.walk_dog() # 没有狗和常威去要饭!
day17-面向对象作业相关推荐
- day17 面向对象基础
day17 面向对象基础 一.编程思想 1.编程思想:程序员在面对一个问题的时候首先想到的解决这个问题的想法 2.三种编程思想: 面向过程编程(穷人思想) - 会基本语法和逻辑 函数式编程(小资思想) ...
- 第三模块 面向对象网络并发编程 | day17 面向对象基础
第三模块 面向对象&网络&并发编程 从今天开始,我们将进入系列课程第3个模块的的学习,此模块包含如下三大部分知识: 面向对象,Python中支持两种编程方式来写代码,分别是:函数式编程 ...
- 【设计模式】面向对象作业-超级母牛的故事
留的作业: 农场一头小母牛, 每年生头小母牛, 母牛五岁产母牛, 二十年上多少牛? 马老师给的这个问题我个人感觉不太好理解,就按照我自己的理解吧,我把题目给白话文一下: 农场中引进一只超级母体牛,它每 ...
- 【原创】面向对象作业:选课系统中用pickle储存多个对象间组合引用关系的那些坑...
转载请注明出处:https://www.cnblogs.com/oceanicstar/p/9030121.html 想直接看结论先提前列出: 1.存储一个对象,文件不是真的给你存储的了对象这种东西, ...
- python类和对象介绍_Python开发基础-Day17面向对象编程介绍、类和对象
面向对象变成介绍 面向过程编程 核心是过程(流水线式思维),过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西.主要应用在一旦完成很少修改的地方,如linux ...
- day17面向对象基础
面向对象基础 一.类和对象 什么类:拥有相同功能相同属性的对象的集合 什么对象:对象是类的实例 从生活的角度理解类和对象的集合 (抽象的概念) 杯子是类,塑料杯是对象,铁杯子是对象 # 创建类和创建对 ...
- python面向对象作业_python面向对象编程作业
展开全部 import re class derivative: def __init__(self,s): self.s='+'+s if s[0] not in ['+','-'] else s ...
- python面向对象作业_面向对象作业
day06打印菲波那切数列的前n项.使用循环和递归两种方式 ```python #打印菲波那切数列的前n项.使用循环和递归两种方式 a=int(input("请输入")) b=1 ...
- Java迷你共享单车系统(面向对象作业)
目录 一,需求: 二,主要技能点: 三,主要代码实现: 1)主程序: 2)单车类: 3)公司类: 四,运行结果: 1)菜单 编辑 2)查看所有公司的所有Bike信息 3) 投放单车(单个投放) 4) ...
- day17 正则表达式作业
利用正则表达式完成下面的操作: 一.不定项选择题 能够完全匹配字符串"(010)-62661617"和字符串"01062661617"的正则表达式包括( ABD ...
最新文章
- [No0000A6]Visual Studio 2015 中的常用命令的默认键盘快捷键-VS2015 Shortcut
- 从零开始--系统深入学习android(实践-让我们开始写代码-Android框架学习-2.service)...
- ADI官方源码快速搭建demo工程验证设计的正确性
- windows下搭建Apache+Mysql+PHP开发环境
- JavaScript学习(六十二)—解析选项和序列化选项
- 【笔试/面试】—— linux 拾遗(一)
- 树形DP Codeforces Round #135 (Div. 2) D. Choosing Capital for Treeland
- Unity 之圆环算法
- HaaS EDU场景式应用学习 - 光照信息屏
- Python实现中英互译
- 蓝色音箱改装电源_创新便携/无线音箱排行榜,创新便携/无线音箱十大排名推荐...
- python可能实现办公自动化吗,让工作化繁为简:用Python实现办公自动化
- 一个数据录入/查询的应用程序在登录时错误信息解决过程
- 2020东南大学网络空间安全复试经验分享
- Go 使用 buger/jsonparser 优化反序列化性能
- Oracle 设置 密码可以重复使用 the password cannot be reused
- matlab矩阵输出txt文件中,matlab怎么把矩阵输出到txt
- 基于html5的数据可视化实现方法研究,基于HTML5的数据可视化实现方法研究
- 目标管理是项目管理的核心思想之
- 【视频】vim代码飞天遁地之术
热门文章
- 软件开发团队成员分工_分析软件开发人员的能力–选择合适的团队成员
- 基于贝叶斯优化的离散组合序列问题调研
- 联想笔记本Y430p升级硬件(内存扩容+升级固态)
- 三天学会网络爬虫之Day03
- 文字保护纱-Material Design
- php判断浏览器语言国内外,PHP判断浏览器语言
- 删除pdf签名 acrobat
- 光学字符识别 OCR (Optical Character Recognition)是什么?
- 国家c语言二级机试题,国家二级计算机考试题目C语言机试题库.doc
- linux推送打印机脚本,共享Linux 打印机给Windows