一、创建列表
- 使用[ ]创建列表,并通过 = 将其赋值给变量
- 使用内置的函数 list(),可以将其它数据类型转换为列表类型
a = 'python'
list1 = list(a)
print(list1)
list2 = list()
print(list2)
运行结果:
['p', 'y', 't', 'h', 'o', 'n']
[]
二、删除列表
- del关键字删除
del listname
参数含义:
listname 删除列表的名称
代码语言:python代码运行次数:0复制list3 = [2, 4, 6]
print(list3)
del list3
print(list3)
运行结果:
Traceback (most recent call last):
File "E:PycharmProjectspythonProjecttest_basic.py", line 27, in <module>
print(list3)
^^^^^
NameError: name 'list3' is not defined. Did you mean: 'list'?
[2, 4, 6]
三、添加元素
1、序列的 拼接
一个列表的末尾添加一个列表,生成一个新的列表,且原有列表不变
2、append()方法添加元素
- 语法
listname.append(obj)
参数说明:
listname 表示要添加元素的列表
obj 表示到添加到列表末尾的数据,它可以是单个元素,也可以是列表、元组等。
- 用于在列表末尾添加元素,将添加的元素看作一个整体,作为列表的一个元素添加,形成新列表
a = '老虎'
list4 = [1, 2]
list4.append(a)
print(list4)
b = ['hello', 'word']
list5 = [1, 2]
list5.append(b)
print(list5)
运行结果:
[1, 2, '老虎']
[1, 2, ['hello', 'word']]
3、extend()方法添加元素
- 语法
listname.extend(obj)
参数说明:
listname 指的是要添加元素的列表
obj 表示到添加到列表末尾的数据,它可以是单个元素,也可以是列表、元组等,但不能是单个的数字。
- 在列表末尾添加元素,将添加的元素拆开逐个添加到列表
a = '老虎'
list4 = [1, 2]
list4.extend(a)
print(list4)
b = ['hello', 'word']
list5 = [1, 2]
list5.extend(b)
print(list5)
运行结果:
[1, 2, '老', '虎']
[1, 2, 'hello', 'word']
4、insert()方法插入元素
- 语法
listname.insert(index , obj)
参数说明:
index 表示指定位置的索引值
insert() 会将 obj 插入到 listname 列表第 index 个元素的位置。
- 用于在列表指定位置添加元素,将添加的元素看作一个整体,作为列表的一个元素添加,形成新列表
a = '老虎'
list4 = [1, 2]
list4.insert(1, a)
print(list4)
b = ['hello', 'word']
list5 = [1, 2]
list5.insert(1, b)
print(list5)
运行结果:
[1, '老虎', 2]
[1, ['hello', 'word'], 2]
append()、extend()、insert()方法区别
方法 | 区别 |
---|---|
append() | 1、在末尾插入 2、将插入的元素看作整体 |
extend() | 1、在末尾插入 2、将插入的元素拆开逐个添加到列表 |
insert() | 1、在指定位置插入 2、将插入的元素看作整体 3、若在末尾插入一般不使用该方法 |
四、删除元素
1、del:根据索引值删除元素
- 语法
del listname[index]
参数说明:
删除单个元素
listname 表示列表名称
index 表示元素的索引值
del listname[start : end]
参数说明:
删除中间一段连续的元素
start 表示起始索引
end 表示结束索引
del 会删除从索引 start 到 end 之间的元素,不包括 end 位置的元素
- 举例
# 删除单个元素
list6 = ['a', 'b', 'c', 'd', 'e','f']
del list6[1]
print(list6)
del list6[-1]
print(list6)
运行结果:
['a', 'c', 'd', 'e', 'f']
['a', 'c', 'd', 'e']
代码语言:python代码运行次数:0复制# 删除一段连续元素
list6 = ['a', 'b', 'c', 'd', 'e', 'f']
del list6[1:3]
print(list6)
运行结果:
['a', 'd', 'e', 'f']
2、pop():根据索引值删除元素
- 语法
listname.pop(index)
参数说明:
listname 表示列表名称
index 表示索引值,如果不写 index 参数,默认会删除列表中的最后一个元素
- 删除列表中指定索引处的元素
list7 = ['a', 'b', 'c', 'd', 'e', 'f']
list7.pop(1)
print(list7)
运行结果:
['a', 'c', 'd', 'e', 'f']
3、remove():根据元素值进行删除
- 语法
listname.remove(ele)
参数说明:
listname 表示列表名称
ele 表示元素值,只会删除第一个和指定值相同的元素,而且必须保证该元素是存在的,否则会引发 ValueError 错误。
注:一般使用前会提前判断元素是否存在
- 举例
list8 = ['a', 'b', 'c', 'd', 'e', 'f']
list8.remove('b')
print(list8)
list8.remove('b')
运行结果:
['a', 'c', 'd', 'e', 'f']
Traceback (most recent call last):
File "E:PycharmProjectspythonProjecttest_basic.py", line 68, in <module>
list8.remove('b')
ValueError: list.remove(x): x not in list
4、clear():删除列表所有元素
- 语法
listname.clear()
- 删除列表的所有元素,也即清空列表
list9 = ['a', 'b', 'c', 'd', 'e', 'f']
list9.clear()
print(list9)
运行结果:
[]
五、修改元素
1、修改单个元素
- 通过索引直接赋值
list10 = ['a', 'b', 'c', 'd', 'e', 'f']
list10[1] = '修改'
print(list10)
运行结果:
['a', '修改', 'c', 'd', 'e', 'f']
2、修改一组元素
1)不指定步长
- 举例
list11 = ['a', 'b', 'c', 'd', 'e', 'f']
list11[1:3] = ['和', '看']
print(list11)
运行结果:
['a', '和', '看', 'd', 'e', 'f']
2)指定步长
- 举例
list12 = ['a', 'b', 'c', 'd', 'e', 'f']
list12[1:5:2] = ['和', '看']
print(list12)
运行结果:
['a', '和', 'c', '看', 'e', 'f']
六、查找元素
1、index() 方法
- 查找某个元素在列表中出现的位置(索引),返回元素所在列表中的索引值
- 若该元素不存在,则会导致 ValueError 错误,所以在查找之前一般用 count() 方法判断一下。
- 语法
listname.index(obj, start, end)
参数说明:
listname 表示列表名称
obj 表示要查找的元素
start 表示起始位置
end 表示结束位置
注:
start 和 end 参数用来指定检索范围:
·start 和 end 可以都不写,此时会检索整个列表;
·如果只写 start 不写 end,那么表示检索从 start 到末尾的元素;
·如果 start 和 end 都写,那么表示检索 start 和 end 之间的元素。
- 举例
list13 = ['a', 'b', 'c', 'd', 'e', 'f']
print(list13.index('d'))
print(list13.index(4, 'd'))
运行结果:
3
Traceback (most recent call last):
File "E:PycharmProjectspythonProjecttest_basic.py", line 84, in <module>
print(list13.index(4, 'd'))
^^^^^^^^^^^^^^^^^^^^
TypeError: slice indices must be integers or have an __index__ method
2、count()方法
- 统计某个元素在列表中出现的次数
- 如果 count() 返回 0,就表示列表中不存在该元素,所以 count() 也可以用来判断列表中的某个元素是否存在
- 语法
listname.count(obj)
参数说明:
listname 代表列表名
obj 表示要统计的元素
- 举例
list14 = ['a', 'b', 'c', 'd', 'e', 'f', 'a']
print(list14.count('a'))
print(list14.count('h'))
if list14.count('h'):
print('list14中存在h元素')
else:
print('list14中不存在h元素')
运行结果:
2
0
list14中不存在h元素