Sửa đổi từ điển
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 79 trên 92.
Để thay đổi một giá trị, hãy gán giá trị đó cho khóa bằng dấu ngoặc vuông. Nếu khóa chưa có, cặp khóa và giá trị sẽ được thêm vào cuối từ điển:
var player := {"name": "Mia", "hp": 100}
player["hp"] = 80 # cập nhật giá trị của "hp"
player["level"] = 2 # thêm một cặp mới
print(player)Đầu ra là:
{ "name": "Mia", "hp": 80, "level": 2 }Bạn cũng có thể cập nhật giá trị dựa trên giá trị cũ của nó, chẳng hạn như giá trị của một biến:
player["level"] += 1 # level hiện là 3Để xóa một cặp, hãy gọi erase() với khóa của cặp đó. Hàm trả về true khi khóa được xóa và false khi khóa không tồn tại. Khóa không tồn tại không phải là lỗi:
print(player.erase("hp")) # true
print(player.erase("hp")) # false
print(player) # { "name": "Mia", "level": 3 }erase() không trả về giá trị đã xóa. Nếu cần giá trị đó, hãy đọc nó trước khi xóa khóa.
Thử thách
DễChương trình đọc bốn dòng đầu vào:
- Tên người chơi
- Cấp độ ban đầu (một số nguyên)
- Cấp độ mới (một số nguyên)
- Một cặp mới viết theo dạng
key:value, ví dụguild:Falcons
Từ điển player đã được tạo với "name" và "level". Sau đó:
- Cập nhật
"level"bằng cấp độ mới - Tách đầu vào thứ tư tại
:và thêm cặp đó vào từ điển (giữ nguyên giá trị dưới dạng văn bản) - Lưu giá trị của
"name"vào một biến, sau đó xóa khóa"name"
In tên đã lưu ở dòng đầu tiên và từ điển ở dòng thứ hai. Với các đầu vào Mia, 4, 5 và guild:Falcons, đầu ra là:
Mia
{ "level": 5, "guild": "Falcons" }Tự làm thử
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. Cập nhật level
# 2. Thêm cặp khóa và giá trị từ đầu vào thứ tư
# 3. Lưu name, rồi xóa khóa này
# 4. In ra tên đã lưu và từ điển
pass
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
4Toán tử phần 1
Toán tử số họcPhép chia lấy phần nguyênToán tử moduloPhép tính số học rút gọnÔn tập, phép tính đơn giảnToán tử so sánh7Nhập xuất cơ bản
Đầu raĐầu ra với biếnĐịnh dạng chuỗiĐầu vàoÉp kiểuÔn tập đến 120Ôn tập đúng hay sai10Hàm
Khai báo hàmĐối sốTrả vềKiểu trả vềÔn tập: hàm SigmaÔn tập: hàm kiểm tra hợp lệGiá trị mặc định16Theo dõi chi tiêu hằng ngày
Tổng quan dự ánThoát chương trình5Toán tử phần 2
Toán tử logic phần 1Toán tử logic phần 2Ôn tập: logic đơn giảnToán tử logic phần 3Toán tử ba ngôi8Máy tính chia hóa đơn
Lời chàoNhận đầu vào3Biến, phần 2
Khai báo kiểu dữ liệuSuy luận kiểu dữ liệuHằng sốÔn tập: khởi tạo biếnChuyển đổi kiểu dữ liệu9Vòng lặp
Vòng lặp forVòng lặp whileBreakContinueÔn tập: giai thừaHàm rangeVòng lặp lồng nhauÔn tập: đầu vào động12Mảng cơ bản
Khai báo mảngTruy cập phần tử trong mảngThay đổi mảngPhương thức mảngÔn tập: mảng tíchÔn tập: mảng đảo ngượcMảng định kiểu15Từ điển
Tạo từ điểnTruy cập giá trịSửa đổi từ điểnPhương thức từ điểnLặp qua từ điểnÔn tập: từ điển kho hàngTự luyện tập: Trình biên dịch GDScript online