今天用Python进行数据处理的时候,突然发现自己搞不清Python中的列表和数组有啥区别及其运算规则,总是得不到自己想要的结果。于是就开始在网上找相关资料,发现很多资料讲的都十分片面,下面自己总结的各个资料,给大家进行详细的解释:
1.列表、数组和矩阵
列表是Python中最基本的数据结构,列表中可以存储数字、字符串等,因此Python可以通过列表存储数组;
数组是Python扩展库Numpy中的一种数据结构ndarray;
矩阵是同样是Python扩展库Numpy中的一种数据结构mat;
那么既然存在列表,为什么我们不直接使用Python中的列表,而使用Numpy呢?原因显然意见,Python中列表的存储效率和输入输出性能远不及Numpy中的数组和矩阵,但是由于列表中可以存储任意元素,因此列表的通用性方面要比数组和矩阵强。总之列表与数组、矩阵各有各的优势,要视使用场合选择合适的数据结构。
同样Numpy中的数组和矩阵也是有区别的:
Numpy中的矩阵必须是2维的,而Numpy中数组可以是多维的,因此矩阵是数组的一个特例,所以在Numpy中的矩阵继承着数组的所有特性;
同时我们常常需要查看列表、数组和矩阵的属性,如size、shape、len
其中len():返回对象的长度,