一、列表的定义
存储一个或者几个数据时,我们可以用变量来存储。
例如:
name1='a'
name2='b'
name3='c'
这种少量有限的我们可以用变量进行存储,但是当数据量很大的时候呢?例如存储100个名字,显然这种方法是不行的,为此python提供一种专门应对这种情况的数据类型。列表
二、列表的使用
1.列表的声明
列表是一种数据类型,在前面的文章提到过。
语法为: 变量名=[数据1,数据2,数据3,…数据100]
如果想要指定长度的列表
则应该这么定义:
#创建指定长度为5的列表
a=[0]*5
print(a)
#结果为:[0, 0, 0, 0, 0]
2.列表使用
对于曾经接触果其他语言读者而言,可以将列表认为是数组类型 (但是,列表可以存储多种类型数据) 。对于没接触过的,可以参考下面学习,
本文主要介绍列表的增删改查操作。
(1)列表的查找
① 查找指定位置的数据。
语法 变量名[下标]
ps:关于下标的概念可以翻阅作者之前的文章进行了解
举例:
names=["张三","李四","王五","赵六"]
print(names[0]) #张三
print(names[-1]) #赵六
print(names[7]) #报错:IndexError: list index out of range
②index()
返回指定数据的下标。内容不存在就会报错
语法:变量名.index(“指定数据”,开始位置,结束位置)
举例:
names=["张三","李四","王五","赵六","张三"]
print(names.index("李四")) #结果为:1
print(names.index("张三")) #结果为:0
print(names.index("张三",2)) #结果为:4
print(names.index("张四")) #报错:ValueError: '张四' is not in list
③count(
)查看数据出现的次数
语法:变量名.count(“指定数据”)
④len()
查看列表长度
语法: 变量名.len()
举例:
names=["张三","李四","王五","赵六","张三"]
print(names.count("张三")) #结果为2
print(len(names)) #结果为5
⑤ 判断是否存在
语法:
in
:判断指定数据在某个列表序列,如果在返回True,否则返回
not in
:判断指定数据不在某个列表序列,如果不在返回True,否则返回False
举例:
names=["张三","李四","王五","赵六","张三"]
print("张三" in names) #True
print("张三" not in names) #False
print("张思" in names) #False
print("张思" not in names) #True
(2) 列表的增加
① append()
在表尾增加数据
语法:变量名.append(数据)
举例:
names=["张三","李四","王五","赵六","张三"]
name1="赵三"
names.append(name1)
print(names)
#结果为:
['张三', '李四', '王五', '赵六', '张三', '赵三']
注意,追加后会改变原来的数据.
当追加的数据为列表类型时,会带上”[]“一起
举例:
names=["张三","李四","王五","赵六","张三"]
name1=["七八","九十"]
names.append(name1)
print(names)
#结果为:
['张三', '李四', '王五', '赵六', '张三', ['七八', '九十']]
②extend()
列表结尾追加数据
举例:
names=["张三","李四","王五","赵六","张三"]
name1="赵六"
names.extend(name1)
print(names)
#结果为:
['张三', '李四', '王五', '赵六', '张三', '赵', '六']
注意:对于字符串类型,extend方法会使其拆开再加进去
names=["张三","李四","王五","赵六","张三"]
name1=["七八","九十"]
names.extend(name1)
print(names)
#结果为
['张三', '李四', '王五', '赵六', '张三', '七八', '九十']
添加列表会直接对两个列表进行拼接
③insert()
指定位置新增数据。
语法:列表序列.insert(位置下标, 数据)
举例:
names=["张三","李四","王五","赵六","张三"]
names.insert(1,"七八")
print(names)
#结果为:
['张三', '七八', '李四', '王五', '赵六', '张三']
(3)列表的删除
①删除列表
语法 del 变量
举例:
name_list = ['Tom', 'Lily', 'Rose']
del name_list
print(name_list) #结果:报错提示:name 'name_list' is not defined
②clear()
清空列表
语法:变量名.clear()
③删除指定位置数据
语法:del 列表[0]
names=["张三","李四","王五","赵六","张三"]
del names[0]
print(names)
#结果为:
['李四', '王五', '赵六', '张三']
④remove()
移除列表中某个数据的第⼀个匹配项。
语法:列表.remove(数据)
names=["张三","李四","王五","赵六","张三"]
names.remove("张三")
print(names)
#结果为:
['李四', '王五', '赵六', '张三']
(4)修改列表
①修改指定位置数据
names=["张三","李四","王五","赵六","张三"]
names[0]="赵三"
print(names)
#结果为:
['赵三', '李四', '王五', '赵六', '张三']
②reverse()
逆置
names=["张三","李四","王五","赵六"]
names.reverse()
print(names)
#结果为:
['赵六', '王五', '李四', '张三']