• python中的数组和列表


    ####转自: 

    #环境win64+anaconda+python3.6

    list & array

    (1)list不具有array的全部属性(如维度、转置等)

    代码1:

     
    #eg1_1
     
    import numpy as np
     
    a = np.array([[1,2,0,1],[1,6,9,55],[7,8,9,5]])#a为数组
     
    print(a.T)
     
     
     
    #Result:
     
    [[ 1  1  7]
     
     [ 2  6  8]
     
     [ 0  9  9]
     
     [ 1 55  5]]
     
     
     
    #eg1_2
     
    a = [[1,2,0,1],[1,6,9,55],[7,8,9,5]] #a为列表
     
    print(a.T)
     
     
     
    #Result:
     
    'list' object has no attribute 'T'

    代码2:

     
    #eg1_3
     
    import numpy as np
     
    a=np.array([[1,2,3],[1,1,4],[1,5,1]])
     
    print(a.shape)
     
     
     
    #Result:
     
    (3, 3)
     
     
     
    #eg1_4
     
    a=[[1,2,3],[1,1,4],[1,5,1]]
     
    print(a.shape)
     
     
     
    #Result
     
    'list' object has no attribute 'shape'

    (顺带一提,如何把一个数组转化为列向量:↓)

     
    import numpy as np
     
    a=np.array([[1,2,3],[1,1,4],[1,5,1]])
     
    a=a.reshape(-1,1)
     
    print(a)
     
     
     
    #Result:
     
    [[1]
     
    [2]
     
    [3]
     
    [1]
     
    [1]
     
    [4]
     
    [1]
     
    [5]
     
    [1]]

    (2)a[:m]的含义,a可以是列表或者数组,但是无论是哪种情况,a[:0]为空

     
    #eg2_1
    import numpy as np
    a=np.array([[4,1,2],
    [7,4,10],
    [12,17,88]])
    #a=np.array([(4,1,2),
    # (7,4,10),
    # (12,17,88)]) 这两个a中[和(不一样,其实它们完全一样
    print(a[:0])
    print(a[:1])
    print(a[:2])
    #Result:
    []
    [[4 1 2]]
    [[ 4 1 2]
    [ 7 4 10]]
    #eg2_1
    a=[(4,1,2),(7,4,10),(12,17,88)]
    print(a[:0])
    print(a[:1])
    print(a[:2])
    #Result:
    []
    [(4, 1, 2)]
    [(4, 1, 2), (7, 4, 10)]

    (3)array和list关于“==”的计算

     
    #eg3_1
     
    import numpy as np
     
    a=np.array(['dog','cat','car'])
     
    b=np.array(['dog','cat','trunk'])
     
    acc = (np.mean(a == b))
     
    print(acc)
     
     
     
    #Result
     
    0.6666666666666666
     
     
     
    #eg3_2
     
    import numpy as np
     
    a=['dog','cat','car']
     
    b=['dog','cat','trunk']
     
    acc = (np.mean(a == b))
     
    print(acc)
     
     
     
    #Result
     
    0.0

    (4)array和list关于“*”的计算

     
    from numpy import *
     
    #a为数组
     
    a=array([[1,2,3],
     
    [4,5,6]])
     
    b=4*a
     
    print(b)
     
     
     
    [[ 4 8 12]
     
    [16 20 24]]
     
     
     
     
     
    from numpy import *
     
    #a为列表
     
    a=([[1,2,3],
     
    [4,5,6]])
     
    b=4*a
     
    print(b)
     
     
     
    [[1, 2, 3], [4, 5, 6], [1, 2, 3], [4, 5, 6], [1, 2, 3], [4, 5, 6], [1, 2, 3], [4, 5, 6]]
  • 相关阅读:
    各种读取速度
    索引倒排
    清空mysql数据
    java随机读取文件
    移动文件
    输出字符串数组
    背包问题
    使用bloomfilter
    使用hash拆分文件
    判断文件的编码格式
  • 原文地址:https://www.cnblogs.com/wangxinyu520/p/10727743.html
Copyright © 2020-2023  润新知