编写一个程序,计算两个二维坐标类对象相加之和。
创建类:
- 创建坐标类
Coordinate
,属性为x
和y
。 - 使用
__init__()
方法来初始化属性。 - 该类有
add_coordinates()
方法,参数为Coordinate
类对象,计算两个对象的x
和y
分别相加之和,并作为新的属性返回一个新的Coordinate
对象。
在类外:
- 创建两个
Coordinate
类对象c1
和c2
。 c1
的x
和y
属性分别为5和6。c2
的x
和y
属性分别为7和9。- 使用
c1
对象调用add_coordinates()
,以c2
为参数,并将结果赋值到c3
变量中。 - 打印
c3
的x
属性。 - 打印
c3
的y
属性。
更多提示,请看代码示例。
示例输出
12
15
本题涉及面向对象编程的知识。类的方法中的参数也可以是一个对象,如下面代码所示,可通过类的方法对对象的属性进行相应的操作。
# 创建 Coordinate 类
class Coordinate:
# 初始化属性x 和 y,使用__init__() 函数
def __init__(self,x,y):
self.x=x
self.y=y
# 实现 add_coordinates() 方法
def add_coordinates(self,obj):
return Coordinate(self.x+obj.x,self.y+obj.y)
# 创建对象 c1 和 c2
c1 = Coordinate(5,6)
c2 = Coordinate(7,9)
# 对象c1调用add_coordinates()方法,参数为c2
c3 = c1.add_coordinates(c2)
# 输出对象c3 的属性
print(c3.x)
print(c3.y)