一、引言
Python中的列表、字典、元组、集合和字符串,这些数据结构在Python编程中起着至关重要的作用,它们可以帮助我们有效地存储和操作数据。本文将详细列表的特点和用法。
二、列表 list:
变量可以存储一个元素,而列表是一个‘大容器’可以存储N多个元素,程序可以方便地对这些数据进行整体操作。它相当于其他语言中的数组一样。
1.列表的创建:
直接使用[ ]进行赋值或者使用内置函数list( )函数转为列表类型,如下图:
列表的索引:
2.列表的特点:
(1)是一种可变的有序集合(可变指的是对其增删改的过程中不会创建一个新的变量,也就是原函数的ID不会改变,有序指的是对元素进行存储时有唯一对应的索引值)
(2)索引映射唯一一个数据
(3)列表可以存储重复的数据
(4)任意数据可以混存(可以包含数字、字符串、列表、字典、元组等等)
(5)根据需要动态分配和回收内存
3.列表的增加操作:
(1)使用append( )函数在列表的末尾添加一个元素。
(2)使用extend ( )函数在列表的末尾至少添加一个元素。
(3)使用insert ( )函数在列表的任意位置添加一个元素。
(4)使用切片操作[ : ] 在列表的任意位置至少添加一个元素
4.列表的删除操作:
(1)使用del()函数:可以删除指定位置的元素。例如,del list_a[0]将删除列表list_a的第一个元素。
(2)使用pop( )函数:可以删除并返回指定位置的元素。例如,del list_a.pop(0)将删除列表list_a的第一个元素并返回它。
(3)使用remove( )函数:根据值删除元素。例如,list_a.remove('a')将删除列表list_a中第一个值为'a'的元素。
(4)使用clear( )函数:清空列表,即删除列表中的所有元素。例如,list_a.clear()将删除列表i1中的所有元素。
5.列表的查询操作:
(1)使用下标索引查询:列表中的元素可以通过下标索引进行访问。例如,list_a[0]表示访问列表中的第一个元素。
(2)使用切片查询:可以使用切片来获取列表中的子序列。例如,list_a[start:end]表示获取从start索引到end索引(不包括end)的子序列。
(3)使用in操作符查询:可以使用in操作符来检查某个元素是否存在于列表中。例如,if ‘element’ in list_a:表示检查element是否在list_a列表中。
(4)使用index()方法查询:可以使用index()方法来查找某个元素在列表中第一次出现的位置。例如,list_a.index(‘often’)表示返回often在list_name列表中第一次出现的下标。
6.列表的修改操作:
(1)通过索引修改元素:可以通过索引来访问列表中的元素,并对其进行修改。例如,使用list_a[0] = 1 可以将列表中的第 0 个元素修改为 1 。
(2)使用切片修改多个元素:通过切片操作,可以选择列表中的一部分元素,并对其进行修改。例如,使用list_a[start:end] = new_values(列表类型)可以将列表中从start索引到end索引(不包括end)的元素替换为new_values。
6.列表的排序
(1)使用sort()方法:sort()方法会直接修改原列表,将其按照升序排列。例如,list_a.sort()会将list_a中的元素按照升序排列。如果想要按照降序排列,可以传递reverse=True参数,如list_a.sort(reverse=True)。
(2)使用sorted()函数:sorted()函数会返回一个新的已排序的列表,原列表不会被修改。例如,list_a = sorted(list_a)会返回一个新的升序排列的列表。同样地,如果想要按照降序排列,可以传递reverse=True参数,如list_a = sorted(list_a, reverse=True)。
(3)使用列表推导式:可以使用列表推导式结合sorted()函数来实现更复杂的排序逻辑。例如,可以使用[x for x in list_a if x > 200]来筛选出列表中大于200的元素,并返回一个新的已排序的列表。
本来想列表、字典、元组、集合和字符串一起出的,但是按我这写法,写的太长了,所以分开来写了。