LoginSignup
1
0

More than 1 year has passed since last update.

Julia早引きノート[15]辞書(dictionary)

Last updated at Posted at 2020-11-13

辞書(dictionary)(書き方例)

note15
# 初期化
dic = Dict()

# キーと値のペアを登録
dic["name"] = "Donald"
dic["company"] = "ABCD Co.,LTD."

# キーで値を読み取り
dic["name"]

# キーの有無の確認
haskey(dic, "company")


◆初期化のパターン
 # 初期化(キー:文字列型、値:整数型)
 dic1 = Dict{String,Int}()

 # 初期化(キー:文字列型、値:Any型)
 dic2 = Dict{String,Any}()

 # 初期化(キー:Any型、値:Any型)
 dic3 = Dict()


Dictの宣言とともに要素を定義
 data = Dict(
     "name" => "Michel",
     ...
 )


◆その他の関数
 # 空かどうかの判定
 isempty(dic)
 # 要素数取得
 length(dic)
 # 空にする
 empty!(dic)

解説

・キーと値をペアとし、そのペアを格納するコレクションです。値を取り出すにはキーを指定します。
・一つの辞書内でキーの重複は認められません。
・辞書の型はDict{K,V}型です。
・辞書を使用する際は初期化を行います。初期化は例えば以下のように行うことができます。

初期化 初期化の内容
Dict{String,Int}() キーを文字列型、値を整数型にして初期化します。
Dict{String,String}() キー、値とも文字列型で初期化します。
Dict{String,Any}() キーを文字列、値をAny型で初期化します。
Dict() Dict{Any, Any}で初期化することと同じです。キー、値ともAny型です。

・辞書内にキーが存在するかどうかを確認する場合は、haskey()を使用します。
 存在する場合はtrue、しない場合はfalseを返します。
image.png
・初期化と同時に要素を定義することもできます。

◆初期化と同時に要素を定義する

Dict()の宣言とともに、以下のように要素を定義します。

note15
data = Dict(
    "name" => "Michel",
    "age" => 10,
    "school" => "primary school",
    "favorite food" => ["cake", "tomato", "strawberry"]
)

実行例
image.png

◆その他の関数

isempty()
空かどうかを判定します。true/falseを返します。
length()
要素数を取得します。
empty!()
要素を削除し、空にします。

もくじ

Julia早引きノート[01]変数・定数の使い方
Julia早引きノート[02]算術式、演算子
Julia早引きノート[03]複素数
Julia早引きノート[04]正規表現
....

もくじを開く

Julia早引きノート[05]if文
Julia早引きノート[06]ループ処理
Julia早引きノート[07]try, catch, finally
Julia早引きノート[08]変数の型(Int, Float, Bool, Char, String)
Julia早引きノート[09]関数 (1)基本編
Julia早引きノート[10]関数 (2)応用編
Julia早引きノート[11]Nothing型
Julia早引きノート[12]複合型(Composite Type)型
Julia早引きノート[13]タプル
Julia早引きノート[14]リスト(Array型一次元配列)
Julia早引きノート[15]辞書(dictionary)
Julia早引きノート[16]集合
Julia早引きノート[17]多次元配列 (1)初期化
Julia早引きノート[18]多次元配列 (2)様々な演算や関数
Julia早引きノート[19]多次元配列 (3)サブ配列
Julia早引きノート[20]ファイル入出力
Julia早引きノート[21]JSON、XMLファイルの入出力
Julia早引きノート[22]Python関数やPythonモジュールの呼び出し
Julia早引きノート[23]JuliaでのMatplotlibによるグラフ描画
Julia早引きノート[24]CSVFiles(DataFrameとの連携)
Julia早引きノート[25]線形代数演算(ベクトル・行列計算)
(※引き続きコンテンツを増やしていきます)

関連情報

:paperclip: Julia - 公式ページ
https://julialang.org/

:paperclip: Julia - 日本語公式ドキュメント
https://julia-doc-ja.readthedocs.io/ja/latest/index.html

:paperclip: 初めてのJuliaとインストール (Windows & Linux)
https://qiita.com/ttlabo/items/b05bb43d06239f968035

:paperclip: Julia - Mathematics
https://docs.julialang.org/en/v1/base/math/

ご意見など

ご意見、間違い訂正などございましたらお寄せ下さい。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0