zoukankan      html  css  js  c++  java
  • python中list的运算,操作及实例

      在操作list的时候,经常用到对列表的操作运算,比如说,列表添加,删除操作,其实,这里面经常回遇到这样一个问题,就是列表的操作容易被混淆了。

    有人做了一个总结,这个很清晰,我就不多做阐述了:

    1.append()  向列表尾部追加一个新元素,列表只占一个索引位,在原有列表上增加
    2.extend() 向列表尾部追加一个列表,将列表中的每个元素都追加进来,在原有列表上增加
    3.+  直接用+号看上去与用extend()一样的效果,但是实际上是生成了一个新的列表存这两个列表的和,只能用在两个列表相加上
    4.+= 效果与extend()一样,向原列表追加一个新元素,在原有列表上增加
      这里面还有一个问题,就是怎么对list进行加减的操作,很多人都容易把+ -号直接用到加减运算,这样很容易出错。其实,加减的有另外的操作方法:
    我写了一个例子,能够清晰的解释了几个的差别和异同,如下所示:
     1 import numpy as np
     2 
     3 left = []
     4 right = []
     5 
     6 data1 = [12,12,12,12,12,12,12]
     7 data2 = [12,12,12,12,12,12,12]
     8 data3 = []
     9 for item in data1:
    10     left.append(item)
    11 
    12 for item1 in data2:
    13     right.append(item1)
    14 
    15 aleft = np.array(left)
    16 bleft = np.array(right)
    17 
    18 cleft = aleft - bleft
    19 dleft = aleft + bleft
    20 print("list a sub list b:")
    21 print(cleft)
    22 print("list a add list b:")
    23 print(dleft)
    24 print("list a append list b:")
    25 cleft = data1 + data2
    26 data1.append(data2)
    27 print(cleft)
    28 print(data1)
    29 print("list a extend list b:")
    30 data3.extend(data2)
    31 print(data3)

      运行结果:

    list a sub list b:
    [0 0 0 0 0 0 0]
    list a add list b:
    [24 24 24 24 24 24 24]
    list a append list b:
    [12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12]
    [12, 12, 12, 12, 12, 12, 12, [12, 12, 12, 12, 12, 12, 12]]
    list a extend list b:
    [12, 12, 12, 12, 12, 12, 12]
  • 相关阅读:
    堆排序
    cocos2d-x -------之笔记篇 动画的实现
    cocos2d-x -------之笔记篇 3D动作说明
    Cocos2d-x 学习之路------(CCCallfunc 系列)
    cocos2d-x -------之笔记篇 环境的安装
    poj 1141 Brackets Sequence(区间DP)
    1051 接龙游戏
    1229 数字游戏
    java反射机制(笔记)
    Linux中搭建FTP服务器
  • 原文地址:https://www.cnblogs.com/dylancao/p/11649579.html
Copyright © 2011-2022 走看看