Lookup

Lookup[assoc,key]

連想 assoc 中の key に関連付けられた値を検索する.キーが存在しない場合は,Missing["KeyAbsent",key]が返される.

Lookup[assoc,{key1,key2,}]

keyiに関連付けられた値のリストを与える.

Lookup[{assoc1,assoc2,},key]

associ中の key の値に対応するリストを与える.

Lookup[assoc,key,default]

key が存在しない場合は default を与える.

Lookup[assoc,keys,default,h]

keysに関連付けられた値を,評価前にそれぞれを頭部 h でラップして検索する.

Lookup[key]

式に適用可能なLookupの演算子を表す.

詳細

  • Lookup[assoc,key,default]では,defaultkeyassoc 中にない場合にのみ評価される.
  • LookupAssociationオブジェクトだけでなく規則のリストにも適用することができる.
  • Lookup[assoc,Key[list]]は,リスト list を,キーのリストとしてというよりも単一のキーとして扱う.
  • Lookup[{assoc1,assoc2,},{key1,key2,}]{{assoc1[key1],assoc1[key2],},}の形で配列を与える.
  • Lookup[key][assoc]Lookup[assoc,key]に等しい.

例題

すべて開くすべて閉じる

  (4)

キーに関連付けられた値を検索する:

キーが見付からない場合は,デフォルトでMissingオブジェクトが返される:

キーが見付からない場合に使用するデフォルト値を与える:

Lookupの演算子形を使う:

スコープ  (5)

複数のキーを一度に検索する:

Lookupは連想のリストに縫い込まれる:

複数の連想から複数のキーについてクエリする:

Lookupを使って規則のリスト中のキーが検索できる:

結果をHoldでラップして評価されないようにする:

演算子形をリストのリストに適用する:

アプリケーション  (1)

ThrowおよびReturnのような構造をLookupの第3引数中で使って,必要なキーが存在しない場合に計算を放棄することができる:

特性と関係  (4)

キーがあるときは,デフォルトは評価されない:

結果に複数回現れる場合でも,デフォルト値は1回しか評価されない:

キーに連想を適用するのは,そのキーにLookupを使用するのと等しいことが多い:

しかし,リストの場合はLookupによる扱いは異なる:

Lookupが単一のキーとして扱うように,Keyでリストを囲む:

Lookupは,その第2引数から自動的に1レベルのKeyまで取り除く:

同様に,キーのリストが任意のKeyラッパーを持つ場合は,これが削除される:

このように削除することで,Key[{}]Key[Key[]]という形の式が検索できるようになる:

考えられる問題  (1)

検索するキーがリストや頭部がKeyの式である場合は,曖昧さを避けるためにKeyで包み込まれなければならない:

Wolfram Research (2014), Lookup, Wolfram言語関数, https://reference.wolfram.com/language/ref/Lookup.html (2020年に更新).

テキスト

Wolfram Research (2014), Lookup, Wolfram言語関数, https://reference.wolfram.com/language/ref/Lookup.html (2020年に更新).

CMS

Wolfram Language. 2014. "Lookup." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2020. https://reference.wolfram.com/language/ref/Lookup.html.

APA

Wolfram Language. (2014). Lookup. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/Lookup.html

BibTeX

@misc{reference.wolfram_2024_lookup, author="Wolfram Research", title="{Lookup}", year="2020", howpublished="\url{https://reference.wolfram.com/language/ref/Lookup.html}", note=[Accessed: 17-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_lookup, organization={Wolfram Research}, title={Lookup}, year={2020}, url={https://reference.wolfram.com/language/ref/Lookup.html}, note=[Accessed: 17-November-2024 ]}