Python基础学习笔记——设计一个名为MyRectangle的矩形类来表示矩形
学习目标:
‘设计一个名为MyRectangle的矩形类来表示矩形,这个类包含:
(1)左上角坐标:x,y
(2)宽度和高度
(3)构造方法:传入x,y,width,height.如果(x,y)不传默认是0,
如果width和height不传,则默认是100.
(4)定义getArea()计算面积的方法
(5)d定义一个getPerimeter(),计算周长的方法
(6)定义一个draw()方法,使用海龟制图画出这个矩形’
解决方案代码:
class MyRectangle:def __init__(self, x, y, width, height): # 添加一个实例属性self.x = xself.y = yself.width = widthself.height = heightdef input(self):if self.x == ' ' and self.y == ' ':self.x = 0self.y = 0print("输入为x={0},y={1},width={2},height={3}".format(self.x, self.y, self.width, self.height))else:if self.width == ' ' and self.height == ' ':self.width = 100self.height = 100print("输入为x={0},y={1},width={2},height={3}".format(self.x, self.y, self.width, self.height))else:print("输入为x={0},y={1},width={2},height={3}".format(self.x, self.y, self.width, self.height))def getArea(self):Area = self.width * self.heightprint("该矩形的面积为:", Area)def getPerimeter(self):Perimeter = (self.width + self.height) * 2print("该矩形的周长为:", Perimeter)def draw(self):import turtle as t#import turtlet.screensize(self.width * 3, self.height * 3, 'black')t.pensize(3)t.speed(1)t.color('pink')t.goto(self.x, self.y)t.pendown()t.forward(self.width)t.right(90)t.forward(self.height)t.right(90)t.forward(self.width)t.home()print("制图完成!")t.done()t1 = MyRectangle(2, 2, 300, 200)
t1.input()
t1.getArea()
t1.getPerimeter()
t1.draw()
运行结果:
本篇文章问题来自高淇老师python400集课后习题.新手上路多多指正!
Python基础学习笔记——设计一个名为MyRectangle的矩形类来表示矩形相关推荐
- Python面向对象基础练习——设计一个名为 MyRectangle 的矩形类来表示矩形
# 设计一个名为 MyRectangle 的矩形类来表示矩形.这个类包含 # (1) 左上角顶点的坐标:x,y # (2) 宽度和高度:width.height # (3) 构造方法:传入 x,y,w ...
- Python基础学习笔记三
Python基础学习笔记三 print和import print可以用,分割变量来输出 import copy import copy as co from copy import deepcopy ...
- Python基础学习笔记之(二)
Python基础学习笔记之(二) zouxy09@qq.com http://blog.csdn.net/zouxy09 六.包与模块 1.模块module Python中每一个.py脚本定义一个模块 ...
- Python基础学习笔记之(一)
Python基础学习笔记之(一) zouxy09@qq.com http://blog.csdn.net/zouxy09 前段时间参加微软的windows Azure云计算的一个小培训,其中Pytho ...
- Python基础学习笔记(一)
Python基础学习笔记(一) 基本数据类型 整型(int):1.2.10-- 浮点型(float):1.2.2.4.10.00-- 布尔型(bool):True.False 字符串( ...
- Python 基础学习笔记 03
Python基础系列 Python 基础学习笔记 01 Python 基础学习笔记 02 Python 基础学习笔记 03 Python 基础学习笔记 04 Python 基础学习笔记 05 文章目录 ...
- 8.Python基础学习笔记day8-正则表达式、网络编程、进程与线程
8.Python基础学习笔记day8-正则表达式.网络编程.进程与线程 一.正则表达式 ''' 1. [1,2,3,4]中任意取3个元素排列: A43 = 4x3x2 = 24itertools.pe ...
- 设计一个名为 MyRectangle 的矩形类来表示矩形
设计一个名为 MyRectangle 的矩形类来表示矩形.这个类包含 (1) 左上角顶点的坐标:x,y (2) 宽度和高度:width.height (3) 构造方法:传入 x,y,width,hei ...
- python基础学习笔记——完结
文章目录 一. python概述 1.1 概述 1.2 优缺点 1.3 应用场景 二. python解释器和集成环境的安装 2.1. 编程语言分类 2.2 基本环境搭建 2.3 集成开发环境pycha ...
最新文章
- 任务的插入时间复杂度优化到 O(1),Timing Wheel时间轮是怎么做到的?
- tp点一共有多少_致命女人更新时间 致命女人第一季一共多少集在线观看地址
- python股票涨势_stock
- 2019-05-15 Java学习日记 day5
- 用VBA得到EXCEL表格中的行数和列数
- Java中接口、抽象类与内部类学习
- 2 打两拍verilog与Systemverilog编码
- linux磁盘iops限制,linux – 我需要多少IOPS?我的工作量瓶颈是存储
- java string 几个字节_java中字符串占几个字节
- Android 应用分屏
- NU Virgos(圣女天团)
- Docker概述与基本使用
- Java实现还原微博短链接
- 更高检测灵敏度的谷氨酰胺测定试剂盒
- 交通银行香港分行实施Linux前端系统的开发手记
- 2023年十大国际外汇交易平台排名揭晓!
- 技术经济学(刘秋华)(第三版)——第三章 经济型评价的基本要素
- 装了McAfee VirusScan Enterprise 8.0后FoxMail不能发邮件的解决办法
- 个人开发者如何在App中调起微信支付
- 精品微信小程序二手汽车拍卖系统+后台管理系统|前后分离VUE