- 159
- 0
- 约2.1千字
- 约 3页
- 2021-08-04 发布于上海
- 举报
温州大学瓯江学院数学与信息工程学院
《Python 程序设计》 实验报告
实验名称: 实验 10 Python 面向对象
班 级: 18 计算机 2 姓 名: 学 号:
实验地点: 7-706 日 期: 2019/11/21
一、实验目的:
[实验目的和要求 ]
1、掌握如何定义一个类
2 、了解如何定义类的私有数据成员和成员方法
3 、掌握如何使用自定义类实例化对象
二、实验环境:
1、计算机,局域网, python 软件
三、实验内容和要求: (直接将实验步骤及截图写在题目下面,结果必须截图)
1、设计一个 Circle 类来表示圆, 这个类包含的半径以及求面积的周长的方法。 在使用这个类创建
半径为 1~10 的圆,并计算出相应的面积和周长。运行结果如下:
代码 :
#kkk.py
class circle:
def ZhouChang(r):
r=eval(input( 请输入圆的半径: ))
c=3.1415926*2*r
print( 周长是 {0:.2F}.format(c))
def MianJi(r):
r=eval(input( 请输入圆的半径: ))
s=3.1415926*r*r
print( 面积是 {0:.2F}.format(s))
n=circle()
n.ZhouChang()
n.MianJi()
2、自定义学生类 Student ,成员包含: 实例属性 sno、sname、age,类属性 count ,实例方法 show( 用
于显示 sno 、sname、 age 信息 ) ,类方法 classAddCount( 实现 count 属性累加 1) ,静态方法
staticShowCount( 显示当前 count 值 )。要求属性全部为私有。并完成如下问题:
(1) 创建 Student 对象两个,分别访问上述成员方法,同时用类名访问上述成员方法,输
出结果。
(2 )为 Student 对象动态增加新成员性别 sex 和方法 setGrade(获取学生年级, 导入 types 模块,
调用 MethodType() 方法 )
(3)在类外部访问 sno 私有实例属性
(4 )我们知道,若在类外部通过对象尝试修改 age 值是允许的,但是直接修改属性值可能带
来一些问题。例如,可能直接设置成不合法的值,如 age=-10 。所以,为了避免客户端直接修改属
性的问题,请在类中提供 get()方法返回 age 的值,以及 set()方法设置 age 的新值, age0 时设置
成为新值, age=0 时,提示设置年龄不合法。
3、(通过方法修改属性值)设计一个 Timer 类,该类包括:表示小时、分、秒的三个数据成员 (初
始值均为 0 ,显示时间为 00:00 :00 )、三个数据成员各自的 get 方法、 settime 方法用于设置新的
时间值。并对 Timer 类实例化,显示当前时间。
4、(选做)如题 2 (3 ),在类外部可以通过特殊方式访问私有成员,但是封装性原则并不推荐这
样做。所以 python 中可以通过定义私有属性并定义相应的访问该私有属性的函数,然后使用
@property 或 property() 装饰器装饰这些函数。 请用 @property 或 property() 装饰私有属性 sno,使其
能在外部访问,但不允许在外部修改其值。
四、实验结果与分析( 实验总结( 请将有疑问的题
您可能关注的文档
最近下载
- 第二章-多媒体数据压缩技术.ppt VIP
- 2026年春季统编版(部编版)2024新教材二年级下册道德与法治教学计划、教学设计及教学反思(附目录).pdf
- 24.抽取文本汇词云(教学课件)-四年级信息科技全一册 (人教版2024).pptx VIP
- 2025年军队文职人员统一招聘面试( 航空航天)题库附答案.doc VIP
- PLC基础知识大全培训PPT课件.pptx VIP
- 《高中数学•同步课堂学与练》高二(人教B版选修第二册)第05讲 正态分布(解析版).pdf VIP
- 2025年支部书记抓基层党建工作述职报告范文.docx VIP
- 高教社2023马工程国际私法学教学课件u5.pptx VIP
- 学生宿舍卫生检查表.docx VIP
- 年末存货盘点表.docx VIP
原创力文档

文档评论(0)