基础知识(5)
数据容器–list列表
列表的定义
- 语法:[元素,元素,…]
列表中的每一个数据,称为元素
- 以[]作为标记
- 列表内的每个元素之间用","(逗号)隔开
p s:列表可以一次存储多个数据,且可以为不同的数据类型,支持嵌套
定义一个列表
my_list = ["mthgh","nihaoa","python"]
print(my_list)
print(type(my_list))
my_list = ["nihao",666,True]
print(my_list)
print(type(my_list))
#['mthgh', 'nihaoa', 'python']
#<class 'list'>
#['nihao', 666, True]
#<class 'list'>
定义一个嵌套列表
my_list = [ [1,2,3], [5,6,7]]
print(my_list)
print(type(my_list))
#[[1, 2, 3], [5, 6, 7]]
#<class 'list'>
列表的下标(或者是列表的索引)
- 列表的每一个元素都有之间位置对应的下标索引,从前往后,从0开始,递增
- 我们可以通过下标索引得到对应位置的元素
# # 通过下标索引取得对应位置的数据
my_list = ["nihao","mth","python"]
# 列表[下标索引] 从前往后从0开始,每次加1 从后往前从-1开始,每次-1
print(my_list[0])
print(my_list[1])
print(my_list[2])
#nihao
#mth
#python
- 不仅可以按着顺序取出,我们也可以倒序取出,从后向前从-1开始,递减
my_list = ["nihao","mth","python"]
print(my_list[-1])
print(my_list[-2])
print(my_list[-3])
#python
#mth
#nihao
- 取出嵌套列表里面的元素
my_list = [ [1,2,3], [5,6,7]]
# 取到5
print(my_list[1][0])
#5
list列表常用操作
- 插入元素
- 删除元素
- 清空列表
- 修改元素
- 统计元素个数
插入元素
1.在指定下标的位置插入新元素
- 列表.insert(下标, 元素),在指定的下标位置,插入指定的元素
mylist = ["mthgh","nihaoa","python"]
mylist.insert(1,"good")
print(f"列表在插入元素后的结果是:{mylist}")
#列表在插入元素后的结果是:['mthgh', 'good', 'nihaoa', 'python']
2.在列表的尾部追加单个新元素
- 列表.append(元素),将指定元素,追加到列表的尾部
mylist = ["mthgh","nihaoa","python"]
mylist.append("nice")
print(f"列表在尾部追加单个新元素后的结果是:{mylist}")
#列表在尾部追加单个新元素后的结果是:['mthgh', 'nihaoa', 'python', 'nice']
3.在列表的尾部追加一批新元素
- 列表.extend(其它数据容器),将其它数据容器的内容取出,依次追加到列表尾部
mylist = ["mthgh","nihaoa","python"]
mylist2 = [1,5,6]
mylist.extend(mylist2)
print(f"在列表的尾部追加一批元素后的结果是:{mylist}")
#在列表的尾部追加一批元素后的结果是:['mthgh', 'nihaoa', 'python', 1, 5, 6]
删除元素
删除元素有两种方法:
方法1:del 列表[下标]
方法2:列表.pop[下标]
方法1:del 列表[下标]
mylist = ["mthgh","nihaoa","python"]
del mylist[2]
print(f"列表删除元素后的结果是:{mylist}")
#列表删除元素后的结果是:['mthgh', 'nihaoa']
方法2:列表.pop[下标]
mylist = ["mthgh","nihaoa","python"]
mylist = ["ithema","nihaoa","python"]
element = mylist.pop(2)
print(f"通过pop的方法取出元素后列表内容:{mylist},取出的元素是:{element}")
#通过pop的方法取出元素后列表内容:['ithema', 'nihaoa'],取出的元素是:python
删除某元素在列表中的第一个匹配项
mylist = ["mthgh","wansahanghao","mthgh","nihaoa","python"]
mylist.remove("mthgh")
print(f"通过remove方法移除元素后的列表结果是:{mylist}")
#通过remove方法移除元素后的列表结果是:['wansahanghao', 'mthgh', 'nihaoa', 'python']
清空列表
- 列表.clear()
mylist = ["mthgh","wansahanghao","mthgh","nihaoa","python"]
mylist.clear()
print(f"列表被清空了,结果是:{mylist}")
#列表被清空了,结果是:[]
修改元素
修改特定下标索引的值
mylist = ["mthgh","nihaoa","python"]
mylist[0] = "你好啊"
print(f"列表被修改元素后的结果是:{mylist}")
#列表被修改元素后的结果是:['你好啊', 'nihaoa', 'python']
统计数量
mylist = ["mthgh","wansahanghao","mthgh","nihaoa","python"]
count = len(mylist)
print(f"列表元素的数量总共有:{count}个")
#列表元素的数量总共有:5个
查找元素
- 查找某元素在列表内的下标索引
mylist = ["mthgh","nihaoa","python"]
# 1.1查找某元素在列表内的下标索引
index = mylist.index("mthgh")
print(f"mthgh在列表中的下标索引值是:{index}")
#mthgh在列表中的下标索引值是:0
2.如果被查找的元素不在,则会报错
mylist = ["mthgh","nihaoa","python"]
index = mylist.index("hello")
print(f"hello在列表中的下标索引值是:{index}")
#这种情况下会报错
列表的循环
-
一个是使用while
-
另一个是使用for
-
while
def list_while_func(): """ 使用while循环遍历列表的演示函数 :return: None """ my_list = ["mthgh","你好","python"] # 循环控制变量通过下标索引来控制,默认0 # 每一次循环将下标说应变量+1 # 循环条件:下标索引变量 < 列表的元素梳理 # 定义一个变量用 来标记列表的下标 index = 0 while index < len(my_list): # 通过index变量取出对应下标的元素 elsment = my_list[index] print(f"列表的元素:{elsment}") # 至关重要 将循环变量(index)每一次循环都+1 index += 1 list_while_func()
-
for
def list_for_func(): """ 使用for循环遍历列表的演示函数 :return: None """ my_list = [1,2,3,4,5] # for 临时变量 in 数据容器: for element in my_list: print(f"列表的元素有:{element}") list_for_func() #列表的元素有:1 #列表的元素有:2 #列表的元素有:3 #列表的元素有:4 #列表的元素有:5