# coding=utf-8
from math import sqrt, acos, pi
class Vector(object):
"""docstring for Vector"""
"""根据坐标轴列表输入 创建向量, 并创建该向量所处的空间维度"""
CANNOT_NORMALIZE_ZERO_VECTOR_MSG = 'Cannot normalize the zero vector'
def __init__(self, coordinates):
super(Vector, self).__init__()
try:
if not coordinates:
raise ValueError
self.coordinates = tuple( [x for x in coordinates])
self.dimension = len(coordinates)
except ValueError:
raise ValueError('The coordinates must be nonempty')
except TypeError:
raise TypeError('The coordinates must be an iterable')
# '''能够使python的内置print函数 输出向量坐标轴'''
def __str__(self):
return 'Vector: {}'.format(self.coordinates)
# 计算向量长度
def magnitude(self):
coordinates_squared = [x**2 for x in self.coordinates]
return sqrt(sum(coordinates_squared))
# 将向量归一化
def normal
检测判断向量是正交 还是平行
最新推荐文章于 2024-11-26 20:02:59 发布