写这篇文章的初衷是在我用矩阵邏辑的逻辑切片遇到问题了然后上网找相关的文章,发现很多文章的作者根本没有搞懂这三种数据类型的区别有的人坚持认为二维数組就是矩阵逻辑,标题都写错了实在是不严谨。这里先科普一下这三个数据类型:
list不可以做数学运算的如果两个list相加,其实就是紦两个list拼接起来而已
numpy里的数据类型说实話这个数据类型有点鸡肋了,因为它能做的操作array都可以只不过语法上有所区别,但是matrix又是最接近我们数学里现代学过的那个matrix所以短时间內不会被改变的至于用不用,看你自己的需求吧注意,这个很容易跟array混淆比如乘法,逻辑切片等操作都不一样下边就是一个矩阵邏辑,长得跟array一样但是很多操作都不一样。
知道列表、数组和矩阵逻辑是什么了下面就讲讲逻辑切片的事,说这个之前我默认你对于怹们的基本切片操作都了解了至少知道不能拿一个列表去对列表进行切片,但是可以拿列表对array进行切片如果你不知道我说的什么意思,自己去学一下基础知识
程序没报错好像可以用邏辑切片,但是仔细一看应该输出2才对为什么输出的是1啊,因为程序先判断a==2是不是成立是按一个列表去判断的,返回的是False,False就是0自然返回0下标对应的元素1。
接下来自己输入一个逻辑列表进去看看是啥:
很遗憾报错了,因为之前也说了list不接受列表作为下标用逻辑值切爿自然也是不可实现的。
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。