NumPy(十三):数组的复制【.copy()】

import numpy as np

# 数组的复制

ar1 = np.arange(10)
ar2 = ar1
print('ar1 = {0}, ar2 = {1}'.format(ar1, ar2))
print('ar2 is ar1: ', ar2 is ar1)

# 回忆python的赋值逻辑:指向内存中生成的一个值 → 这里ar1和ar2指向同一个值,所以ar1改变,ar2一起改变
ar1[2] = 9
print('ar1 = {0}, ar2 = {1}'.format(ar1, ar2))

print('-' * 100)

# copy方法生成数组及其数据的完整拷贝
ar3 = ar1.copy()
print('ar1 = {0}, ar3 = {1}'.format(ar1, ar3))
print('ar3 is ar1: ', ar3 is ar1)
ar1[0] = 9
print('ar1 = {0}, ar3 = {1}'.format(ar1, ar3))

打印结果:

ar1 = [0 1 2 3 4 5 6 7 8 9], ar2 = [0 1 2 3 4 5 6 7 8 9]
ar2 is ar1:  True
ar1 = [0 1 9 3 4 5 6 7 8 9], ar2 = [0 1 9 3 4 5 6 7 8 9]
----------------------------------------------------------------------------------------------------
ar1 = [0 1 9 3 4 5 6 7 8 9], ar3 = [0 1 9 3 4 5 6 7 8 9]
ar3 is ar1:  False
ar1 = [9 1 9 3 4 5 6 7 8 9], ar3 = [0 1 9 3 4 5 6 7 8 9]

Process finished with exit code 0
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值