python向量长度怎么算(Python线性代数学习笔记)(1)

上一篇已经说明了为什么要学习线性代数?

python向量长度怎么算(Python线性代数学习笔记)(2)

python向量长度怎么算(Python线性代数学习笔记)(3)

下面我们正式开始学习

一切从向量开始

从研究一个数,变成了研究一组数,向量表示的就是一组数

python向量长度怎么算(Python线性代数学习笔记)(4)

学过中学物理都知道力,速度,加速度等等,既有大小又有方向,在物理学和工程学中,几何向量更常被称为矢量。许多物理量都是矢量,比如一个物体的位移,球撞向墙而对其施加的力等等。与之相对的是标量,只有大小而没有方向的量。一些与向量有关的定义亦与物理概念有密切的联系,例如向量势对应于物理中的势能。

python向量长度怎么算(Python线性代数学习笔记)(5)

python向量长度怎么算(Python线性代数学习笔记)(6)

python向量长度怎么算(Python线性代数学习笔记)(7)

现实生活中3维是我们人类能够感受到的,但是大于3维我们是不能够直观感受的,但是可以用抽象的n维向量来刻画

我们在刻画一个事情的时候,经常都是从不同的角度来刻画,这里的不同的角度其实用向量来表示的话就是不同的维度,比如下面房屋的例子:

python向量长度怎么算(Python线性代数学习笔记)(8)

使用两个视角来看待:

1.方向和大小

python向量长度怎么算(Python线性代数学习笔记)(9)

2.不是方向,仅仅是一组数字

python向量长度怎么算(Python线性代数学习笔记)(10)

两个视⻆看似不同,但可以互相转换

python向量长度怎么算(Python线性代数学习笔记)(11)

python向量长度怎么算(Python线性代数学习笔记)(12)


向量的更多术语和表示法

在数学中,向量(也称为欧几里得向量、几何向量、矢量),指具有大小(magnitude)和方向的量。它可以形象化地表示为带箭头的线段。箭头所指:代表向量的方向;线段长度:代表向量的大小。与向量对应的量叫做数量(物理学中称标量),数量(或标量)只有大小,没有方向。

python向量长度怎么算(Python线性代数学习笔记)(13)

python向量长度怎么算(Python线性代数学习笔记)(14)

使用Python来实现我们自己的向量:

class Vector: # 构造方法,传进来的是一个lst数组 def __init__(self, lst): self._values = lst # 供系统调用的魔法方法 def __repr__(self): print(self._values) return "Vector({})".format(self._values) #相当于Java的toString方法,供用户调用 def __str__(self): return "({})".format(",".join(str(e) for e in self._values)) # 返回向量的维度 def __len__(self): # 返回向量的长度,有多少个元素 return len(self._values) # 返回向量中第index元素 def __getitem__(self, index): # 取向量的第index个元素 return self._values[index]

测试代码:

from Vector import * if __name__ == "__main__": vec = Vector([5, 2, 9]) print(vec) print(len(vec)) print("vec[0]={}, vec[1]={}, vec[2]={}".format(vec[0], vec[1], vec[2])) print(str(vec)) print(repr(vec))

效果:

python向量长度怎么算(Python线性代数学习笔记)(15)

,