Menu
CoddyTech
flag Ar iconالعربيةdown icon

التكرار عبر القواميس

جزء من قسم الأساسيات في رحلة GDScript على Coddy. الدرس 81 من 92.

تمنحك حلقة for على قاموس مفاتيحه، بالترتيب الذي أُضيفت به الأزواج. استخدم كل مفتاح لقراءة قيمته:

var stock := {"apples": 3, "pears": 5, "plums": 2}
for fruit in stock:
	print(fruit, ": ", stock[fruit])

الناتج هو:

apples: 3
pears: 5
plums: 2

عندما تحتاج إلى القيم فقط، كرّر عبر values(). يجمع هذا التكرار كميات كل الفاكهة:

var total := 0
for amount in stock.values():
	total += amount
print(total) # 10

يمكن للقاموس أيضًا إحصاء الأشياء. لكل كلمة، تُرجع get(word, 0) العدد حتى الآن، أو 0 في المرة الأولى التي تظهر فيها الكلمة:

var counts := {}
for word in ["gold", "gem", "gold"]:
	counts[word] = counts.get(word, 0) + 1
print(counts) # { "gold": 2, "gem": 1 }
challenge icon

التحدي

سهل

يقرأ البرنامج سطرًا واحدًا من الإدخال: الغنائم التي التقطها اللاعب، مفصولة بفواصل، مثل gold,gem,gold.

احسب عدد مرات ظهور كل عنصر في قاموس يُسمّى counts. ثم اطبع كل عنصر وعدد مرات ظهوره بصيغة item: count، كلًّا في سطر، وبالترتيب الذي ظهرت به العناصر لأول مرة.

بالنسبة إلى الإدخال gold,gem,gold,potion,gold، يكون الناتج:

gold: 3
gem: 1
potion: 1

جرّب بنفسك

extends Node

func _ready():
	var loot := OS.read_string_from_stdin().split(",")
	var counts := {}

	# احسب عدد مرات ظهور كل عنصر في counts

	# اطبع كل عنصر وعدد مرات ظهوره
	pass
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس الأساسيات

تدرّب بنفسك: مترجم GDScript عبر الإنترنت