syntax - 逐元素求和和逐元素乘积之间的差异
问题描述
我对 Julia 很陌生,所以我要问一个非常基本的问题。我理解点 (.) 的逻辑来进行元素操作但是,我对这段非常简单的代码感到困惑
array_try_op = [1, 2, 3, 4]
array_sum2 = array_try_op .+ 2
array_sum2_wrong = array_try_op + 2
array_prod2 = array_try_op .* 2
array_prod2_wrong = array_try_op * 2
确实,当我尝试执行时,array_sum2_wrong = array_try_op + 2
我正确地收到一条错误消息,但相反array_prod2_wrong = array_try_op * 2
不返回任何错误消息,并且实际上返回相同的结果array_prod2 = array_try_op .* 2
为什么会这样?
解决方案
因为按标量缩放是向量空间上定义明确的(也是必需的!)操作,s 被视为。另一方面,向量和标量之间的加法实际上没有意义,除非您想要广播行为——点表示。当然,标量的缩放和广播乘法是一致的。Array
推荐阅读
- javascript - 最初使用 display:none 隐藏后无法渲染天空图像
- css - 在画廊中,如何使我的肖像图像更大以填充整个 div 同时保持居中?
- c# - 任何容器的 AC# 通用函数
- ethereum - 如果私钥泄漏,以太坊如何重新加密敏感数据
- python - 为什么我的正则表达式返回''?
- android - 如何在 React native-IOS 中的 Numeric TextInput 中禁用其他字符输入?
- wordpress - 如何为wordpress中的所有帖子创建一个特定的详细页面?
- apache-nifi - Apache Nifi - ConvertJSONToSQL - JSON 没有所需列的值
- c# - 来自后端的警报
- javascript - 使用 Angular http 服务集成 API 时出错