發電機理解
生成器理解遵循與陣列理解類似的格式,但使用括號 ()
而不是方括號 []
。
(expression for element = iterable)
這樣的表示式返回一個 Generator
物件。
julia> (x^2 for x = 1:5)
Base.Generator{UnitRange{Int64},##1#2}(#1,1:5)
函式引數
生成器理解可以作為函式的唯一引數提供,而不需要額外的括號集。
julia> join(x^2 for x = 1:5)
"1491625"
但是,如果提供了多個引數,則生成器理解需要其自己的括號集。
julia> join(x^2 for x = 1:5, ", ")
ERROR: syntax: invalid iteration specification
julia> join((x^2 for x = 1:5), ", ")
"1, 4, 9, 16, 25"