浅析 python 数据类型的性能问题!

python 中变量的类型

了解过python语言的同学都知道,Python 中的变量不需要声明,变量是在我们給它赋值的时候创建的,要使用一个变量必须先对它进行赋值。在 Python 中变量就是变量,它没有类型限制,我们所说的类型是指给变量赋值后,变量所指向的内存中对象的类型。

image.png

python 中基本的数据类型

python 中给我们内置了很多的数据类型,其中常见基本的数据类型有以下几种:

这些基本的类型中,用来作为容器存放数据的有:元组、列表、字典、集合这四个类型,那么这四个类型中元组和列表属于序列类型,字典和集合属于散列类型,下面就序列和散列做一个简要的描述。

关于序列类型中的列表和元组,很多同学在存储数据的时候只用列表,而不会考虑使用元组,因为元组的功能列表都有,而且列表灵活,那么这种习惯真的好吗?接下来我们来分析一下元组和列表的性能,看看列表是否真的有那么好用,元组是不是就真的那么鸡肋?

列表、元组的性能分析

问题一:当前需要通过经纬度来标识某个位置,(''北纬 28.19','东经 112.98'),那么这个经纬度的数据,应该选择列表还是元组来存储?

问题二:上面的场景分析中,我们看到元组的性能远远优于列表,那什么时候用列表呢?

答案:列表是可变类型的数据,当我们存储的数据后期会需要修改其中元素的值,或者是添加新的元素,那么此时应当选择列表。
看到这里是不是发现 python 中的元组并没有你想的那么鸡肋,反而在性能上碾压列表。一位资深程序员和初级程序员实现同一个功能,性能到底体现在哪里,优秀的程序员会考虑的更多,更全面,大到架构设计,小到基本数据类型的使用。

关于数据类型以及散列类型(字典、集合)更深入的知识点,在我们柠檬班测试开发的课程中会有深入的讲解!!!

1 操作
nmb_musen 在 2020-08-06 17:48:27 更新了该帖
3 回帖
请输入回帖内容 ...
  • jomer3126

    一个键盘一根网线你便能打下一片天下,几个字母一些数字你便能创造辉煌人生,一个指令一次回车你便能成就世界,程序员节到了,复制一份快乐给你,粘贴一堆幸福送你,保存一世如意给你,愿你开心永在。8552

  • 其他回帖
  • jomer3126

    一个键盘一根网线你便能打下一片天下,几个字母一些数字你便能创造辉煌人生,一个指令一次回车你便能成就世界,程序员节到了,复制一份快乐给你,粘贴一堆幸福送你,保存一世如意给你,愿你开心永在。6311

  • test123

    文章通俗易懂,内容很有用