(六)Python学习之列表及其常用操作
一、列表的格式
列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现;
list1 = ['physics', 'chemistry', 1997, 2000]
list2 = [1, 2, 3, 4, 5]
list3 = ["a", "b", "c", "d"]
print(list1)
print(list2)
print(list3)
二、列表中的元素
列表中的元素可以是数字、字符串、列表、布尔值等;
三、列表的索引取值
a_list = [1, 2, 3, 4, 5, 6]
b_list = ['a', 'b', 'c', 'd']
print(a_list[0])
print(b_list[2])
四、列表的切片取值
切片取值的结果也是列表;
a_list = [1, 2, 3, 4, 5, 6]
b_list = ['a', 'b', 'c', 'd']
print(b_list[1:3])
print(a_list[:])
五、列表的迭代
支持for操作和while操作;
for x in [1, 2, 3]:
print(x),
六、列表的值的修改
支持索引方式与切片方式修改;
li = ['a', 'b', 'c', 'd', 'e', 'f']
print(li)
li[1] = '*'
print(li)
li[4:6]=['*', '*']
print(li)
七、列表的del操作
支持索引方式与切片方式删除;
li = ['a', 'b', 'c', 'd']
print(li)
del li[1]
print(li)
del li[2:3]
print(li)
八、列表的in操作
li = ['a', 'b', 'c', 'd']
print(li)
print('b' in li)
print('e' in li)
九、字符串转换为列表
list()实际上是内部进行for循环操作;
li = "abcd"
print(li)
v = list(li)
print(v)
十、列表转换为字符串
当列表中元素只有字符串时,可用join方法;否则必须使用for循环操作;
li1 = ['a', 'b', 'c', 'd']
li2 = ['a', 1, 'b', 'c', 9, 'd']
v1 = "".join(li1)
print(li1)
print(v1)
v2 = ''
for i in li2:
v2 = v2 + str(i)
print(li2)
print(v2)
十一、列表操作方法
1.append(p_ob_ject): 在列表后面追加新的对象p_ob_ject;
2.clear(): 清空列表中的元素;
li = ['physics', 'chemistry', 1997, 2000]
print(li)
li.append('lf')
print(li)
li.append(1995)
print(li)
li.append(['lf', 4])
print(li)
li.clear()
print(li)
3.copy(): 浅复制列表;
4.count(value): 统计元素value在列表中出现的次数;
li = ['physics', 2000, 'chemistry', 1997, 2000]
print(li)
v1 = li.copy()
print(v1)
v2 = li.count(2000)
print(v2)
5.extend(iterable): 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表),参数必须为可迭代的对象;
6.index(index, start = None, stop =None): 从列表中索引大于等于start,小于stop的元素中,找出第一个值与index匹配项的索引位置;当start和stop为空时,默认搜索整个列表;搜索失败时程序报错;
li = ['physics', 2000, 'chemistry', 1997, 2000]
print(li)
li.extend("abc")
print(li)
li.extend(['lf', 2018])
print(li)
v1 = li.index(2000)
v2 = li.index(2000, 3, 6)
print(v1)
print(v2)
7.insert(index,p_ob_ject): 将对象p_ob_ject插入列表的指定位置(索引为index);
8.pop(index = None): 删除列表中的特定位置(索引为index)的一个元素,并返回删除元素的值;当index为空时,默认删除最后一个元素;
9.remove(value):删除列表中某个特定值value的第一个匹配项;
li = ['physics', 2000, 'chemistry', 1997, 2000]
print(li)
li.insert(1, 'hahaha')
print(li)
v = li.pop(2)
print(v)
print(li)
li.remove(2000)
print(li)
10.reverse():反转列表中的元素;
11.sort(key=None,reverse=False):对原列表按关键字key进行排序,reverse为false时,排序为从小到大,为true时,排序为从大到小;
li = [88, 2000, 777, 1997, 2000]
print(li)
li.reverse()
print(li)
li.sort(reverse=False)
print(li)
li.sort(reverse=True)
print(li)