之前说过,python采用的是动态数组,并且我们可以用List来实现array结构。那么List和array是否完全一样呢?答案是否定的。
在array中,每个元素会以二进制的形式储存在内存里。比如:数值直接转换为二进制编码,字符串则先通过ASCII码转换为数值,再进而转换为二进制编码。因此,array里只能储存相同类型的元素,并需要事先指定元素的类型。例如在Java中,需要指定元素是int,long或是char,等等。
在python List中,每个元素其实是一个指针(pointer),指向包含这个python对象所有信息的某个内存位置。这里面包含了大量的额外信息,因此python可以自由、动态地编码。也就是说,python List里可以储存不同类型的元素,且不需要事先指定元素的类型。
此外,array可以进行四则运算,而python List不可以进行四则运算。比如:在python中,[1, 2] + [1, 2] 结果为[1, 2, 1, 2],而非[2, 4]。
总结
以上是内存溢出为你收集整理的数据结构---array与python list的区别全部内容,希望文章能够帮你解决数据结构---array与python list的区别所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)