用法:
broadcast(f, As...)
在数组、元组、集合、
和/或标量 Ref
As
上广播函数 f
。
广播将函数 f
应用于容器参数的元素和 As
中的标量本身。通过虚拟重复值,扩展单例和缺失维度以匹配其他参数的范围。默认情况下,只有有限数量的类型被视为标量,包括 Number
s、String
s、Symbol
s、Type
s、Function
s 和一些常见的单例,如
和 missing
.所有其他参数都被迭代或索引到元素中。nothing
生成的容器类型由以下规则建立:
- 如果所有参数都是标量或零维数组,则返回未包装的标量。
- 如果至少一个参数是元组,而所有其他参数都是标量或零维数组,则它返回一个元组。
- 所有其他参数组合默认返回
Array
,但自定义容器类型可以定义自己的实现和 promotion-like 规则来自定义结果,当它们显示为参数时。
广播存在一种特殊语法:f.(args...)
等价于 broadcast(f, args...)
,并且嵌套的 f.(g.(args...))
调用被融合到单个广播循环中。
例子
julia> A = [1, 2, 3, 4, 5]
5-element Vector{Int64}:
1
2
3
4
5
julia> B = [1 2; 3 4; 5 6; 7 8; 9 10]
5×2 Matrix{Int64}:
1 2
3 4
5 6
7 8
9 10
julia> broadcast(+, A, B)
5×2 Matrix{Int64}:
2 3
5 6
8 9
11 12
14 15
julia> parse.(Int, ["1", "2"])
2-element Vector{Int64}:
1
2
julia> abs.((1, -2))
(1, 2)
julia> broadcast(+, 1.0, (0, -2.0))
(1.0, -1.0)
julia> (+).([[0,2], [1,3]], Ref{Vector{Int}}([1,-1]))
2-element Vector{Vector{Int64}}:
[1, 1]
[2, 2]
julia> string.(("one","two","three","four"), ": ", 1:4)
4-element Vector{String}:
"one: 1"
"two: 2"
"three: 3"
"four: 4"
相关用法
- Julia Broadcast.broadcastable用法及代码示例
- Julia Broadcast.broadcast!用法及代码示例
- Julia Broadcast.@__dot__用法及代码示例
- Julia Broadcast.combine_styles用法及代码示例
- Julia Broadcast.result_style用法及代码示例
- Julia Base64.Base64DecodePipe用法及代码示例
- Julia Base64.Base64EncodePipe用法及代码示例
- Julia BitArray方法用法及代码示例
- Julia Base64.base64decode用法及代码示例
- Julia splice!用法及代码示例
- Julia @cfunction用法及代码示例
- Julia LibGit2.count用法及代码示例
- Julia LinearAlgebra.BLAS.dot用法及代码示例
- Julia break用法及代码示例
- Julia sizeof()用法及代码示例
- Julia :<=用法及代码示例
- Julia zero()用法及代码示例
- Julia rem用法及代码示例
- Julia ...用法及代码示例
- Julia setfield()用法及代码示例
- Julia rpad用法及代码示例
- Julia sort用法及代码示例
- Julia tail用法及代码示例
- Julia cis方法用法及代码示例
- Julia SparseArrays.spdiagm用法及代码示例
注:本文由纯净天空筛选整理自julialang.org 大神的英文原创作品 Base.Broadcast.broadcast — Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。