一、列表的定义
对于python列表的理解可以和C语言里面的数组进行比较性的记忆与对照,它们比较相似,对于python里面列表的定义可以直接用方括号里加所包含对象的方法,并且python的列表是比较强大的,它包含了很多不同类型的数据:整型数字,浮点型,字符串以及对象等。
二、列表的定义
1、创建一个普通类型列表
member = [1, 2, 3, 4, 5]
print(member)
//输出:[1, 2, 3, 4, 5]
2、创建一个混合类型列表
mix = [1, 2.5, 'Andy', [4, 5, 6]]
print(mix)
//输出:[1, 2.5, 'Andy', [4, 5, 6]]
3、创建一个空列表
empty = []
print(empty)
三、向列表中添加元素
1、append()方法
append( )对于列表的操作主要实现的是在特定的列表最后添加一个元素,并且只能一次添加一个元素,并且只能在列表最后;
使用:m.append(元素A)
代码;
member = [1, 2]
member.append(3)
print(member)
//输出:[1, 2, 3]
2、extend()
extend( )对于列表的操作主要实现的是对于特定列表的扩展和增长,可以一次添加多个元素,参数为列表,只能添加在列表的最后;
使用:m.extend([A,B,……])
代码:
member.extend([4, 5])
print(member)
//输出:[1, 2, 3, 4, 5]
3、insert()
insert()对于列表的操作主要是在列表的特定位置添加想要添加的特定元素,这里的特定位置是指元素所在列表中的位置索引号,需要注意的是这里的索引号都是从0开始的,不是从1开始的.
使用:m.insert(A,元素B):表示在列表m里面的第A+1处加入元素B
代码:
member.insert(0, 6)
print(member)
//输出:[6, 1, 2, 3, 4, 5]
四、元素的获取
和数组一样,可以通过元素的索引值从列表中获取单个元素,索引值从0开始
用法:m[索引值]
代码:
member = ['Andy', 'Tony', 'Candy']
print(member[0])
//输出:Andy
获取列表中的列表元素,方法类似于二维数组
member = ['Andy', [123, 456], 'Tony']
print(member[1][0]) //123
五、列表中删除元素
1、remove()
remove()是移除掉列表里面的特定元素,只需给出元素名字即可,但是必须存在列表之内
用法:m.remove()
代码:
member.remove('Tony')
print(member)
//输出:Andy,Candy
2、del
删除掉列表里面的索引号位置为n 的元素,或者删除整个列表,del是操作语句
用法:del member[索引值]
代码:
del member[1]
print(member)
//输出 Andy
3、pop()
将列表的最后一个元素返回,并且在此基础上进行删除掉
或者删除列表中的一个元素
用法:m.pop(),m.pop(索引值)
代码:
member.pop()
print(member)
//输出:[]
六、列表分片
列表分片是将列表里面的一些列元素(不仅仅是某一个元素)进行获取或者得到,是连续的。
用法:member2=member[m:n] %表示将列表里从索引号位置为m开始的元素到n-1处元素之间的列表获取赋给temp,并且不改变member列表
代码:
member = ['Andy', 'Tony', 'Candy']
print(member[0:2])//['Andy', 'Tony']
print(member[:2])//['Andy', 'Tony']
print(member[0:])//['Andy', 'Tony', 'Candy']
member2 = member[:]
print(member2)//['Andy', 'Tony', 'Candy']
七、常用操作符
1、比较操作符
比较>,<:主要进行数据型列表的元素比较
list1 = [123, 456]
list2 = [234, 123]
print(list1 > list2) //false
2、逻辑操作符
and 逻辑操作符
3、连接操作符 不建议使用请用extend()和append()
list1 = [123, 456]
list2 = [234, 123]
print(list1 + list2) //[123, 456, 234, 123]
4、重复操作符
*:主要实现的是列表的复制和添加
list1 *= 3
print(list1) // [123, 456, 123, 456, 123, 456]
5、成员关系操作符
in就是成员关系符
member = ['Andy', [123, 456], 'Tony']
print('Andy' in member) //Ture
八、列表的内置函数
1、count()
m.count(A):输出元素A在列表m里面出现的次数
list1 = [123, 234 ,456]
list1 *= 3
print(list1.count(123)) //3
2、index()
m.index(A,a,b):对于列表m里面包含多个元素A时,输出在列表索引号a-b之间的A第一次出现的索引号,注意:a,b是左闭右开
list1 = [123, 234 ,456]
list1 *= 3
print(list1.index(123, 4, 9)) //6
3、reverse()
m.reverse():将列表m进行前后的翻转,将列表逆序
list1 = [123, 234 ,456]
list1 *= 3
list1.reverse()
print(list1)
//输出:[456, 234, 123, 456, 234, 123, 456, 234, 123]
4、sort()
m.sort():将列表m里面地数据进行从小到大的排列
list1 = [4, 3 ,5 , 1]
list1.sort()
print(list1) // [1, 3, 4, 5]
m.sort(reverse=True):将列表m里面地数据进行从大到小的排列
list1 = [4, 3 ,5 , 1]
list1.sort(reverse = True)
print(list1) // [5, 4, 3, 1]
九、列表的拷贝
列表分片,是实实在在的拷贝,也就是复制,改变拷贝者不会影响被拷贝者
list1 = [4, 3 ,5 , 1]
list2 = list1[:] //真正意义上拷贝
list3 = list1 //不算拷贝