logo

ジュリアのネームドタプル 📂ジュリア

ジュリアのネームドタプル

概要

名前付きタプルは、一般的なタプルとは異なり、辞書や構造体のように使用できるタプルだ。シンボルの配列をキーとして持ち、キーを使ってバリューにアクセスしつつ、タプルのようにも使用できる。

コード

x = rand(Bool, 5); y = rand(Bool, 5);

z = (; x, y)
typeof(z)

z.x

上のコードを実行して、名前付きタプルの使用方法を確認してみよう。

julia> z = (; x, y)
(x = Bool[0, 0, 1, 1, 0], y = Bool[1, 1, 0, 0, 0])

julia> typeof(z)
NamedTuple{(:x, :y), Tuple{Vector{Bool}, Vector{Bool}}}

名前付きタプルを簡単に作る方法は、タプルを作りながら開き括弧の直後にセミコロン ; を付けることだ。例えば、(; x)(; x=x) と同じだ。

julia> z.x
5-element Vector{Bool}:
 0
 0
 1
 1
 0

julia> z[2]
5-element Vector{Bool}:
 1
 1
 0
 0
 0

名前付きタプルは、上のように名前のシンボルでアクセスすることも、インデックスでアクセスすることもできる。

環境

  • OS: Windows
  • julia: v1.6.3