發電機理解

生成器理解遵循與陣列理解類似的格式,但使用括號 () 而不是方括號 []

(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"