• Python list列表的常用操作方法


    Python list列表的常用操作方法

    本文主要介绍了Python中列表(List)的详解操作方法,包含创建、访问、删除、排序、切片,乘等操作方法 

    1.创建列表:把逗号分隔的不同的数据项使用方括号括起来

      list = [1,2,3,'James','Paul']

      list = [i for i in range(10)]

    2.添加元素:

      list.append() :尾部新增元素

      >>> list = [1,2,3]
      >>> list.append(5)
      >>> list
      [1, 2, 3, 5]
      

         list.insert():插入元素  list.insert(index, object)  参数一:index 位置, 参数二:object

      >>> list = [1,2,3,5]
      >>> list.insert(3,4)
      >>> list
      [1, 2, 3, 4, 5]
     

      list.extend():扩展列表  list.extend(tablelist),左右与 + 类似

      >>> list1 = [1,2,3]
      >>> list2 = ['a','b']
      >>> list1.extend(list2)
      >>> list1
      [1, 2, 3, 'a', 'b']

      

      + 号用于组合列表, list1+list2

      >>> L1 = [1,2,3]
      >>> L2 = ['a', 'b']
      >>> L1+L2
      [1, 2, 3, 'a', 'b']
      

      * 号用于重复列表

      >>> L1 = [1,2,3]
      >>> L1*3
      [1, 2, 3, 1, 2, 3, 1, 2, 3]

    3.访问列表元素

      >>> a = ['a',5,'z']
      >>> a[2]
      'z'

      元素重新赋值:=

      >>>a[2] = 'LL'

      >>>a

       ['a',5,‘LL’]

    4.顺序遍历,迭代:

      for循环

      >>> list = [1,2,3,4,5]

      >>> for i in list:

         print(i)

      使用for循环和enumerate()函数实现,同时输出索引值和元素内容:

      list = ['中国', '美国', '英国', '俄罗斯']

      for index, item in enumerate(list):

        print(index+1, item)

      1 中国
      2 美国
      3 英国
      4 俄罗斯

    5.删除元素:

      list.remove(object):参数object 如有重复元素,只会删除最靠前的
      >>> list = [1,2,'a','b','a']
      >>> list.remove('a')
      >>> list
      [1, 2, 'b', 'a']       # 第一个‘a’被删除,后面的未被移除
      

      list.pop(index): 默认为删除最后一个元素,index -- 可选参数,要移除列表元素的对应索引值,

      >>> list = [1,2,3,4,5]
      >>> list.pop()       # 默认删除最后一个元素
      5
      >>> list
      [1, 2, 3, 4]
      >>> list.pop(1)       # 删除指定索引(index=1)的元素
      2
      >>> list
      [1, 3, 4]
      

      del list[index] :可以删除整个列表或指定元素或者列表切片,list删除后无法访问。

      >>> list
      [1, 3, 4]
      >>> del list[1]
      >>> list
      [1, 4]
      >>> del list
      >>> list
      <class 'list'>

    6.排序和反转:

      list.reverse() :列表元素反转

      >>> list = [1,2,3,4,5]

      >>> list.reverse()

      >>> list [5, 4, 3, 2, 1]

      list.sort():排序,sort有三个默认参数 cmp=None,key=None,reverse=False 因此可以制定排序参数
      >>> a = [1,2,5,6,3]
      >>> a.sort()
      >>> a
      [1, 2, 3, 5, 6]
      python3X中,不能将数字和字符一起排序,会出现此报错
      >>> a = [5,1,'z','h']
      >>> a.sort()
      Traceback (most recent call last):
        File "<stdin>", line 1, in <module>
      TypeError: '<' not supported between instances of 'str' and 'int'

      reverse=False,升序排序(默认);

      reverse=True,降序排序

      >>> a = [1,5,9,10,3]
      >>> a.sort()
      >>> a
      [1, 3, 5, 9, 10]
      >>> a.sort(reverse=True)
      >>> a
      [10, 9, 5, 3, 1]

      

      sorted():sorted(list) 

      >>> A = [1,8,2,5]
      >>> sorted(A)
      [1, 2, 5, 8]
      >>> sorted(A,reverse=True)
      [8, 5, 2, 1]
      >>> A
      [1, 8, 2, 5]
      >>>

      注:sorted()函数与sort()方法有一点不同,sort()会在原list的上重新排列并保存,而sorted()不会改变原列表的顺序,只是生成新的排序列表

    7.列表切片:

      列表的位置,或索引,第一个索引是0,第二个索引是1,反向从-1开始

      L = ['spam', 'Spam',  'SPAM!', 'Sam', 'Paul','Kate']

      操作:

      Python表达式    结果                          描述

      L[2]               'SPAM!'                     读取列表中第三个元素

      L[-2]              'Paul'                         读取列表中倒数第二个元素

      L[1:]              ['Spam',  'SPAM!', 'Sam', 'Paul','Kate']      从第二个元素开始截取列表

      L[1:4:2]         ['Spam', 'Sam']          从第二个元素开始到底到第五个元素,每两个元素选取一个

    8.列表操作常用函数和方法:

      列表操作包含以下函数:

      cmp(list1, list2):比较两个列表的元素 (python3已丢弃)

      len(list):列表中元素个数

      max(list):返回列表元素最大值

      min(list):返回列表元素最小值

      list(seq):将元组转换为列表

      tuple(seq):将列表转换为元祖

      sorted(list):排序列表元素顺序

         列表操作常用操作包含以下方法:

      list.append(obj):在列表末尾添加新的对象

      list.count(obj):统计某个元素在列表中出现的次数

      list.extend(seq):在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)

      list.index(obj):从列表中找出某个值第一个匹配项的索引位置

      list.insert(index, obj):将对象插入列表

      list.pop(obj=list[-1]):移除列表中的一个元素(默认最后一个元素),并且返回该元素的值

      list.remove(obj):移除列表中某个值的第一个匹配项

      list.reverse():反向列表中元素

      list.sort([func]):对原列表进行排序

      list.clear():  清空列表  (python3.0)

  • 相关阅读:
    数据结构——快速排序
    设计模式——代理模式(静态代理和JDK、CGLib动态代理)
    Java多线程系列——信号量:Semaphore
    Java多线程系列——线程阻塞工具类LockSupport
    Java多线程系列——过期的suspend()挂起、resume()继续执行线程
    Java多线程系列——深入重入锁ReentrantLock
    JVM——深入分析对象的内存布局
    【Git】The authenticity of host '192.168.1.1 (192.168.1.1)' can't be established.
    【linux】CentOS: Sudo: unable to initialize policy plugin
    【Git】.git/FETCH_HEAD: Permission denied 的解决方法
  • 原文地址:https://www.cnblogs.com/valorchang/p/11398362.html
Copyright © 2020-2023  润新知