Python 列表的应用场景有什么?你使用对了吗?

我们在前几篇文章中依次介绍了列表的特性和用法、列表推导式、列表的底层实现。今天来聊一聊列表在实际开发中的应用场景。

在开发中,选用何种数据结构是由我们面对的数据特征和业务场景决定的。

数据是单个的还是批量的,是小规模的还是海量的?

数据是独立的还是彼此关联的?

数据的生成是随机的还是有先后顺序的?

数据的用途是什么?会不会频繁读写?只读多还是修改多?

数据是否应用于多线程环境?

……(此处省略 N 多情形。)

一旦确定了数据特征和业务场景,我们就可以从开发工具箱中选择合适的工具了。

对于 list 而言,首先它是一个对象集合,你可以在处理批量数据时使用 list。


  1. >>> alist =[i for i inrange(21)] 
  2. >>> alist 
  3. [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20] 
  4. >>> alist.append(2021) 
  5. >>> alist 
  6. [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,2021] 

我们知道,tuple 也可以用来存储多个对象,但是 tuple 是不可变的,一旦初始化,无法再增减其中的元素的个数。tuple 从语法上保证了元素数目不会被修改。

如果你恰好不希望别人向数据集中增删元素,你应该优先使用 tuple,而非list。反过来,如果你需要动态调整数据集合中的元素的个数,那就应该选择 list。

这是否意味着所有动态数据集都可以使用 list 呢?非也。

如果你的数据很少被修改,绝大部分时间都是被读取的,这很适合使用 list 来存储。因为 list 为我们提供了索引和切片操作,可以快速访问其中的元素。

【声明】:芜湖站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

相关文章