- 1、本文档共142页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
类与对象第十章
课程目标课程目标1领会如何通过定义新类为复杂程序提供结构3524能够阅读并编写Python类定义理解封装的概念并知道它如何帮助构建模块化的、可维护的程序能够编写包含简单类定义的程序能够编写包含创新(程序员设计的)控件的交互式图形程序
PART1对象的快速复习
1对象的快速复习程序“计算”结构化程序“数据”结构化
1对象的快速复习对象是管理复杂数据的重要工具对象一组相关信息一组信息的操作存储信息的变量称为属性“存在”于对象内的函数称为方法这些操作又称为方法实例变量中一组相关信息被称为对象的“属性”
1对象的快速复习例子一个Circle对象属性:center:记住圆的中心点radius:保存圆的半径方法:draw方法:检查center和radius,以确定窗口中的哪些像素应该着色着Move方法:改变中心的值,以反映圆的新位置
1对象的快速复习记住每个对象都是一个类的一个实例,对象的类决定对象将具有什么属性。一个类描述它的实例知道什么和做什么创建新对象调用构造方法可视为创建新实例的工厂交通工具是一个类某一辆汽车、某一架飞机、某一辆自行车等是这个交通工具类的实例对象
1对象的快速复习创建一个新的Circle对象:myCircle=Circle(Point(0,0),20)Circle是类的名称,用于调用构造方法实例被创建后,可通过调用它的方法来操作它:myCircle.draw(win)myCircle.move(dx,dy)创建了一个新的Circle实例,并将引用保存到变量myCircle构造方法的参数用于初始化myCircle内部的一些实例变量(即center和radius)
PART2示例程序:炮弹
2示例程序:炮弹程序规格说明解决的问题:输入各种发射角度和初始速度,计算炮弹飞多远模拟炮弹程序输入参数输出结果炮弹的发射角(以度为单位)初始速度(以米每秒为单位)初始高度(以米为单位)抛体在撞击地面前飞行的距离(以米为单位)
2示例程序:炮弹程序规格说明重力加速度:g≈9.8m/s2用模拟来跟踪炮弹每个时刻的位置计算原理:物体在给定时间内飞行的距离等于其速率乘以时间(d=rt)
2示例程序:炮弹程序设计炮弹的两个维度:高度:知道炮弹什么时候碰到地面一距离:记录炮弹飞多远二
2示例程序:炮弹程序设计炮弹的位置可视为二维图中的点(x,y)xyx值:炮弹与起点的水平距离y值:炮弹与地面的高度,即垂直距离
2示例程序:炮弹程序设计xy(0,0)炮弹飞行过程中,它在二维图中点的坐标是时刻更新的每隔十分之一秒定时检查炮弹的位置每个维度的精确距离由炮弹在该方向上的速度决定
2示例程序:炮弹程序设计分离速度的x和y分量可以让问题变得更容易x速度y速度由于忽略风的阻力,x速度在整个飞行中保持不变由于重力的影响,y速度随时间而变化速度开始为正,后随着炮弹开始下降变为负值
2示例程序:炮弹程序设计根据分析,模拟程序要做的事情如下:输入模拟参数:角度、速度、高度、间隔计算炮弹的初始位置:xpos、ypos计算炮弹的初始速度:xvel、yvelwhile炮弹仍在飞行时:将xpos,ypos和yvel的值更新为飞行输出中距离作为xpos的距离
2示例程序:炮弹算法的第一行很简单,只需要合适的输入语句序列:程序设计defmain():
angle=float(input(Enterthelaunchangle(indegrees):))
vel=float(input(Entertheinitialvelocity(inmeters/sec):))
h0=float(input(Entertheinitialheight(inmeters):))
time=float(input(Enterthetimeintervalbetweenpositioncalculations:))给炮弹的初始位置赋值,它将从距离0和高度h0开始:xpos=0.0ypos=h0
2示例程序:炮弹程序设计水平速度分量公式:垂直速度分量公式:要将角度转换为弧度
2示例程序:炮弹程序设计Python的math库提供了一个方便的函数,称为radians,用于将角度数值转换为弧度数值。theta=math.radians(angle)
xvel=vel*cos(
您可能关注的文档
- Python程序设计 课件 第1章 计算机和程序设计基础.pptx
- Python程序设计 课件 第2章 Python编写简单程序.pptx
- Python程序设计 课件 第3章 面向对象和图形.pptx
- Python程序设计 课件 第4章 字符串、列表、元组和文件.pptx
- Python程序设计 课件 第5章 函数.pptx
- Python程序设计 课件 第6章 判断结构.pptx
- Python程序设计 课件 第7章 循环结构和布尔值.pptx
- Python程序设计 课件 第8章 集合和字典.pptx
- Python程序设计 课件 第9章 模拟与设计.pptx
- Python程序设计 课件 第11章 面向对象设计.pptx
- 温州乐成寄宿中学2023年高三第二次模拟考试语文试卷含解析.doc
- 湖南省浏阳市第二中学2022-2023学年高三第一次调研测试语文试卷含解析.doc
- 甘肃省张掖市高台县重点名校2024年中考一模英语试题含答案.doc
- 甘肃省会宁县第四中学2024届高三下学期第六次检测语文试卷含解析.doc
- 滁州市重点中学2024届高三第四次模拟考试语文试卷含解析.doc
- 福建省福州市仓山区福建师范大学附属中学2023届高考冲刺模拟英语试题含解析.doc
- 福建省平和县一中2022-2023学年高考压轴卷语文试卷含解析.doc
- 湖南省长沙市一中、湖南师大附中2023年高三英语第一学期期末学业质量监测模拟试题含解析.doc
- 监狱警察职业道德培训课件.pptx
- 福建省漳州市平和一中、南靖一中等五校2023年高三第六次模拟考试语文试卷含解析.doc
最近下载
- 税务局精神文明建设创建工作总结.docx VIP
- 学校精神文明建设工作总结范文.docx VIP
- (高清版)D-Z-T 0454.2-2023 钛铁矿化学分析方法第2部分:二氧化钛含量的测定过氧化氢光度法.pdf VIP
- 血透护理优质服务.pptx VIP
- 食堂管理年终工作总结PPT.pptx
- 巨量千川营销师(初级)认证考试复习题库资料(含答案).pdf
- (高清版)D-Z-T 0454.3-2023 钛铁矿化学分析方法第3部分:铝、钙、镁、钾、钠、钛、锰、铬、锶、钒和锌含量的测定混合酸分解-电感耦合等离子体原子发射光谱法.pdf VIP
- 安全措施和应急预案.pdf VIP
- 8职业生涯规划书教材.pdf
- 2.4蛋白质是生命活动的主要承担者(第2课时)课件-高一上学期生物人教版(2019)必修1.pptx
文档评论(0)