• python列表的常用操作


    列表是python的基础数据类型之一 ,其他编程语言也有类似的数据类型.比如JS中的数 组, java中的数组等等. 它是以[ ]括起来, 每个元素用' , '隔开而且可以存放各种数据类型: 列表是python中的基础数据类型之一,其他语言中也有类似于列表的数据类

    型,比如js中叫数组,他是以[]括起来,每个元素以逗号隔开,而且他里面可以存放各种数据类型比如:

    li = [‘alex’,123,Ture,(1,2,3,’wusir’),[1,2,3,’小明’,],{‘name’:’alex’}]

    列表相比于字符串,不仅可以储存不同的数据类型,而且可以储存大量数据,32位python的限制是 536870912 个元素,64位python的限制是 1152921504606846975 个元素。而且列表是有序的,有索引值,可切片,方便取值。

    1.列表的创建

     1 # 创建一个列表有三种方式:
     2 
     3 # 方式一:(常用)
     4 l1 = [1, 2, '太白']
     5 
     6 # 方式二:(不常用)
     7 l1 = list()  # 空列表
     8 # l1 = list(iterable)  # 可迭代对象
     9 l1 = list('123')
    10 print(l1)  # ['1', '2', '3']
    11 
    12 # 方式三:列表推导式
    13 l1 = [i for i in range(1,5)]
    14 print(l1)  # [1, 2, 3, 4]

    2.列表的索引切片

    1 l1 = ['a', 'b', '太白', 3, 666]
    2 print(l1[0])  # 'a'
    3 print(l1[-1])  # 666
    4 print(l1[1:3])  # ['b', '太白']
    5 print(l1[:-1])  # ['a', 'b', '太白', 3]
    6 print(l1[::2])  # ['a', '太白', 666]
    7 print(l1[::-1])  # [666, 3, '太白', 'b', 'a']
    li = [1, 3, 2, "a", 4, "b", 5,"c"]
    通过对li列表的切片形成新的列表l1,l1 = [1,3,2]
    通过对li列表的切片形成新的列表l2,l2 = ["a",4,"b"]
    通过对li列表的切片形成新的列表l4,l4 = [3,"a","b"]
    通过对li列表的切片形成新的列表l6,l6 = ["b","a",3]
    练习题

    3.增  append();insert();extend()

    # append 追加,给列表的最后面追加一个元素
    l = [1, 2, 'a']
    l.append(666)
    print(l) # [1, 2, 'a', 666]
    
    # insert  插入在列表的任意位置插入元素
    l = [1, 2, 'a']
    l.insert(1,'太白')
    print(l) # [1, '太白', 2, 'a']
    
    # extend  迭代着追加,在列表的最后面迭代着追加一组数据
    l = [1, 2, 'a']
    l.extend('太白a')
    print(l)
    
    列表的增

    4.删  pop(index) , remove(value) , clear() , del

     1 # pop  通过索引删除列表中对应的元素,该方法有返回值,返回值为删除的元素  默认删除最后一个元素
     2 l = ['太白', 'alex', 'WuSir', '女神']
     3 ret = l.pop(1)
     4 print(ret,l) # alex ['太白', 'WuSir', '女神']
     5 
     6 # remove  通过元素删除列表中该元素
     7 l = ['太白', 'alex', 'WuSir', '女神']
     8 l.remove('alex')
     9 print(l) # ['太白', 'WuSir', '女神']
    10 
    11 # clear 清空列表
    12 l = ['太白', 'alex', 'WuSir', '女神']
    13 l.clear()
    14 print(l) # []  
    15 
    16 # del
    17 #按照索引删除该元素
    18 l = ['太白', 'alex', 'WuSir', '女神']
    19 del l[2]
    20 print(l) # ['太白', 'alex', '女神']
    21 
    22 # 切片删除该元素
    23 l = ['太白', 'alex', 'WuSir', '女神']
    24 del l[1:]
    25 print(l) # ['太白']
    26 
    27 # 切片(步长)删除该元素
    28 l = ['太白', 'alex', 'WuSir', '女神']
    29 del l[::2]
    30 print(l) # ['alex', '女神']
    31 
    32 列表的删

    5.改  

    # 按照索引改值
    l = ['太白', 'alex', 'WuSir', '女神']
    l[0] = '男神'
    print(l) # ['男神', 'alex', 'WuSir', '女神']
    
    # 按照切片改值(迭代着增加)
    l = ['太白', 'alex', 'WuSir', '女神']
    l[1:3] = 'abcdefg'
    print(l) # ['太白', 'a', 'b', 'c', 'd', 'e', 'f', 'g', '女神'] 
    
    # 按照切片(步长)改值(必须一一对应)
    l = ['太白', 'alex', 'WuSir', '女神']
    l[::2] = '对应'
    print(l) # ['对', 'alex', '应', '女神']
    
    列表的改

    6.查

    切片去查,或者循环去查。 

    7.公共方法

    len()

    count(value)

    index(value)  列表只有此方法,元素不存在报错

    8.排序  sort()正向排序

    反向排序 sort(reverse = True)

    ps:若一个列表全是字符串,该如何排序?  ----根据字符串首字母在ASCII码中的顺序进行排序。

    9.列表反转 reverse()

    二、列表的嵌套

    li = ['taibai','武藤兰','苑昊',['alex','egon',89],23]
    
    # print(li[1][1])      找 '藤'
    # name = li[0].capitalize()
    # # print(name)
    # li[0] = name
    # li[0] = li[0].capitalize()
    # li[2] = '苑日天' # print(li[2].replace('昊','ritian')) # li[2] = li[2].replace('昊','ritian') # li[3][0] = li[3][0].upper() # print(li)
  • 相关阅读:
    js中(function(){…})()立即执行函数写法理解
    JS 立即执行的函数表达式(function)写法
    javascript中call,apply,bind的用法对比分析
    C++成员函数指针的应用
    typeid详解
    dynamic_cast
    C++标准转换运算符dynamic_cast
    继承的构造函数
    考虑写一个不抛出异常的swap函数
    布隆过滤器(转)
  • 原文地址:https://www.cnblogs.com/RevelationTruth/p/11462104.html
Copyright © 2020-2023  润新知