zoukankan      html  css  js  c++  java
  • 第二个月课堂004讲解python之实战之列表(002)_高级讲师肖sir

    python中的列表:

    字符串:str

    列表:list []

    元组:tuple

    字典:dict

    集合:可变集合,不可变集合

    ------------------------------------------------------------------------------------

    首先:我们讲下定义一个列表的方法两种:

    第一种:直接通过[  ]来定义  ([]  中括号)

    list1 =[1,2,3,'teat'] #定义一个列表
    print(type(list1)) #<class 'list'> 列表类型
    print(list1) #打印结果为:[1, 2, 3, 'test']
    

    第二种:通过list来转换

    a ='hello' #定义一个字符串
    print(type(a)) #<class 'str'> 字符串类型
    b=list(a) #通过list列表类型来将a字符串转换成为列表
    print(type(b)) #<class 'list'>
    print(b)#打印['h', 'e', 'l', 'l', 'o']已列表的格式输出
    

    ------------------------------------------------------------------------------------

    对列表操作:

    通过索引赋值:格式  列表名[ 索引]=“ 新值”

    通过切片赋值:格式  列表名[ 索引:]=“ 新值”

    append   添加函数

    exend     添加函数,(两个列表的拼接)

    insert      插入

    remove   删除

    del    删除

    sort        升序

    sorted    降序

    reverse  反转

    pop       删除(默认删除最后一个元素)

    ------------------------------------------------------------------------------

    # 根据索引来对列表中赋值(可以理解为替换)

    第一种:赋值(索引方式)

    list =[1,2,3,4,5,'teat'] # 定义一个列表
    list [4]='yy' #通过索引给对应索引位插入一个值,
    print(list) #打印结果: [1, 2, 3, 4, 'yy', 'test']
    #注意点:1、把原来对应索引位置的值替换成新的值
    2、索引位是从左0开始,比如4就是第5个数

     第二种:赋值

    list =[1,2,3,4,5,'teat'] # 定义一个列表
    list[3:]="我们是一群奋斗的兄弟" #从索引值为2开始将后面所有的值赋予成123
    print(list)
    #[1, 2, '3', '我', '们',’是’,’一’,’ 群’,’奋’,’斗’,’的’,’兄’,’弟’]

    -----------------------------------------------------------------------------------

     列表:添加元素:

    l =[1,2,3,4] # 定义一个列表
    l.append('hello') #通过append函数来添加一个具体的元素值
    print(l) #打印列表 [1, 2, 3, 4, 'hello']:
    备注:添加的值默认在最后一位;

     -------------------------------------------------------------------------------------------

     extend 列表拼接

    a=[1,2,3] #定义一个列表
    b=[4,5,6] #定义一个列表
    a.extend(b) #把a列表中的值和b中的值进行拼接通过extend函数来形成一个列表
    print(a) #[1, 2, 3, 4, 5, 6]
    备注:a.extend(b)表示 a拼接了b,拼接后的列表是在a中

     

     ------------------------------------------------------------------------------------------------------

    列表中插入一个具体的值:insert

    1、根据索引值插入值:(如果索引已存在插入,之前的索引值+1, 不存在出入就插入指定索引值,超出索引值也是在最后显示)

    第一种情况:超出的索引值

    s =[1,2,3,4,5] #定义一个列表
    s.insert(10,'hello') #给索引值为10的位置在最后一位
    print(s) #[ 1, 2, 3, 4, 5,'hello']
    备注:超出索引范围,都默认显示在列表的最后一位

     第二种情况:存在的索引值

    s =[1,2,3,4,5] #定义一个列表
    s.insert(0,'hello') #给索引值为0的位置插入一个具体的值
    print(s) #['hello', 1, 2, 3, 4, 5]
    备注:插入的值是当前指定的索引,原列表中的索引加1或(往后推一位)

     第三种情况:负向索引

    s =[1,2,3,4,5,6] #定义一个列表
    s.insert(-1,'hello') #给索引值为0的位置插入一个具体的值
    print(s) #[1, 2, 3, 4,5,'hello', 6]

     -----------------------------------------------------------------------------------------------------

    删除列表中的元素remove

    方法一:删除的是具体的值

    第一种情况:有对应的值,有且只有一个

    场景一:列表中是字符,删除要加上引号
    l = ['a', 1, 2, 3, 4, 5, 6, 'b'] # 定义一个列表 l.remove("a") # 移除l列表中对应的具体值 print(l) # 显示结果:[1, 2, 3, 5, 6,'b']
    场景二:列表中是数值,直接删除
    c=[1,2,3,4,5,6,"a"]
    c.remove(2)
    print(c)
    打印结果: [1, 3, 4, 5, 6, 'a']

     

    第二种情况: 删除有多个一样的值,只删除第一个

    l = ['c', 1, 2, 3, 4,'c' ,5, 6, 'c']  # 定义一个列表
    l.remove("c")  # 移除l列表中对应的具体值
    print(l)    #显示结果 [1, 2, 3, 4, 'c', 5, 6, 'c']
    备注:多个同样的值,从左开始删除第一个值,

    # 移除l列表中对应的具体值

    第三种情况:删除不存在的值,报错,不在删除的列表中

    l = ['c', 1, 2, 3, 4, 5, 6, 's']  # 定义一个列表
    l.remove("a")  # 移除l列表中对应的具体值
    print(l)  # 显示结果:报错    删除的内容不存在列表中
    

    方法二:del 删除

    第一种情况:

    del  通过索引 删除列表种对应的元素

    # l1 =[1,2,3,4,5] #定义一个列表
    # del l1[4] #删除对应列表中对应的索引值对应的值
    # print(l1) #打印结果:[1, 2, 3, 4]
    

    第二种情况: 超出索引值,删除列表是错误的

    l1 =[1,2,3,4,5] #定义一个列表
    del l1[6] #删除对应列表中对应的索引值对应的值
    print(l1) #显示结果:list assignment index out of range
    备注:报错,列表索引超出范围

    ---------------------------------------------------------------------------------------------------------

    排序(升序和降序)

     sort 升序

    场景1:
    l1 =[5,4,3,2,1] #定义一个列表 l1.sort() #通过sort来对列表进行升序排序 print(l1) #[1, 2, 3, 4, 5]


    场景二:字符和数值在一个列表中不能进行排序,报错
    c=[1,2,"a",3,4,3,5,6,"a"]
    c.sort()
    print (c)
    报错TypeError: '<' not supported between instances of 'str' and 'int'

    场景三:列表中出现多个相同的数值排序(根据数值的大小并列)

    d=[1,2,9,4,3,6,6,5,6]
    d.sort()
    print(d)
    打印结果:[1, 2, 3, 4, 5, 6, 6, 6, 9]

     sorted     reverse=ture  降序

    sorted     reverse=false  升序

    s =[6,3,1,5,4,2]
    print(sorted(s,reverse=True)) #降序:[6, 5, 4, 3, 2, 1]
    print(sorted(s,reverse=False)) #升序:[1, 2, 3, 4, 5, 6]
    

     备注:ture和false  中的首个字母大写

    ------------------------------------------------------------------------------------------------------------------

    reverse 函数 :反转输出

    s =[1,2,3,9,5,6,7] #定义一个内部
    s.reverse() #列表中的反转输出
    print(s) #[7, 6, 5, 9, 3, 2, 1]

     -------------------------------------------------------------------------------------------------------------------

    pop 函数 :删除 (默认删除末尾的值,也可以通过索引来删除)

    第一种情况:pop默认删除末尾的值

    l =[1,2,3,4,5] #定义一个列表
    l.pop() #删除末尾的值
    print(l) #[1, 2, 3, 4]
    print(l.pop()) #4 直接输出显示的为被删除的值,存留的不显示
    

    第二种情况:pop 通过索引删除

    m = [1, 2, 3, 4, 5, 6]  # 定义一个列表
    m.pop(1) #通过pop来删除索引值为1的对应的值
    print(m) #打印结果为:[1, 3, 4, 5, 6]
    #print(m.pop(1))  # 删除索引值为4对应的值:

    c=[1,2,3,4,5,6,"a"]
    c.remove(2)
    print(c)


    场景一:index根据列表中具体的值得出索引值
    d=[1,2,9,4,3,6,6,5,6]
    print(d.index(2))
    打印结果:1

  • 相关阅读:
    安装 macbook 双系统( OS X 和 Ubuntu )
    微信小程序初探
    [Javascript] Promise
    [AS/400] 基本概念
    [AS/400] Control Language(CL) 基本概念
    [AS/400] Control Language
    [github] 创建个人网页
    [tools] sublime 使用记录
    [Java] TreeMap
    exe转msi
  • 原文地址:https://www.cnblogs.com/xiaolehua/p/13975013.html
Copyright © 2011-2022 走看看