Menu
CoddyTech

Truy cập giá trị

Thuộc phần Kiến thức nền tảng trong hành trình GDScript của Coddy. Bài học 78 trên 92.

Để đọc một giá trị, đặt khóa của nó trong dấu ngoặc vuông sau tên từ điển:

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

Khóa phải khớp chính xác, kể cả chữ hoa: "Name" và "name" là hai khóa khác nhau.

Đọc một khóa không có trong từ điển (dictionary) sẽ gây ra lỗi và chương trình dừng tại dòng đó:

print(player["mana"]) # Lỗi: khóa "mana" không tồn tại

Khi một khóa có thể bị thiếu, hãy dùng get(). Hàm này trả về giá trị của khóa hoặc giá trị mặc định mà bạn truyền vào làm đối số thứ hai khi thiếu khóa:

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

Nếu không có giá trị mặc định, get() trả về null khi thiếu khóa, còn print() hiển thị giá trị đó là <null>.

challenge icon

Thử thách

Dễ

Chương trình đọc bốn dòng đầu vào:

  1. Tên một vật phẩm
  2. Giá (một số thập phân)
  3. Số lượng tồn kho (một số nguyên)
  4. Một khóa cần tra cứu

Tạo một từ điển có tên item với các cặp sau:

  • "name" ánh xạ đến tên vật phẩm
  • "price" ánh xạ đến giá
  • "stock" ánh xạ đến số lượng tồn kho

Sau đó, in ra giá trị của khóa trong đầu vào thứ tư. Nếu khóa không có trong từ điển, hãy in Not found.

Với các đầu vào Potion, 2.5, 15 và price, đầu ra là:

2.5

Với các đầu vào Bow, 30.75, 7 và color, đầu ra là:

Not found

Tự làm thử

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()

	# Tạo từ điển (dictionary) cho mặt hàng tại đây

	# In ra giá trị của key hoặc Not found
	pass
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Kiến thức nền tảng

Tự luyện tập: Trình biên dịch GDScript online