딕셔너리 수정하기
Coddy GDScript 여정의 기초 섹션에 포함된 레슨. 92개 중 79번째.
값을 변경하려면 대괄호를 사용해 해당 키에 값을 할당합니다. 키가 새 키라면 쌍이 딕셔너리 끝에 추가됩니다:
var player := {"name": "Mia", "hp": 100}
player["hp"] = 80 # "hp"의 값을 업데이트합니다
player["level"] = 2 # 새 쌍을 추가합니다
print(player)출력은 다음과 같습니다:
{ "name": "Mia", "hp": 80, "level": 2 }변수처럼 기존 값에서 값을 업데이트할 수도 있습니다.
player["level"] += 1 # level은 이제 3입니다한 쌍을 제거하려면 해당 키를 인수로 erase()를 호출하세요. 키가 제거되면 true를 반환하고, 키가 없으면 false를 반환합니다. 키가 없어도 오류가 발생하지 않습니다:
print(player.erase("hp")) # true
print(player.erase("hp")) # false
print(player) # { "name": "Mia", "level": 3 }erase()는 제거된 값을 반환하지 않습니다. 해당 값이 필요하다면 키를 지우기 전에 읽으세요.
챌린지
쉬움프로그램은 네 줄의 입력을 읽습니다:
- 플레이어 이름
- 시작 레벨(정수)
- 새 레벨(정수)
key:value형식으로 작성된 새 쌍(예:guild:Falcons)
사전 player는 이미 "name"과 "level"로 만들어져 있습니다. 그런 다음:
- 새 레벨로
"level"을 업데이트합니다 - 네 번째 입력을
:에서 분할하고 그 쌍을 사전에 추가합니다(값은 텍스트로 유지합니다) "name"의 값을 변수에 저장한 다음"name"키를 지웁니다
저장된 이름을 첫 번째 줄에, 사전을 두 번째 줄에 출력합니다. 입력이 Mia, 4, 5, guild:Falcons인 경우 출력은 다음과 같습니다:
Mia
{ "level": 5, "guild": "Falcons" }직접 해보기
extends Node
func _ready():
var player_name := OS.read_string_from_stdin()
var level := int(OS.read_string_from_stdin())
var new_level := int(OS.read_string_from_stdin())
var pair := OS.read_string_from_stdin()
var player := {"name": player_name, "level": level}
# 1. 레벨을 업데이트합니다
# 2. 네 번째 입력에서 받은 쌍을 추가합니다
# 3. 이름을 저장한 다음 삭제합니다
# 4. 저장한 이름과 딕셔너리를 출력합니다
pass
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
기초의 모든 레슨
직접 연습해 보세요: 온라인 GDScript 컴파일러