numpy的几种复制拷贝方式以及tensor的求和维度细节问题

复制形式 1:b = a 用等号(=)赋值,内存一样,a变化 ,b也会变化
import numpy as np
a = np.arange(12)
b = a

print(b is a) # 返回 True
b.shape = (3,4)
print (“a.shape=”,a.shape) # a.shape= (3, 4)
print (id(a)) # 2493855732640
print (id(b)) # 2493855732640

复制形式 2:c = a.view()进行复制,a和c的内存位置一样,c的值改变a也会对应改变,但c结构变化,a不会变化
import numpy as np
c = a.view() # 将 a 复制给 c
print(c is a)
print(“c=”,c)

c.shape = (2,6) # 改变 c 的结构为2行6列,看 a 是否会变化
print(“c.shape=”,c.shape)
print (“a.shape=”,a.shape)

c[0,4] = 1234 # 改变 矩阵c 第0行4列的值,看 a 的值是否会变化
print(“c=”,c)
print(“a=”,a)

print (id(a)) # 2493855144416
print (id(b)) # 2493855144416

d = a.copy() ,d和a的内存地址不一样,当 d 数值改变时,a 不会改变
import numpy as np
d = a.copy()
print(d is a) # False

d[0,0] = 9999
print (d)
print (a)

print(id(d)) # 2493855735440
print(id(a)) # 2493855732640

tensor
x.sum(0) = torch.sum(x,0) = torch.sum(x) 按列求和
x.sum(1) = torch.sum(x,1) = torch.sum(x) 按行求和

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值