numpy矩阵增加行内存变化

""" 探究numpy矩阵修改、增加行操作后内存变化 """
import sys
import numpy as np

a = np.zeros((1, 6))

b = np.zeros((3, 6))
print(b)
print(id(b))  # 4400701488
print(sys.getsizeof(b))  # 256
b[0][1] = 1
b[0][3] = 2
print(b)
print(id(b))  # 4400701488
print(sys.getsizeof(b))  # 256
# 以上结果表明修改原矩阵数值不会改变内存及大小

b = np.r_[b, a]
print('\n', id(b))  # 4401094528
print(sys.getsizeof(b))  # 304
# 以上变化增加行(本质合并矩阵)改变内存位置 及 大小

print('===============')
aa = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
bb = np.array([[0, 0, 0]])
print('\n', id(aa))  # 4400701488
print(sys.getsizeof(aa))  # 184
aa = np.insert(aa, 0, values=bb, axis=0)

print('\n', id(aa))  # 4418915584
print(sys.getsizeof(aa))  # 208
# 以上部分增加一行空行内存位置 及 大小都改变

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值