第1关:定义三维向量类
任务描述
完成三维向量类的设计。
相关知识
类是具有共同数据成员和成员方法的对象的抽象,而对象则是某个类的实例化和具体化。在 Python 中,使用关键字 class 定义类,在类中可以包含数据成员和成员方法的定义。其中,数据成员用来描述对象的属性,例如一本书的作者、出版社、ISBN、定价等等;成员方法则用来描述对象的行为,例如动物的行走、捕猎食物等等。
在 Python 中,并没有提供严格的访问控制,只是在形式上进行了说明。例如,在类的定义中,如果某个成员的名字前面有 2 个下划线则表示是私有成员,而名字前面不带任何下划线的是公有成员。
在 Python 中,不论类的名字是什么,构造方法的名字总是固定为__init__()。另外,在 Python 类中,构造方法、析构方法以及所有属于实例的方法,都必须以 self 作为第一个参数,用来表示对象本身。
编程要求
本关的编程任务是,补全step1/step1.py文件中 Begin-End 区间的代码,完成指定三维向量类的功能。具体要求如下:
定义一个类 Vector3d,补全其中的代码,使其包含 3 个私有数据成员 x、y、z,并能够在构造方法中,接收3个参数,对这3个私有数据成员进行初始化;
具体输入输出请参见后续测试样例。
本关涉及的代码文件step1.py的代码框架如下:
class Vector3d:
# 请在这里补充代码,完成本关任务
#********** Begin