Python中最重要的数据结构就是序列,其中最经常使用到的是列表,元组,和字符串。python
列表有别于元组和字符串的一个很特别且重要的地方就是:列表是可变的。数组
1、建立列表数据结构
建立列表一般有两种方式:app
list1 = list(); list2 = [];
## 经过以上两条语句,均可以建立空列表
list() 在这里其实是一种类型,相似于类型的构造函数,其中能够添加建立列表的初始化值,例如:函数
list('Hello'); ## 此条语句建立的列表以下 ['H', 'e', 'l', 'l', 'o'], 注意:list的参数只能有一个
2、列表的基本操做spa
列表的基本操做:code
(1)对元素进行增,删,查,改;对象
(2)获取列表中某个元素出现的次数;blog
(3)修改列表中元素的顺序。排序
一、增删改查
增长元素的操做:
append(): 在列表末尾追加新的对象
extend( ):在列表末尾一次性追加另外一个序列中的多个值
insert( ):将对象插入到列表中
list1 = [1, 2, 3]; list2 = [2, 3, 5, 6]; list1.append(4); # The result of list1 is : [1, 2, 3, 4] list1.extend(list2[1:3]); # The result of list1 is : [1, 2, 3, 4, 3, 5] list1.insert(3, 'four'); # The result of list1 is : [1, 2, 3, 'four', 4, 3, 5]
删除元素的操做有:
del 语句:del语句除了能够删除列表中的元素,还能够删除其余元素
pop(): 移除列表中的一个元素,默认状况下是最后一个元素,而且返回该元素的值
remove(): 移除列表中,某个值的,第一个匹配项
del list1[3]; # list1: [1, 2, 3, 4, 3, 5] list1.pop(); # list1: [1, 2, 3, 4, 3] val = list1.pop(0); # val: 1 # list1: [2, 3, 4, 3] list1.remove(3); # list1: [2, 4, 3]
查找元素的操做:
[]: greeting[0],和C语言中的数组操做同样,在中括号中传递元素索引值来获取相应的元素 (用索引值来获取元素值)
index(): 在列表中找出某个值第一个匹配项的索引位置,返回元素索引值 (用元素值获取对应的第一个索引值)
print(list1[0]); # 2 list1.index(4); # 1
修改元素的操做:
list1[0] = 1 # list1: [1, 4, 3]
二、获取列表中某个元素的出现次数
list1 = [1, 2, 1, 2, 1, 1]; list1.count(1); # 4
list2 = [[1,2], 3, 3,];
list2.count([1,2]);
# 1
三、修改列表中元素的顺序
sort(): 在原位置对列表进行排序,此操做会改变列表并返回空值,参数能够是一个排序函数
reverse(): 将列表中的元素反向存放,此操做会改变列表,可是没有返回值
list3 = [4, 3, 2, 1]; list3.sort(); # list3: [1, 2, 3, 4] list3.reverse(); # list3: [4, 3, 2, 1]
list3.sort(reverse=True);
# list3: [4, 3, 2, 1] list3.sort(cmp); # list3: [1, 2, 3, 4]
*注意:cmp是Python中的内建函数,提供了sort的比较函数的默认实现方式