基本数据类型(列表)

列表(其他的语言中叫数组)

  • 列表是元素的集合,存储在一个变量中
  • 列表可以存放多个值,如:
    name = ["张三","李四","夏亮"]
  • 列表按照从左到右的顺序定义列表元素,下标从0开始顺序访问,可以修改指定下索引位置对应的值,如下:

列表的定义

  • 定义:[]内以逗号分隔,按照索引,存放各种数据类型,每个位置代表一个元素

列表的增、删、改、查

  1. 插入(在已有的值前面在插入一个值):变量名.insert(下标,需要插入的值),示例如下:
    name = ["xiaiang","zhuguil","xiachenxi"]
    name.insert(1,"朱永裴")
    输出结果为:['xiaiang', '朱永裴', 'zhuguil', 'xiachenxi']

  2. 追加(把元素插入到列表的最后面):变量名.append(需要追加的值),示例如下:
    name = ["xiaiang","zhuguil","xiachenxi"]
    name.append("夏亮")
    输出结果为:['xiaiang', 'zhuguil', 'xiachenxi', '夏亮']

  3. 合并(把一个列表的值合并到另一个列表中,与追加类似),示例如下:
    name = ["xiaiang","zhuguil","xiachenxi"]
    username = ["夏亮","朱桂林"]
    name.extend(username)
    输出结果为:['xiaiang', 'zhuguil', 'xiachenxi', '夏亮','朱桂林']
    uername = "xia"
    name.extend(username)
    print(name)
    输出结果为:['xiaiang', 'zhuguil', 'xiachenxi', 'x','i','a']

  4. 嵌套(一个列表中包含另一个列表),示例如下:
    name = ["xiaiang","zhuguil","xiachenxi"]
    username = ["夏亮","朱桂林"]
    name.insert(1,username) #把username列表插入到name列表中
    输出结果为:['xiaiang',['夏亮','朱桂林'], 'zhuguil','xiachenxi'] #把username列表加入到name列表索引为1的位置
    print(name[2][1]) #取列表中包含的列表中的值,首先找到列表中所包含的列表的索引,然后在取该列表中的索引
    输出结果为:'夏亮'


一、直接删:del,通用的删除方法,只是单纯的删除,没有返回值

  1. 删除其中一个元素:del 变量名[下标],示例如下:
    name = ["xiaiang","zhuguil","xiachenxi","夏亮"]
    del name[3]
    输出结果为:['xiaiang', 'zhuguil', 'xiachenxi']
  2. 从后面一个元素向前删除其中一个元素:del 变量名[负数],最后一个为-1,以此类推,第一个为-4,示例如下:
    name = ["xiaiang","zhuguil","xiachenxi","夏亮"]
    del name[-2]
    输出结果为:['xiaiang', 'zhuguil', '夏亮']

二、pop()删:根据索引删,如:pop();默认删除列表中最后一个元素,并返回所删除的值

示例如下:
name = ["xiaiang","zhuguil",[1,2,3],"xiachenxi","夏亮"]
name.pop()
输出结果为:['xiaiang','zhuguil',[1,2,3],'xiachenxi']

注:pop也可以进行指定删除(与del类似)

示例如下:
name = ["xiaiang","zhuguil",[1,2,3],"xiachenxi","夏亮"]
name.pop(2)#指定删除列表中索引为2的值
输出结果为:['xiaiang','zhuguil','xiachenxi','夏亮']

注:当列表中没有值的时候用pop删,会报错,

三、clear :清空列表中所有值
示例如下:
name = ["xiaiang","zhuguil",[1,2,3],"xiachenxi","夏亮"]
name.clear()
输出结果为:[]

四、remove() :根据元素进行删除,删除从左到右找到的第一个匹配的值

示例如下:
name = ["xialiang","zhuguil","xiachenxi","xialiang"]
name.remove("xialiang")
输出结果为:['zhuguil','xiachenxi','xialiang']

  • 修改列表中的一个元素:name[下标] = "修改的值",示例如下:
    name = ["xiaiang","zhuguil","xiachenxi","xialiang13"]
    name[1] = "朱桂林"
    输出结果为:['xiaiang', '朱桂林', 'xiachenxi', 'xialiang13']

  1. 查询该元素是否在列表中:'元素' in 变量名,示例如下:
    name = ["xiaiang","zhuguil","xiachenxi","xialiang13"]
    'xiachenxi' in name··············#在pycharm中可以用print('zhuguil' in name)
    输出结果为:true(如果不在该列表中则会输出false)
  2. 查询列表中是否有该元素,并且把下标显示出来:变量名.index("元素"),如果该元素存在该列表中则会返回下标值,如果不在则会报错,示例如下:
    name = ["xiaiang","zhuguil","xiachenxi","xialiang13"]
    name.index("xiachenxi")··········#在pycharm中用print(name.index("xiachenxi"))
    输出结果为:2
  3. 查找列表中该值有几个
    name = ["xiaiang","zhuguil","xiachenxi","xialiang13",'zhuguil']
    name.count("zhuguil")·········#查找列表中"zhuguil"的值有几个,输出结果有2个
    输出结果为:2

注:如果想直接删除该列表中的元素,但不知道该元素的下标,则可以先查出下标在进行删除
也可以一条语句执行完成(命令嵌套),示例如下:
name = ["xiaiang","zhuguil","xiachenxi","xialiang13"]
del name[name.index("xiachenxi")]

posted @ 2020-11-15 17:34  A熙  阅读(252)  评论(0)    收藏  举报