Python基础之数据结构详解
本文将为读者详细讲解Python中常见的数据结构及其操作方法。
1. 列表(list)
列表是Python中最常用的数据结构之一,它可以存储任意类型的数据,并且可以根据需要动态扩展或缩小。
1.1 列表的创建与访问
列表可以使用中括号来表示,其中每个元素之间用逗号分隔。例如:
my_list = [1, 2, 3, 'four', 'five']
列表中的元素可以使用下标来访问,下标从0开始。例如:
my_list[0] #访问第1个元素
my_list[-1] #访问最后一个元素
1.2 列表的增删改查
在列表的末尾添加一个元素可以使用append()方法,例如:
my_list.append('six')
在列表中插入一个元素可以使用insert()方法,例如:
my_list.insert(3, 'between 3 and four')
删除列表中的一个元素可以使用remove()方法,例如:
my_list.remove('four')
对于列表中的元素,还可以通过下标来进行修改,例如:
my_list[0] = 'one'
1.3 列表的切片操作
列表支持切片操作,可以使用切片操作符(:)跟上起始位置以及终止位置,例如:
my_list[1:3] #取出第2个元素和第3个元素
my_list[2:] #取出第3个元素之后的所有元素
另外,切片操作还支持步长,可以使用第三个参数来控制步长,例如:
my_list[::2] #取出所有偶数位的元素
1.4 列表的常用函数
除了上述操作之外,列表还有许多常用的函数,例如:
1.4.1 len()函数
可以使用len()函数获取列表的长度,例如:
len(my_list)
1.4.2 sorted()函数
可以使用sorted()函数对列表进行排序,例如:
sorted(my_list)
1.4.3 max()和min()函数
可以使用max()和min()函数获取列表中的最大值和最小值,例如:
max(my_list)
min(my_list)
2. 字典(dict)
字典是Python中另一个常见的数据结构,它可以映射一个键(key)到一个值(value),并且可以根据需要动态扩展或缩小。
2.1 字典的创建与访问
字典可以使用花括号来表示,其中每个键值对之间用冒号分隔,每个键值对之间用逗号分隔。例如:
my_dict = {'one': 1, 'two': 2, 'three': 3}
字典中的值可以通过键来访问,例如:
my_dict['one'] #访问键为'one'的值
2.2 字典的增删改查
向字典中添加一个键值对可以使用赋值操作符,例如:
my_dict['four'] = 4
修改字典中的一个值可以使用赋值操作符,例如:
my_dict['one'] = 'new one'
删除字典中的一个键值对可以使用del关键字,例如:
del my_dict['one']
2.3 字典的常用函数
除了上述操作之外,字典还有许多常用的函数,例如:
2.3.1 keys()和values()函数
可以使用keys()和values()函数分别获取字典中所有的键和所有的值,例如:
my_dict.keys()
my_dict.values()
2.3.2 get()函数
可以使用get()函数通过键来获取值,如果键不存在则返回None或指定的默认值,例如:
my_dict.get('one') #获取键为'one'的值,若不存在则返回None
my_dict.get('one', 'no such key') #获取键为'one'的值,若不存在则返回'no such key'
示例说明:
示例1:
以下代码演示了如何创建一个列表、向其中添加元素、修改元素、删除元素、获取元素,以及使用切片操作。其中,使用append()方法向列表末尾添加元素,使用insert()方法在指定位置添加元素,使用remove()方法删除指定元素,使用下标方式修改元素,使用切片操作符获取指定位置的元素。
my_list = [1, 2, 3, 'four', 'five']
my_list.append('six')
my_list.insert(3, 'between 3 and four')
my_list.remove('four')
my_list[0] = 'one'
print(my_list[1:3])
输出:
[2, 3]
示例2:
以下代码演示了如何创建一个字典、向其中添加键值对、修改值、删除键值对、获取值、获取所有键、获取所有值。其中,使用赋值操作符向字典添加键值对,使用赋值操作符修改指定键的值,使用del关键字删除指定键值对,使用[]运算符获取指定键的值,使用keys()方法获取所有键,使用values()方法获取所有值。
my_dict = {'one': 1, 'two': 2, 'three': 3}
my_dict['four'] = 4
my_dict['one'] = 'new one'
del my_dict['one']
print(my_dict['two'])
print(my_dict.keys())
print(my_dict.values())
输出:
2
dict_keys(['two', 'three', 'four'])
dict_values([2, 3, 4])