zoukankan      html  css  js  c++  java
  • Python列表操作大全(非常全)

    Python列表操作大全(非常全!!!)

    对于python列表的理解可以和C语言里面的数组进行比较性的记忆与对照,它们比较相似,对于python里面列表的定义可以直接用方括号里加所包含对象的方法,并且python的列表是比较强大的,它包含了很多不同类型的数据:整型数字,浮点型,字符串以及对象等。定义举例如下:

    List1=[1,2,3,”hello world”,”3.1415926”,[1,2,3]]

    对于python列表里元素的操作主要分为以下几个方面:

    1、 向列表里面加元素;

    2、 删减列表中的一些元素;

    3、 获取列表里面的特定元素;

    4、 列表分片;

    5、 常用的列表操作符;

    6、 其他常见列表操作函数

    7、 列表的拷贝

    下面我们来具体讲解一下每一个部分:

    1、 向列表里面加元素:

    向python列表里面添加元素主要有三种方法:

    (1)append()

    append()对于列表的操作主要实现的是在特定的列表最后添加一个元素,并且只能一次添加一个元素,并且只能在列表最后;

    m.append(元素A)

    (2)extend()

            extend()对于列表的操作主要实现的是对于特定列表的扩展和增长,可以一次添加多个元素,不过也只能添加在列表的最后;

            m.extend([元素A,元素B,……])

    (3)insert()

            insert()对于列表的操作主要是在列表的特定位置添加想要添加的特定元素,比较常用,这里的特定位置是指元素所在列表中的位置索引号,需要注意的是这里的索引号都是从0开始的,不是从1开始的,这个大家需要特别注意。

            m.insert(A,元素B):表示在列表m里面的第A+1处加入元素B

    以上的添加功能实现代码与结果如下实例所示:

     

    2、删减列表中的一些元素;

    与之前python列表的添加元素相对,删减列表里面的一些元素也有三种方法:

    (1)m.remove()

    m.remove的作用是移除掉列表m里面的特定元素;

    m.remove(元素A)

    (2)del m[n]

            它的作用是删除掉列表里面的索引号位置为n 的元素,这里需要注意的是del是一种操作语句。

            del m[n]

    (3)m.pop()

            它的作用是将列表m的最后一个元素返回,并且在此基础上进行删除掉

            Temp=m.pop()   %这里temp就会直接等于吗列表里最后一个元素。

            Print(m)       %这里再次输出m的时候已经是删掉最后一个元素的m列表

    以上的三种操作实例及其实现如下代码所示:


    对于列表里元素的特定获取一般直接进行选取就可以,选取的元素用其索引号进行选取,规范实现代码如下所示:

    3、获取列表里面的特定元素

    Temp=m[n]   %获取m列表第n+位置处的元素


    4、列表分片;

    例如以下程序及其实现:

    对于列表分片的含义需要明白,列表分片就是指将列表里面的一些列元素(不仅仅是某一个元素)进行获取或者得到,获取的规则如下所示:

    Temp=m[A:B] %表示将m列表里从索引号位置为A开始的元素到B-1处元素之间的列表获取赋给temp.

    例如以下的代码实现:

     

    5、常用的列表操作符

    1)+:它主要实现的是多个列表之间的拼接
    常见的列表操作符

    2)*:主要实现的是列表的复制和添加

    3)比较>,<:主要进行数据型列表的元素比较

    4)and等:;逻辑运算符,可以进行列表之间的逻辑判断


    具体实例如下所示:

    6、 其他常见列表操作函数:

    1)m.count(A):输出元素A在列表m里面出现的次数

    2)m.index(A):输出元素A在列表m里面的索引位置号

    m.index(A,a,b):对于列表m里面包含多个元素A时,输出在列表m索引号a-b之间的特定索引号

     3)m.reverse():将列表m进行前后的翻转,前变后,后变前

     4)m.sort():将列表m里面地数据进行从小到大的排列

     5)m.sort(reverse=True):将列表m里面地数据进行从大到小的排列

        其实对于列表m里面的元素进行从大到小的排列还可以用以下方法:

      N=m.sort()

      N.reverse()

        以上的操作函数具体实现实例如下所示:

    7、 Python列表的拷贝

    对于python里面如果想要进行列表的复制,具体的操作语句如下:

    1) 深拷贝:

    M=[A,b,a,c]

    N=M[:]

    2) 浅拷贝:

    N=M

    有人说可以直接将M赋值给N也是一样的,虽然表面看起来两者的实现效果是一样的,但是如果你要继续对N进行操作的时候就会出现问题,因为对于正确的第一种拷贝复制,它的作用是将列表M复制下来给N,如果后面对M进行操作,它对于N是完全没有影响的,而我们如果采用赋值的方式,那么在后面对M操作以后就会影响到N,N的值也会随之改变。

        综上所述,第一种python列表的拷贝方法才是真正意义上的深拷贝,而赋值操作只是一种暂时的等量代换,它属于一种浅拷贝

        具体的实现代码和区别如下所示:

  • 相关阅读:
    apt-get connects to web
    Particle Filter(CC) 放狗
    Get a specific pixel coordinates where your mouse on (cc)
    event
    两张图片的平移实验 (SLAM translate epipolar geometry)
    vs2010 LINK : fatal error LNK1123: 转换到 COFF 期间失败:(cc)
    fx and fy in Calibration
    How do I get add-apt-repository to work through a proxy?
    ROS and PCL install
    Longest palindrome subsequence
  • 原文地址:https://www.cnblogs.com/Yanjy-OnlyOne/p/9808130.html
Copyright © 2011-2022 走看看