python中的 .ravel() .flatten()

相同点:都是想把多维的数组降为1维。
不同点:numpy.flatten() 返回一份拷贝,对数据更改时不会影响原来的数组,而numpy.ravel() 对数据更改时会影响原来的数组。

代码:

import numpy as np
x = np.array([[1, 3, 4], [2, 3, 5]])
print("x.ravel的输出:", x.ravel())
print("x.flatten的输出:", x.flatten())

x.flatten()[1] =10
print("发生改变时x.ravel的输出:", x)

x.ravel()[1] = 10
print("发生改变时x.flatten的输出:", x)

输出为:

x.ravel的输出 [1 3 4 2 3 5]
x.flatten的输出 [1 3 4 2 3 5]
发生改变时x.ravel的输出 [[1 3 4]
 [2 3 5]]
发生改变时x.flatten的输出 [[ 1 10  4]
 [ 2  3  5]]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值