Python 组合数据类型 列表
特点:
列表中的元素可以为任意数据类型。所以列表没有长度限制,不需要预先预定列表长度
列表是有序的,元素的索引从0开始。
列表使用中括号[ ]表示,元素之间用逗号隔开。
创建列表:
(1)创建列表和创建变量一致,用中括号把一组数据包围起来,元素与元素之间用逗号分隔即可。
例:[5,6,9,10,344]
["a","b","c,"d","e",5,7,"love",(7,8),{2:5},{3,6}]
(2)使用list()函数创建列表
列表的操作:
(1)向列表中添加元素(append\insert)
append函数表示向列表的末尾添加一个元素,元素的类型为任意类型
>>>num=[1,2,3,4]
>>>num.append(5)
>>>num=[1,2,3,4,5]
insert函数表示向某一具体的位置添加一个元素,元素的类型为任意类型。insert(x,y),其中x表示要插入元素的位置,y表示要插入的元素
>>>num.insert(1,8)
>>>num=[1,8,2,3,4,5] #从此处我们可以看出列表是没有长度限制的,主要原因是列表的元素为任意类型,所以不需要预先定义列表长度
(2)访问列表中的元素
访问列表的元素就是使用列表名和索引访问列表
>>>fruit=["苹果“,“香蕉”,“草莓”,“梨”] #访问列表中的元素与C语言中的数组一样,元素的索引都是从0开始
>>>fruit[3]
"梨"
使用for循环输出列表中的元素:
>>>lis = ["C++","Java","Python","php"]
for i in lis:
print(i,end=" ")
>>>C++ Java Python php
(3)从列表中删除元素(remove\pop\del)
remove表示删除列表中的某一个元素,如果列表中有多个相同的元素,remove只能删除第一个元素。使用循环可以删除列表中多个相同的元素
>>>fruit=["草莓”,“香蕉”,“芒果”,“草莓”,“苹果”,“草莓”]
>>>fruit.remove("草莓”)
>>>fruit=[“香蕉”,“芒果”,“草莓”,“苹果”,“草莓”]
注:remove删除的元素还可以继续使用。
remove删除列表中的某一元素时,如果列表中不存在,则会报错
pop表示删除列表中任意位置的元素。pop(x)表示删除列表中索引为x的元素,如果没有x参数pop()则表示删除列表中最后一个元素。删除的元素可以继续使用
>>>fruit=["草莓”,“香蕉”,“芒果”,“草莓”,“苹果”,“草莓”]
>>>fruit.pop(3)
>>>fruit=["草莓”,“香蕉”,“芒果”,“苹果”,“草莓”]
>>>fruit.pop()
>>>"草莓” #从这里可以看出,pop函数返回的是被删除的元素
注:pop()删除的元素可以继续使用
del与pop的使用方法差不多,但是del删除后的元素不能被接着使用
>>>fruit=["草莓”,“苹果”,“香蕉”,“西瓜”]
>>>del fuit #表示删除整个fruit列表
>>>del fruit[1] #执行这句的时候,会报错,因为使用del的时候,整个fruit列表已经被删除
>>>fruit=["草莓”,“香蕉”,“苹果”,“西瓜”]
>>>del fruit[1]
>>>fruit=["草莓”,“苹果”,“西瓜”]
(4) count
count()返回的是元素在列表中出现的次数
>>>num=[1,2,3,5,2,3,6,1,4,2]
>>>num.count(1)
>>>2
(5)extend
extend()表示在列表的末尾一次性加入另一个列表的全部元素
>>>a=[1,2,3,4]
>>>b=[6,3,4,7]
>>>a.extend(b)
>>>a=[1,2,3,4,6,3,4,7]
(6)index
index()返回的是列表中第一次出现某元素的索引,如果该元素不在列表中,则出现报错
>>>lis=[1,2,4,2,3,1,5,6,2,3]
>>>lis.index[5]
>>>6
(7)reverse
reverse()反转某列表,且永久性的修改了列表元素的排列顺序
>>>num=[1,2,3,4,5]
>>>num.reverse()
>>>num=[5,4,3,2,1]
(8)sort/sorted
sort()函数永久性的修改了元素的排列顺序,默认为升序
sorted()函数修改了元素的排列顺序,默认为升序。返回的是列表的副本,并没有对列表本身的元素顺序进行修改
>>>num=[7,3,4,2,8,1,0]
>>>num.sort()
>>>num=[0,1,2,3,4,7,8]
>>>num=[3,5,1,0,2,6,4]
>>>num.sorted()
>>>[0,1,2,3,4,5,6]
>>>num=[3,5,1,0,2,6,4]
(9)clear
clear()表示的删除整个列表
>>>num=[7,6,4,0]
>>>num.clear()
>>>num=[ ]
(10)切片
列表的切片表示方法[起始位置:终止位置:步长],步长默认为1
>>>lis=[4,5,6,8,7,9,1,2,4,5,8]
>>>lis[2:5]
>>>[6,8,7]
>>>lis[ :-1]
>>>[4,5,6,8,7,9,1,2,4,5]
>>>lis[5: ]
>>>[9,1,2,4,5,8]
>>>lis[4,9,3]
>>>[7,2]
>>>lis[8,2,-2]
>>>[4,1,7]
(11)列表的元素检查
>>>lis=[2,4,1,6,7]
>>>1 in lis
>>>True
>>>0 in lis
>>>False