Thêm mặt hàng
Thuộc phần Logic và luồng chương trình trong hành trình GDScript của Coddy. Bài học 72 trên 78.
Thử thách
DễThêm lệnh add. Giữ lại mọi thứ bạn đã viết ở bước trước.
Một dòng như add Apple 0.5 100 thêm mặt hàng Apple với giá 0.5 và số lượng tồn kho là 100. Tên mặt hàng gồm một từ.
Đầu tiên, viết hàm add_item(inventory, item, price, stock) phía trên _ready():
- Nếu mặt hàng đã có trong
inventory, in raError: Item 'Apple' already exists.(kèm tên mặt hàng) và không thay đổi gì - Nếu không, lưu
{"price": price, "stock": stock}dưới tên mặt hàng rồi in raItem 'Apple' added successfully.
Sau đó, thêm một nhánh elif cho add trong vòng lặp. Kiểm tra dòng lệnh trước khi gọi hàm:
- Nếu dòng đó không có đúng
4phần, in raError: Use add ITEM PRICE STOCK - Nếu giá không phải là một con số hoặc số lượng tồn kho không phải là số nguyên, in ra
Error: Price and stock must be numeric. - Nếu không, gọi
add_item()với giá đã chuyển đổi sangfloatvà số lượng tồn kho đã chuyển đổi sangint
Với các lệnh add Apple 0.5 100, add Banana 0.2 50, add Apple 0.6 30, show và exit, đầu ra là:
Inventory Management System
Item 'Apple' added successfully.
Item 'Banana' added successfully.
Error: Item 'Apple' already exists.
{ "Apple": { "price": 0.5, "stock": 100 }, "Banana": { "price": 0.2, "stock": 50 } }
Goodbye!Tự làm thử
extends Node
func _ready():
# Biến inventory: tên mặt hàng -> {"price": float, "stock": int}
var inventory := {}
print("Inventory Management System")
while true:
var line := OS.read_string_from_stdin()
var parts := line.split(" ")
var command := parts[0]
if command == "exit":
print("Goodbye!")
break
elif command == "show":
print(inventory)
else:
print("Unknown command")
Tất cả bài học trong Logic và luồng chương trình
1Chuyên sâu về chuỗi
Các phương thức của chuỗiTìm kiếm trong chuỗiThay thế và xóa khoảng trắngTách và nốiÔn tập: Kiểm tra tên người dùng7Kiểu liệt kê
Kiểu liệt kê là gì?Định nghĩa kiểu liệt kêCác giá trị của kiểu liệt kêKiểu liệt kê trong matchÔn tập: đèn giao thông10Hàm nâng cao
Trả về nhiều giá trịHàm lambda phần 1Hàm lambda phần 2Ôn tập: sắp xếp bằng lambdaHàm đệ quy phần 1Hàm đệ quy phần 2Ôn tập: tính tổng mảng lồng nhau13Hệ thống quản lý hàng tồn kho
Tổng quan dự ánThêm mặt hàng2Ra quyết định nâng cao
So khớp với biếnĐiều kiện bảo vệ trong so khớpMẫu mảngMẫu từ điểnKiểm tra thành viênÔn tập: Bộ phân tích lệnh5Ứng dụng sổ liên lạc
Hiển thị menuThêm liên hệ8Trình quản lý hồ sơ học sinh
Tổng quan dự ánThêm học sinh3Mảng nhiều chiều
Cơ bản về mảng 2 chiềuTruy cập phần tử trong mảng 2 chiềuVòng lặp lồng nhau với mảng 2 chiềuÔn tập: mảng 2 chiềuMảng răng cưaCác mẫu phổ biến với mảng 2 chiềuÔn tập: bàn cờ6Tập hợp với từ điển
Tập hợp là gì?Từ điển như một tập hợpThêm và xóaHợp và giaoHiệu tập hợpÔn tập: Xóa phần tử trùng lặp9Tổng hợp dữ liệu nâng cao
Tính tổng các giá trịTìm giá trị nhỏ nhất và lớn nhấtSắp xếp tùy chỉnhÔn tập: Sắp xếp từ điểnTự luyện tập: Trình biên dịch GDScript online