列表是最常用的 Python 数据类型,列表具有以下特点
1、列表的数据项不需要具有相同的类型
2、列表中的每个值都有对应的位置值,称之为索引,第一个索引是 0,第二个索引是 1,依此类推
3、列表可以进行的操作有索引,切片,加,乘,检查成员
4、创建列表只需要把不同项用逗号“,”分割并用中括号"[ ]"括起来即可。
一、创建列表
list1 = ["one","two",1,1.21]
list2 = ['one','two']
java中数组的创建
String [] arr = {"one","two","three","four"};
二、列表数据操作-增删改查
①.查询
1.1 根据索引查询列表值
list("下标值")
_list = ["one","two","three","four"]
print(_list[0])
print(_list[1])
print(_list[2])
print(_list[3])
运行结果
one
two
three
four
索引也可以从尾部开始,最后一个元素的索引为 -1,往前一位为 -2,以此类推。
_list = ["one","two","three","four"]
print(_list[-1])
print(_list[-2])
print(_list[-3])
print(_list[-4])
运行结果
four
three
two
one
1.2.切片查询
用于获取区间的值
list[start_index:end_index:step]
1.当不赋值时,取全部值
2.当从左往右取值时,左包含,右不包含(从右往左取值时,右包含左不包含)
3.end_index为负时,表示截取到倒数第几位(不包含)
4.步长(step)为负时,从右往左取值
_list = ["one","two","three","four"]
print(_list[0:]) #从下标0开始取值,取到最后
print(_list[0:3]) #从下标0开始取值,取到下标为3的地方,但是不包括下标为3的值,
print(_list[0:-1])#从下标0开始取值,取到倒数第1个值(不包含),即取到倒数第二个值
print(_list[0:-1:2]) #从下标0开始取值,取到倒数第二个值,步长为2取值
print(_list[3:0:-1]) #从右边开始往左取值,从下表为3的地方开始取值,一直取到下标为0的地方,但是不包含小标为0的值,步长为1
print(_list[3:0:-2]) #从右边开始往左取值,从下表为3的地方开始取值,一直取到下标为0的地方,但是不包含小标为0的值,步长为2
运行结果
['one', 'two', 'three', 'four']
['one', 'two', 'three']
['one', 'two', 'three']
['one', 'three']
['four', 'three', 'two']
['four', 'two']
②.添加
1. append()
默认将数据添加到最后一个位置
_list = ["one","two","three","four"]
_list.append("five")
print(_list)
运行结果
['one', 'two', 'three', 'four', 'five']
2.insert(index," ")
将数据添加到任意位置
_list = ["one","two","three","four"]
_list.insert(2,"five")
print(_list)
运行结果
['one', 'two', 'five', 'three', 'four']
3.extend()
扩展,将另一个列表的元素合并到当前列表中
_list = ["one","two","three","four"]
_list2 = ["five","six"]
_list.extend(_list2)
print(_list)
运行结果
['one', 'two', 'three', 'four', 'five', 'six']
③.修改
1.直接通过获取要修改的值,然后重新赋值即可修改
_list = ["one","two","three","four"]
_list[0]="A"
print(_list)
运行结果
['A', 'two', 'three', 'four']
2.还可以通过与切片结合修改值
_list = ["one","two","three","four"]
_list[0:2]=["A","B"]
print(_list)
运行结果
['A', 'B', 'three', 'four']
④.删除
删除有四种,分别是:
1.remove("") 通过值删除
2.pop() 通过索引删除(pop会将删除的内容返回)
3. del 既可以删除对象,也可以删值
4.clear() 清空
演示:
remove()
_list = ["one","two","three","four"]
_list.remove("one")
print(_list)
运行结果
['two', 'three', 'four']
pop()
_list = ["one","two","three","four"]
popVal = _list.pop(0)
print(_list)
print(popVal)
运行结果
['two', 'three', 'four']
one
del
_list = ["one","two","three","four"]
del _list[0]
print(_list)
运行结果
['two', 'three', 'four']
三、列表其它常用方法
方法 | 说明 |
list.count(var) | 获取元素所在列表中出现的次数 |
list.index(var) | 获取元素所在列表中的下标位置 |
list1.extend(list2) | 将list2中的元素追加到list1中 |
list.reverse() | 倒序 |
list.sort() | 排序,默认正序,倒序:sort(reverse=True) |
_list = ["one","two","three","four"]
_list2 = ["five","six"]
_list.extend(_list2)
_list2.reverse() #倒序
num = [1,4,5,10,6]
print("one 出现的次数:",_list.count("one"))
print("one 的下标:",_list.index("one"))
print("extend 后:",_list)
print("倒序:",_list2)
print("排序:",num)
运行结果
one 出现的次数: 1
one 的下标: 0
extend 后: ['one', 'two', 'three', 'four', 'five', 'six']
倒序: ['six', 'five']
排序: [1, 4, 5, 10, 6]
ps:查询某个元素是否在列表中还可以使用 var in list 的方式:
_list = ["one","two","three","four"]
print( "one" in _list)
运行结果
True