Menu
CoddyTech

値へのアクセス

CoddyのGDScriptジャーニー「基礎」セクションの一部。レッスン 78/92。

値を読み取るには、辞書名の後にキーを角括弧で囲んで指定します。

var player := {"name": "Mia", "hp": 100}
print(player["name"]) # Mia
print(player["hp"]) # 100

キーは大文字も含めて完全に一致している必要があります。"Name" と "name" は異なるキーです。

辞書に存在しないキーを読み取るとエラーになり、プログラムはその行で停止します。

print(player["mana"]) # エラー: キー "mana" は存在しません

キーが存在しない可能性がある場合は、get()を使います。キーの値を返し、キーが存在しない場合は、2つ目の引数として渡したデフォルト値を返します。

print(player.get("hp", 0)) # 100
print(player.get("mana", 0)) # 0

デフォルト値を指定しない場合、get()はキーが存在しないときにnullを返し、print()はそれを<null>として表示します。

challenge icon

チャレンジ

簡単

プログラムは入力を4行読み取ります:

  1. アイテム名
  2. 価格(小数)
  3. 在庫数(整数)
  4. 検索するキー

次のペアを含む、itemという名前の辞書を作成します:

  • "name"にアイテム名を対応付ける
  • "price"に価格を対応付ける
  • "stock"に在庫数を対応付ける

次に、4番目の入力のキーの値を出力します。キーが辞書にない場合は、Not foundを出力します。

入力がPotion、2.5、15、priceの場合、出力は次のとおりです:

2.5

入力がBow、30.75、7、colorの場合、出力は次のとおりです:

Not found

自分で試してみよう

extends Node

func _ready():
	var item_name := OS.read_string_from_stdin()
	var price := float(OS.read_string_from_stdin())
	var stock := int(OS.read_string_from_stdin())
	var key := OS.read_string_from_stdin()

	# ここでアイテムの辞書を作成する

	# key の値、または Not found を出力する
	pass
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン

自分で練習してみよう: GDScriptオンラインコンパイラ