python - (Python Numpy)是否存在赋值运算符(例如 *=)有效但长期版本无效的情况?
问题描述
我将两个大小相同的矩阵 A 和 B 相乘,逐元素。当我使用以下代码时,出现“形状未对齐”错误:
A = A*B
但是,以下代码可以正常工作:
A *= B
这些有什么不同吗?是否存在第二个可以工作而第一个不能的情况?我真的很困惑,因为我认为他们做了同样的事情。
解决方案
错误来自 A 是 nd 数组而 B 是“矩阵”类型的事实。
使用:
A = A * np.asarray(B)
转换矩阵工作。
我仍然想知道一个有效而另一个无效的原因!
推荐阅读
- python - 使用 Pandas 数据框的 Haversine 函数
- python - 如何与本地网络中远程 Windows 10 PC 上运行的 Influxdb 交互?
- rust - 如何在结构中分配 impl 特征?
- julia - 在 Julia 中的 real() 函数之后使用 quadgk()
- python - 多个字符串上的 Sequitur
- java - 无法解析符号“游戏面板”
- javascript - 有没有办法检查socketio中不存在房间或命名空间
- python - Python selenium webdriver select href 选择部分文本
- java - 使用 RowCoder 编码 JSON 字符串
- node.js - MongoDB旅游罗宾逊预订模式