• numpy的array和asarray


    numpy中的array和asarray有细微差别

    如果原始数据是python内置的列表类型,比如list,则使用array和asarray是一样的,都是新开辟了一个空间,比如:

    data3 = [1,2,3]
    test1 = np.array(data3)
    test2 = np.asarray(data3)
    print(data3)
    print(test1)
    print(test2)
    

    输出为:

    在这里插入图片描述
    而如果原始数据就是ndarray型的,那么就有区别了,使用array会开辟一个新空间,而asarray则相当于C语言的指针一样,不创建新的数据对象,而是与原始数据指向同一个值,下面举个栗子

    data4 = np.zeros((3,3))
    test1 = np.array(data4)
    test2 = np.asarray(data4)
    # 注意改了data4的第3行
    data4[2] = 1
    print(data4)
    print(test1)
    print(test2)
    

    输出结果可以看出test2的第三行同样跟着改了

    在这里插入图片描述

  • 相关阅读:
    1219 总结
    1206 冲刺三
    1130 冲刺2
    1128 主页面
    1123 冲刺3
    1121 冲刺2
    1118 冲刺1
    1117 新冲刺
    0622 软件工程总结
    0617 实验四 主存空间的分配和回收
  • 原文地址:https://www.cnblogs.com/yinyoupoet/p/13287399.html
Copyright © 2020-2023  润新知