一定要知道的Python内置数据结构
- 2019 年 10 月 7 日
- 筆記
我喜欢 Python 的原因之一是因为它简单,短短几行代码就可以做很多事情。Python 内置了很强大的数据结构,我们可以直接用,不必像其他语言一样先构造数据结构再使用。Python 内置了四种数据结构:列表、元组、字典、集合。只要掌握这四种内置数据结构,基本上就可以解决 80% 需要数据结构的问题了。
在 Python 中,万物皆对象,因此存储在数据结构中的数据全部都可以按照对象来看待。
这四种内置的数据结构按照存储的对象有序和无序可以分成两大类,这里说的有序是按照我们输入的顺序存储。让我们来认识一下这四种数据结构吧。
01
列表(有序)
列表有点类似于 C 语言中的数组,但是相比较数组来说,它里面的对象可以动态地进行添加和删除。
语法:
以中括号为标志:[ ]
创建一个列表
letters = ['h', 'e', 'l', 'l', 'o'] print(letters)
['h', 'e', 'l', 'l', 'o']
常用的一些方法:
append()
在列表结尾添加对象
参数:对象值
remove()
从列表中删除指定元素的第一次出现
参数:对象值
pop()
从列表指定索引值位置删除并返回一个对象。
缺省:索引值为列表最后位置
参数:索引值
extend()
将两个列表合并
参数:一个列表对象
insert()
将一个对象插入到现有列表中指定索引值前
参数:索引值 + 对象值
copy()
创建一个列表副本
02
元组(有序)
可以把元组看做一个不可变的列表,一旦被初始化,就不可以再修改元组中的对象。
语法:
以小括号作为标志:( )
创建一个元组
letters = ('h', 'e', 'l', 'l', 'o') print(letters)
('h', 'e', 'l', 'l', 'o')
03
字典(无序)
在字典中存储的是一个键值对序列。
语法:
以大括号作为标记:{键: 值}
创建一个字典,统计 hello 中各字母出现的次数
dic = {'h': 1, 'e': 1, 'l': 2, 'o': 1} print(dic)
{'h': 1, 'e': 1, 'l': 2, 'o': 1}
访问对象:
使用键来访问字典中的对象:dic[键] -> 返回对应的值
print(dic['h'])
1
添加对象:
dic[键] = 值
dic['w'] = 0 print(dic)
{'h': 1, 'e': 1, 'l': 2, 'o': 1, 'w': 0}
04
集合(无序)
集合的一大特点就是存储的对象不允许重复。
语法:
以大括号作为标记:{ }
创建一个集合
letters = {'h', 'e', 'l', 'o'} print(letters)
{'e', 'h', 'o', 'l'}
这里是不是有点熟悉呢?字典也是以大括号作为标记,但是字典里面的对象都是以键值对形式存在。
创建集合:
方法一:就像上面一样,以大括号形式创建集合:{ }
方法二:set() 函数,传入任意序列,(比如一个字符串)返回一个集合
print(set('hello'))
{'e', 'h', 'o', 'l'}
到目前为止,只是给大家简单介绍了四种内置的数据结构,如果想要对其进行更深一步的了解,可以查阅官方文档(没有什么是比查官方文档更清楚的了,想要学好 Python,一定要多多查阅官方文档哦)。