Python 编程训练2:二维向量

目标

定义一个 Python 类名为 V2,用于表示二维向量,支持下列向量运算:

  • 由两个实数创建一个二维向量:如:v = V2(1.1, 2.2)
  • 将一个向量转换为字符串形式(使用__str__方法)
  • 分解(得到x和y的值)
  • 两个二维向量相加,得到新的二维向量(使用__add__方法)
  • 支持数乘运算(使用__mul__方法)

编程

Step 1 初始化

使用__init____str__方法,当输入:print V2(1.1, 2.2)时,打印:

V2[1.10, 2.20]

程序设计

class V2():
	x=0
	y=0
	def __init__(self, xVal,yVal):
		self.x = xVal
		self.y = yVal
	def __str__(self):
		return "V2[%.2f, %.2f]" % (self.x, self.y)

效果:

>>> print(V2(1.1,2.2))
V2[1.10, 2.20]
>>> 

Step 2 getX和getY

程序设计

class V2():
	x=0
	y=0
	def __init__(self, xVal,yVal):
		self.x = xVal
		self.y = yVal
	def __str__(self):
		return "V2[%.2f, %.2f]" % (self.x, self.y)
	def getX(self):
		return self.x
	def getY(self):
		return self.y

效果:

>>> v.getX()
1.0
>>> v.getY()
2.0
>>> print(v)
V2[1.00, 2.00]
>>> 

Step 3 add和mul

程序设计

版本一:
class V2():
	x=0
	y=0
	def __init__(self, xVal,yVal):
		self.x = xVal
		self.y = yVal
	def __str__(self):
		return "V2[%.2f, %.2f]" % (self.x, self.y)
	def getX(self):
		return self.x
	def getY(self):
		return self.y
	def add(self, v):
		return "[%.2f, %.2f]" % (self.x+v.x, self.y+v.y)
	def mul(self, k):
		return "[%.2f, %.2f]" % (self.x*k, self
  • 4
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值