05Python的多元数据类型--列表list

331 阅读3分钟

一、什么是list

列表: 列表是Python中最基本的数据结构。列表中的每个元素都分配一个数字 —— 即当前数据的位置,或索引,第一个索引是0,第二个索引是1,依此类推。

通俗易懂的来说,列表是一个"筐",什么都可以往里面装。数据一多就形成了结构。列表list是数据集合的一种形式

列表是一个有序的、可变的数据结构/类型

二、列表支持什么数据类型

image.png

列表里面可以存储字符串整数浮点数布尔

三、链表的基本特性

列表的作用是一次性存储多个元素,列表支持增、删、改、查基本功能

  • 增加
    • 支持空列表创建
    • 支持列表数据更新(添加)
  • 删除
    • 支持列表整体删除
    • 支持列表元素删除
    • 支持切片删除
  • 修改
    • 支持列表数据修改(基于下标、索引、index)
  • 查询
    • 支持列表数据查询(基于下标、索引、index)
    • 支持切片查询
    • 支持第一级元素长度统计(len)

四、如何声明一个列表

方法一:空值创建 list_data = list()

方法二:空值创建 list_data = []

#列表语法规则
['mike','Beigin','28','大学',5,true,1.78]

image.png

特别注意:

1、列表内的每个元素,遵守当前数据类型的原有规则。比如字符串数据类型是要加引号''

2、可以有剁成嵌套,每一层嵌套为一个独立体存在

四、玩转列表的常用方法

  • 下标
name_list = ['Tom', 'Lily', 'Rose']
print(name_list[0]) # Tom
print(name_list[1]) # Lily
print(name_list[2]) # Rose

列表的下标从0开始

  • 返回指定数据所在下标位置
name_list = ['Tom', 'Lily', 'Rose']
print(name_list.index('Lily', 0, 2)) # 1

注意:如果查找的数据不存在则报错

  • 判断是否存在

in:判断指定数据在某个列表序列,如果在返回True,否则返回False

name_list = ['Tom', 'Lily', 'Rose']
# 结果:True
print('Lily' in name_list)
# 结果:False
print('Lilys' in name_list)

not in:判断指定数据不在某个列表序列,如果不在返回True,否则返回False

name_list = ['Tom', 'Lily', 'Rose']
# 结果:False
print('Lily' not in name_list)
# 结果:True
print('Lilys' not in name_list)
  • 声明一个列表

image.png

  • 增加数据

image.png

注意:如果append()追加的数据是⼀个序列,则追加整个序列到列表

name_list = ['Tom', 'Lily', 'Rose']
name_list.append(['xiaoming', 'xiaohong'])
# 结果:['Tom', 'Lily', 'Rose', ['xiaoming', 'xiaohong']]
print(name_list)

  • 修改数据

image.png

  • 查询数据

image.png

  • 删除数据 image.png

特别注意!

1.修改数据和查询数据“一线间”

2.圈定范围修改列表数据时,需要保证添加的数据为可迭代对象

3.注意pop ()默认为删除最后一位,可指定索引位置,并返回被删除的值

4.remove() 基于值/数据删除数据,删除的是第一个匹配的数据,并非所有

  • 列表合并

image.png

  • 列表排序

image.png

  • 列表反转

image.png

  • 元素数量统计

image.png

  • 自身复制

image.png

列表长度

image.png

  • 列表复制

image.png

  • 包含关系判断

image.png

  • 切片延伸

image.png

五、列表常用技巧

技巧一:

image.png

技巧二:

image.png

list和for搭配使用

image.png

image.png

name_list = ['Tom', 'Lily', 'Rose']
for i in name_list:
 print(i)

List和while搭配使用

name_list = ['Tom', 'Lily', 'Rose']
i = 0
while i < len(name_list):
 print(name_list[i])
 i += 1