作业解析-python小游戏

目录

作业辅导解析  1.作业题目:  2.作业目的:  3.运行效果:  4.实现过程:  5.知识点巩固:  6.知识拓展:  7.学习建议: 

作业辅导解析

GuessMaster Version 2.0

1.作业题目:

10th March,2019

This new version of game, GuessMaster 2.0, is played with the same rule as in assignment I. However, you will need to restructure the classes you wrote in assignment I and make them a little bit more complicated to practise OOP programing with abstract methods, abstract classes, inheritance, polymorphism (late binding), and clone methods.

2.作业目的:

1、 掌握面向对象编程的概念与用法;

2、 掌握 Python 语言中封装、继承、多态等基本概念与用法;

3.运行效果:

image

4.实现过程:

image 核心代码上图所示,本次作业主要通过以下步骤实现: 1、 初始化游戏,创建对象并加入到游戏中; 2、 开始游戏,随机选择一个对象,提示用户进行猜测; 3、 用户输入猜测的生日信息,系统根据输入返回用户提示信息; 4、 显示最终结果,提示用户就游戏还是退出游戏。

5.知识点巩固:

Python 面向对象编程

Python 从设计之初就已经是一门面向对象的语言,正因为如此,在 Python 中创建一个类和 对象是很容易的。面向对象的一些基本特征如下: 类(Class): 用来描述具有相同的属性和方法的对象的集合。它定义了该集合中每个对 象所共有的属性和方法。对象是类的实例。 类变量:类变量在整个实例化的对象中是公用的。类变量定义在类中且在函数体之外。 类变量通常不作为实例变量使用。 数据成员:类变量或者实例变量, 用于处理类及其实例对象的相关的数据。 方法重写:如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个过程 叫方法的覆盖(override),也称为方法的重写。 局部变量:定义在方法中的变量,只作用于当前实例的类。 实例变量:在类的声明中,属性是用变量来表示的。这种变量就称为实例变量,是在类 声明的内部但是在类的其他成员方法之外声明的。 继承:即一个派生类(derived class)继承基类(base class)的字段和方法。继承 也允许把一个派生类的对象作为一个基类对象对待。例如,有这样一个设计:一个 Dog 类型 的对象派生自 Animal 类,这是模拟”是一个(is-a)”关系(例图,Dog 是一个 Animal)。 实例化:创建一个类的实例,类的具体对象。 方法:类中定义的函数。 对象:通过类定义的数据结构实例。对象包括两个数据成员(类变量和实例变量)和方 法。

类的继承 面向对象的编程带来的主要好处之一是代码的重用,实现这种重用的方法之一是通过继承机 制。通过继承创建的新类称为子类或派生类,被继承的类称为基类、父类或超类。

6.知识拓展:

在 python 中继承中的一些特点 1、如果在子类中需要父类的构造方法就需要显示的调用父类的构造方法,或者不重写父类 的构造方法。详细说明可查看:python 子类继承父类构造函数说明。 2、在调用基类的方法时,需要加上基类的类名前缀,且需要带上 self 参数变量。区别在 于类中调用普通函数时并不需要带上 self 参数。

3、Python 总是首先查找对应类型的方法,如果它不能在派生类中找到对应的方法,它才 开始到基类中逐个查找。(先在本类中查找调用的方法,找不到才去基类中找)。

7.学习建议:

1、 面向对象编程是一种编程思想,务必要夯实基础; 2、 面向对象编程的特点又封装、继承和多态,要深入理解,多加练习。