Py学习  »  Python

Python里的列表、元组、字典到底有什么区别?新手一次搞懂

码上编程学习社 • 4 周前 • 132 次点击  

刚学 Python 的时候,很多人都会被这几个东西绕晕:列表list、元组tuple、字典dict。

看起来都是用来“装数据”的,但为什么 Python 要设计三种?写代码的时候到底该选哪个?

其实不用死记,只要弄明白它们各自适合干什么,就很好区分了。

1、列表 list:最常用,也最灵活

列表可以理解成一个可以随时修改的数据清单。

比如:

fruits = ["苹果", "香蕉", "橙子"]

列表使用 [],里面的数据有顺序,可以通过索引访问,比如 fruits[0] 就是“苹果”。

而且列表创建以后还能继续增加、删除或者修改数据,所以实际写 Python 时非常常见。

2、元组 tuple:和列表很像,但不能随便改

元组通常使用 ():

point = (10, 20)

它同样有顺序,也能通过索引取值,但最大的区别就是:元组创建之后,其中的元素不能直接修改、添加或删除。

所以像坐标、固定配置、不会频繁变化的数据,就比较适合使用元组。

3、字典 dict:通过“名字”找数据

字典和前两种最大的不同,是它使用**键值对(key-value)**保存数据。

例如:

user = {"name": "小明", "age": 20}

如果想获取姓名,可以直接写:

user["name"]

这时候不需要记“姓名排在第几个”,直接通过 name 这个键就能找到对应的数据。

因此,像用户信息、商品信息、配置参数等带有明确属性的数据,用字典通常更直观。

到底什么时候用哪个?

其实判断方法很简单。

数据需要经常增加、删除、修改,优先考虑列表;数据有固定顺序,而且创建后不希望被修改,可以考虑元组;如果每个数据都有明确的“名称”和“含义”,通常字典更合适。

所以新手没必要把三个概念背得特别复杂。

先记住一句话就够了:

列表适合“可变清单”,元组适合“固定数据”,字典适合“键值对应”。

等以后真正写项目,你会发现它们经常还会组合使用,比如“列表里面放多个字典”。把这三个基础数据结构搞明白,后面学习循环、函数和数据处理都会轻松很多。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/200795