اكتب دالة باسم findPath تأخذ قاموس متداخل ومفتاح مستهدف، وتُرجع قائمة بالمفاتيح التي تؤدي إلى المفتاح المستهدف. إذا لم يُعثر على المفتاح، أرجع None.

المطلوب:

  • الدالة تأخذ معاملين: nested_dict (قاموس متداخل) و target_key (المفتاح المستهدف)
  • الدالة تبحث في جميع مستويات القاموس
  • إذا وُجد المفتاح، أرجع قائمة بالمفاتيح من الجذر إلى المفتاح المستهدف
  • إذا لم يُعثر على المفتاح، أرجع None
  • استخدم التكرار الذاتي (recursion)

مثال:

findPath({"a": 1}, "a")                                    # ["a"]
findPath({"a": {"b": 2}}, "b")                             # ["a", "b"]
findPath({"a": {"b": {"c": 3}}}, "c")                      # ["a", "b", "c"]
findPath({"a": 1}, "z")                                    # None
findPath({"a": {"b": 1}, "c": {"d": 2}}, "d")              # ["c", "d"]

الناتج (Console)

سيظهر ناتج تنفيذ الكود هنا.