zoukankan      html  css  js  c++  java
  • python 列表(list)操作及函数

    列表 list操作

    (1)列表的拼接 (同元组)

    lst1 = ["宋江","卢俊义","吴用","公孙胜"]
    lst2 = ["关胜","林冲","鲁智深","武松","史进"]
    res = lst1 + lst2
    print(res)
    

    (2)列表的重复 (同元组)

    lst1  = [1,2,3]
    res = lst1 * 3
    print(res)
    

    (3)列表的切片 (同元组)

    """
    语法 => 列表[::]  完整格式:[开始索引:结束索引:间隔值]
    	(1)[开始索引:]  从开始索引截取到列表的最后
    	(2)[:结束索引]  从开头截取到结束索引之前(结束索引-1)
    	(3)[开始索引:结束索引]  从开始索引截取到结束索引之前(结束索引-1)
    	(4)[开始索引:结束索引:间隔值]  从开始索引截取到结束索引之前按照指定的间隔截取列表元素值
    	(5)[:]或[::]  截取所有列表
    """
    
    
    lst = ['宋江', '卢俊义', '吴用', '公孙胜', '关胜', '林冲', '鲁智深', '武松', '史进']
    # (1)[开始索引:]  从开始索引截取到列表的最后
    res = lst[2:]
    print(res)
    
    # (2)[:结束索引]  从开头截取到结束索引之前(结束索引-1)
    res = lst[:5]
    print(res)
    
    # (3)[开始索引:结束索引]  从开始索引截取到结束索引之前(结束索引-1)
    res = lst[5:7]
    res = lst[-3:-1]
    print(res)
    
    # (4)[开始索引:结束索引:间隔值]  从开始索引截取到结束索引之前按照指定的间隔截取列表元素值
    res = lst[::2]
    # 0 2 4 6
    print(res)
    res = lst[::-1]
    # -1 -2 -3 -4 -5 -6 -7
    print(res)
    
    # (5)[:]或[::]  截取所有列表
    res = lst[:]
    res = lst[::]
    print(res)
    

    (4)列表的获取 (同元组)

    lst = ['宋江', '卢俊义', '吴用', '公孙胜', '关胜', '林冲', '鲁智深', '武松', '史进']
    res = lst[2]
    print(res)
    res = lst[-1]
    print(res)
    

    (5)列表的修改 ( 可切片 )

    lst = ["猪八戒","唐僧","孙悟空","沙僧"]
    正常修改
    lst[0] = "白龙马"
    print(lst)
    
    (1)切片修改 : 会将容器里面的数据,一个一个放到元列表当中  [不带有间隔值的切片修改,赋值的新值个数随意,无论是哪种修改,都必须赋予可迭代的数据]
    """
    可迭代对象(Iterable): (容器类型数据,range对象,迭代器)
    如果通过切片修改,右侧赋予的值必须是可迭代对象
    """
    
    (2)切片修改(存在间隔值) [带有间隔值得修改修改,如果切出4个元素,只能赋予4个元素]
    # (2)切片修改(存在间隔值) [带有间隔值得修改修改,如果切出4个元素,只能赋予4个元素]
    lst = ["猪八戒","唐僧","孙悟空","沙僧","白骨精","牛魔王","金角大王","银角大王"]
    print(lst[::2]) # 0 2 4 6 8 10 12  # 猪八戒 孙悟空 白骨精 金角大王
    

    (6)列表的删除 ( 可切片 ) del 代表删除变量

    lst = ["猪八戒","唐僧","孙悟空","沙僧","白骨精","牛魔王","金角大王","银角大王"]
     del lst[0]
     print(lst)
    
     del lst[4:6]
     print(lst)
    
     del lst[::2]
     print(lst)
    # 注意点 del res 删除这个res变量,res这个变量是独立出来的,跟以前的列表没关系;
    res = lst[0]
    del res
    print(lst)
    
    # 语法:  del 列表中的具体的值
    
    # 把11 改成13
    tup = (1,2,3,4,5,[7,8,9,[10,11,12]])
    tup[-1][-1][-2] = 13
    print(tup)
    

    列表相关的函数 列表.函数()

    1.append  向列表的末尾添加新的元素()
    lst = ["燕青","戴宗","刘唐","李逵"]
    lst.append("杨志")
    print(lst)
    
    2.insert  在指定索引之前插入元素
    lst = ["燕青","戴宗","刘唐","李逵"]
    lst.insert(2,"杨志")
    print(lst)
    
    3.extend  迭代追加所有元素
    lst = ["燕青","戴宗","刘唐","李逵"]
    lst.insert(2,"杨志")
    lst.extend("abc")
    lst.extend([1,2,3])
    print(lst)
    
    lst = ["燕青","戴宗","刘唐","李逵"]
    1.pop  通过指定索引删除元素,若没有索引移除最后那个 (推荐)
    # (1) 指定索引值
    res = lst.pop(2)
    print(lst,res)
    
    # (2) 不指定下标,默认删除最后一个
    res = lst.pop()
    print(res)
    print(lst)
    
    2.remove  通过给予的值来删除,如果多个相同元素,默认删除第一个
    res = lst.remove("刘唐")
    print(lst,res)
    # print(res) None
    
    3.clear 清空列表
    lst = ["燕青","戴宗","刘唐","李逵"]
    lst.clear()
    print(lst)
    

    其他操作

    1.index 获取某个值在列表中的索引列表.index(值[,start][,end])
    
    lst = ['宋江', '卢俊义', '吴用', '公孙胜', '关胜', '林冲', '鲁智深', '武松', '史进']
    res = lst.index("吴用")
    print(res)
    
    #res = lst.index("吴用",3) 如果这个值不存在,直接报错
    #print(res)
    
    #res = lst.index("吴用",3,5) # 3 4 如果这个值不存在,直接报错
    #print(res)
    
    2.count  计算某个元素出现的次数
    lst = ['宋江', '卢俊义', '吴用', '公孙胜', '关胜', '林冲', '鲁智深', '武松', '史进']
    res = lst.count("卢俊义")
    print(res)
    
    3.sort 列表排序(默认小到大排序)
    lst = [1,2,3,-90,-9,78,3]
    lst.sort()
    print(lst)
    """
    对字母排序 , 按照ascii 编码的大小,默认从小到大排序
    一位一位的比较,如果第一位相同,在比较第二位,以此类推...
    """
    lst = ["oneal","kobe","james","mcGrady","jordon"]
    lst.sort()
    print(lst)
    # 中文可以排序,但是无规律可循;
    lst = ["我","喜欢","吃"]
    lst.sort()
    print(lst)
    
    lst = [90,100,1,2,3]
    # 从大到小排序 指定reverse = True 默认reverse=False
    lst.sort(reverse=True)
    print(lst)
    
    4.reverse 列表反转操作
    lst = [1,2,3,-90,-9,78,3]
    lst.reverse()
    print(lst)
    

    tuple 元组中的函数只有 count index 跟列表中的方法 一模一样

  • 相关阅读:
    字符数组+数组复习
    C语言博客作业05-指针
    C语言博客作业04 数组
    C语言博客作业03 函数
    Java与C# socket通信
    JDBC复制数据库(sqlite)
    mysql Connector/net不能更新或删除(转载)
    MATLAB回归、插值、逼近、拟合【转载】
    前端请求RestController发送数据方法汇总
    elementUI el-input 输入框 设置高度和宽度
  • 原文地址:https://www.cnblogs.com/CrownYP/p/11342938.html
Copyright © 2011-2022 走看看