줄리아 컨테이너 내부 원소 타입 체크하는 법

줄리아 컨테이너 내부 원소 타입 체크하는 법

How to Check Type of Element in Container in julia

개요

eltype() 함수를 사용하면 된다. 아마 element type에서 나온 명명일 것이다.

코드

julia> set_primes = Set([2,3,5,7,11,13])
Set{Int64} with 6 elements:
  5
  13
  7
  2
  11
  3

julia> arr_primes = Array([2,3,5,7,11,13])
6-element Vector{Int64}:
  2
  3
  5
  7
 11
 13

위와 같이 $13$ 까지의 소수를 원소로 가지는 두 가지의 컨테이너를 생각해보자. 솔직히 같은 데이터지만 위는 집합이고 아래는 배열이라는 차이만 있다.

julia> typeof(set_primes)
Set{Int64}

julia> eltype(set_primes)
Int64

julia> typeof(arr_primes)
Vector{Int64} (alias for Array{Int64, 1})

julia> eltype(arr_primes)
Int64

이 둘에 typeof()를 취하면 당연하게도 집합인지 배열인지가 구분되나, eltype()은 컨테이너가 무엇이든 내부의 원소가 어떤 타입인지를 리턴해준다.

julia> typeof(1:10)
UnitRange{Int64}

julia> eltype(1:10)
Int64

julia> typeof(1:2:10)
StepRange{Int64, Int64}

julia> eltype(1:2:10)
Int64

위에서 보이는 1:101:2:10의 차이는 지나치다 싶을 정도로 타입에 집착하는 줄리아 프로그래밍의 세계에서 eltype() 어떻게 유용하게 쓰일 수 있는지 보여준다.

환경

  • OS: Windows
  • julia: v1.6.3
댓글