zoukankan      html  css  js  c++  java
  • Python列表操作总结

    列表

    a_list=[1,2,3,4] 

     

    特点

    有序

    可变

    连续的内存空间,最好从尾部进行元素的增加与删除

     

    列表的创建

    a_list=[1,2,3,4]

    a_list=list((3,5,7,9,11)) 

    a_list=[5 for I in range(10)]

    列表推导式

    [I for I in a_list if i>0]

    list(a)

    转化成列表

    列表元素的增加

    a_list.append(9)

    真正意义上的在列表尾部添加元素,但是+ 是创建新列表

    a_list.insert(3,6)

    把a_list.insert(index,object)

    Insert object before index

    元素插入到指定位置

    a.extend([7,8,9])

    将另一个迭代对象的所有元素添加至该列表对象的尾部

    a=a*3 

    将列表中的所有元素重复了3次,但是这实际上是产出了一个新列表,并使a指向了新的列表

    a[len(a):]=[7]

    使用切片为列表增加元素,切片表示开始的位置为len(a)

    列表元素的删除

    del a[0]  

     

    按照索引删除

    a.pop()

    a.pop(1)

    删除并返回指定位置上的元素,默认为最后一个位置

    a[len(a)-1:]=[]

    使用切片,删除最后一个元素

    a[1:3]=[]

    使用切片,删除1,2 两个元素

    a.remove(7)

    删除首次出现的指定元素

    坑: 删除列表中指定元素的所有重复要从后往前删

    按照值删除

    列表元素的访问

    a[1]

     

    a.index(7)

    获取指定元素首次出现的下标

    b=a[1:10:2]

    使用切片访问元素,切片用在等号右边,返回列表的浅复制

    列表的遍历

    for i in a:

    print(i)

    使用元素直接访问

    for i in range(len(a)):

    print(a[i])

    使用下标访问

    a=[0,1,2]

    for item in enumerate(a):

    print(item)

    (0,0)

    (1,1)

    (2,2)

    枚举列表,返回枚举对象,枚举对象中的每个元素是由下标和元素值组成的元组

    列表元素的修改

    a[2]=3

     

    a[1:3]=[7,7]

    使用切片修改元素

    列表常用操作

    计数

    a.count(7)

    指定元素在列表中出现的次数

    求长度

    len(a)

     

    求最值

    max(a) min(a)

     

    求和

    sum(a)

     

    比较列表大小

    [1,2,3,5]<[1,2,4,] True

    只比第一个不同的元素

    [1,2]<[1,2,3]

    多了一个元素也认为是大

    列表组合

    a=[1,2,3]

    b=[4,5,6]

    list(zip(a,b))

    [(1,4),(2,5),(3,6)]

    将列表或元组对应位置的元素组合成元组,并返回包含这些元组的zip对象,里面是一个个元组

    列表排序

    a.sort()

    原地升序排列

    a.sort(reverse=True)

    原地降序排列

    a.sort(key=lambda x:len(str(x)))

    自定义排序

    sorted(a)

    内置函数排序,返回新列表,不对原列表进行修改

    sorted(a,reverse=True)

    降序排列

  • 相关阅读:
    POJ2253 Frogger
    搜索专题(复习)
    机器学习资料整理
    51nod 1873 初中的算术
    Canny检测理解和Matlab实现
    Floyd+限制路径步数(快速幂优化)
    bitset优化背包问题
    Educational Codeforces Round 44 (Rated for Div. 2)
    BZOJ 3224 SBT 普通平衡树
    本科课程大数据基础
  • 原文地址:https://www.cnblogs.com/unflynaomi/p/6483227.html
Copyright © 2011-2022 走看看