• 列表的常用操作符和BIF


    一、列表的一些常用操作符

      1.比较操作符

      当列表中有多个元素时,列表间只比较第0个元素。  

    >>> list1 = [1,2]
    >>> list2 = [2,1]
    >>> list1 > list2
    False

      2.逻辑操作符

    >>> list1 = [1,2]
    >>> list2 = [2,1]
    >>> list3 = [1,2]
    >>> (list1 < list2) and (list3 < list2)
    True

      3.连接操作符

      + 在作用于列表时为连接操作符,只能连接相同类型的数据,列表+列表,整型+整型等

    >>> list1 + list2
    [1, 2, 2, 1]

      4.重复操作符

      * 在作用于列表时为重复操作符,能够将列表复制相应次数。

    >>> list1
    [1, 2]
    >>> list1 * 2  #将list1复制了两次
    [1, 2, 1, 2]
    >>> list1 *= 2    #可以结合赋值操作符快速完成赋值
    >>> list1
    [1, 2, 1, 2]
    

      

      5.成员关系操作符

    >>> list1 = [1,2]
    >>> 1 in list1    #利用成员关系操作符in判断某个元素是否在列表中
    True
    >>> 3 in list1
    False
    
    >>> list2 = [[1,2],3,4]
    >>> [1,2] in list2    #in只能判断一个层次的成员关系
    True
    >>> 1 in list2    #如果是列表中的列表的元素,in就没办法判断
    False
    >>> 1 in list2[0]  #指定层级就能正确判断到了
    True

    二、一些列表的BIF(内置函数,也叫列表的方法)

      列表的方法可用 dir(list)查看

      1.count函数,计算参数在列表中出现的次数。

    >>> list4 = [1,2,3,4,4,4,5,5,6,6,6,6]
    >>> list4.count(4)
    3
    

      

      2.index函数,列出参数在列表中的索引值。 

    >>> list4 = [1,2,3,4,4,4,5,5,6,6,6,6]
    >>> list4.index(5)    #如果相同的元素有多个,只列出最早出现的那个元素的索引值
    6 
    
    >>> list4.index(5,7,9)  #index后面还有两个参数用来确定范围,此处表示在第7~9个元素间查找
    7             #在第7~9个元素间,5第一次出现是在索引值7的位置,所以返回7
    

      

      3.reverse函数,将列表翻转。

    >>> list4 = [1,2,3,4,4,4,5,5,6,6,6,6]
    >>> list4.reverse()
    >>> list4
    [6, 6, 6, 6, 5, 5, 4, 4, 4, 3, 2, 1]
    

      

      4.sort函数,用指定的方式给列表的元素排序。

    >>> list5 = [8,2,1,7,6,4,9,3,5]
    >>> list5.sort()  #参数为空时默认升序排列
    >>> list5
    [1, 2, 3, 4, 5, 6, 7, 8, 9]
    
    >>> list5.sort(reverse=True)  #reverse=False即为默认参数,表示升序(不降序)排列,这里把False改为Ttue即为降序排列
    >>> list5
    [9, 8, 7, 6, 5, 4, 3, 2, 1]
    

    TIPS:注意python中赋值符号的意义

    以列表举例

    >>> list6 = [3,1,4,9,5]
    >>> list7 = list6[:]    #利用切片方式取出的数据,相当于原列表完整的复制
    >>> list8 = list6    #用赋值符号,相当于给原变量一个新名称
    >>> list6.sort(reverse=True)
    >>> list6
    [9, 5, 4, 3, 1]
    >>> list7    #当原变量的值发生变化时,复制的变量值不会变化
    [3, 1, 4, 9, 5]
    >>> list8    #新名称指向的值会变化(因为list6和list8实际指向同一个值)
    [9, 5, 4, 3, 1]
    #在编写程序时,要注意这其中的差别

      

      

  • 相关阅读:
    flutter 反序列化
    系统架构师-系统开发基础
    java Lambda表达式
    java异常
    HTTP缓存了解(一)
    设计模式(一):策略模式
    配置自己的ubuntu
    正则表达式:贪婪与非贪婪
    .htaccess文件
    mysql协议简析
  • 原文地址:https://www.cnblogs.com/ginsonwang/p/5100433.html
Copyright © 2020-2023  润新知