줄리아에서 딕셔너리를 사용하여 여러 키워드 인수를 하나의 변수로 입력하는 법
설명
딕셔너리와 스플랫 오퍼레이터를 이용하면 여러 키워드 인수를 한 번에 함수에 전달할 수 있다.
이런 테크닉은 여러 그림에 같은 옵션을 줘야할 때 유용하다. 만약 모든 그림에 같은 옵션을 넣어야할 경우 함수 defalut를 쓰면 간단하지만, 하나라도 다른 양식으로 그려야할 일이 있다면 default를 쓰는 것이 오히려 더 불편하다.
코드
Dict(:keyward=>value) 형식으로 딕셔너리를 만들고, 함수에 넣을 때 스플랫 오퍼레이터를 사용하면 된다. 이때 반드시 딕셔너리 앞에 세미콜론 ;을 입력해야한다. ;는 키워드 인수와 일반 인수를 구분하는 역할을 한다. 또한 키워드 이름은 반드시 :keyward와 같이 심볼로 입력해야한다.
julia> function test(x; a=1, b=2, c=3)
           println("a+$x=$(a+x)")
           println("b+$x=$(b+x)")
           println("c+$x=$(c+x)")
       end
test (generic function with 1 method)
julia> test(10, a=1, b=2, c=3)
a+10=11
b+10=12
c+10=13
julia> options = Dict(:a=>1, :b=>2, :c=>3)
Dict{Symbol, Int64} with 3 entries:
  :a => 1
  :b => 2
  :c => 3
julia> test(10; options...)
a+10=11
b+10=12
c+10=13
julia> using Plots
julia> kwargs = Dict(:ylims => (-0.5,0.5), :lw => 4, :lc => :red)
Dict{Symbol, Any} with 3 entries:
  :ylims => (-0.5, 0.5)
  :lc    => :red
  :lw    => 4
julia> p₁ = plot(randn(20); kwargs...)
julia> p₂ = plot(randn(20); kwargs...)
julia> p₃ = plot(randn(20))
julia> plot(p₁, p₂, p₃)

환경
- OS: Windows11
- Version: Julia 1.10.0, Plots v1.40.3

 저희들의 저서 「줄리아 프로그래밍」이 2024 세종도서 학술부문에 선정되었습니다!
저희들의 저서 「줄리아 프로그래밍」이 2024 세종도서 학술부문에 선정되었습니다!

