بازگشت به دوره

آموزش رایگان صفر تا صد پایتون (Python) به زبان ساده

0% تکمیل‌شده
0/0 مرحله
  1. معرفی پایتون
  2. شروع کار با پایتون
  3. دستور زبان پایتون (Python Syntax)
  4. توضیح کامنت‌ها در پایتون
  5. متغیرها در پایتون
  6. نام‌های متغیر در پایتون
  7. معرفی متغیرها در پایتون و اختصاص چندین مقدار به آن‌ها
  8. معرفی متغیرها در خروجی با استفاده از پایتون
  9. متغیرهای سراسری (Global Variables) در پایتون
  10. انواع داده‌ها در پایتون
  11. انواع اعداد در پایتون
  12. تبدیل نوع داده در پایتون (Python Casting)
  13. رشته‌ها در پایتون (Python Strings)
  14. برش دادن رشته‌ها در پایتون (Python - Slicing Strings)
  15. تغییر رشته‌ها در پایتون
  16. ترکیب رشته‌ها در پایتون (String Concatenation)
  17. آشنایی با فرمت‌بندی رشته‌ها در پایتون
  18. کاراکترهای Escape در پایتون
  19. مقدمه‌ای بر بولی‌ها (Booleans) در پایتون
  20. عملگرها در پایتون
  21. لیست‌ها در پایتون
  22. دسترسی به آیتم‌های لیست در پایتون
  23. تغییر مقدار آیتم‌های لیست در پایتون
  24. افزودن آیتم به لیست در پایتون
  25. حذف آیتم‌ها از لیست در پایتون
  26. حلقه زدن در لیست‌ها در پایتون
  27. معرفی List Comprehension در پایتون
  28. مرتب‌سازی لیست‌ها در پایتون
  29. کپی کردن لیست‌ها در پایتون
  30. اتصال (Join) لیست‌ها در پایتون
  31. آشنایی با Tuple در پایتون
  32. دسترسی به آیتم‌های یک Tuple در پایتون
  33. بروزرسانی Tuple در پایتون
  34. باز کردن (Unpacking) Tuple در پایتون
  35. حلقه‌ها در Tupleها در پایتون
  36. آموزش ترکیب و تکرار تاپل‌ها در پایتون (Join Tuples)
  37. مجموعه‌ها (Set) در پایتون
  38. دسترسی به آیتم‌های مجموعه (Set) در پایتون
  39. افزودن آیتم به Set در پایتون
  40. حذف آیتم‌ها از Set در Python
  41. حلقه در مجموعه‌ها (Set) در پایتون
  42. روش‌های ترکیب مجموعه‌ها در پایتون (Join Sets)
  43. دیکشنری‌ها در پایتون
  44. دسترسی به آیتم‌های دیکشنری در پایتون
  45. تغییر مقادیر دیکشنری در پایتون
  46. اضافه کردن آیتم‌ها به دیکشنری در پایتون
  47. حذف آیتم‌ها از دیکشنری در پایتون
  48. استفاده از حلقه‌ها در دیکشنری‌ها در پایتون
  49. کپی کردن دیکشنری در پایتون
  50. دیکشنری‌های تو در تو در پایتون (Nested Dictionaries)
  51. شرط‌ها و دستور If در پایتون
  52. حلقه‌های while در پایتون
  53. حلقه‌های for در پایتون
  54. توابع در پایتون
  55. معرفی فانکشن‌های لامبدا در پایتون
  56. آرایه‌ها (Arrays) در پایتون
  57. کلاس‌ها و اشیا در پایتون
  58. وراثت (Inheritance) در پایتون
  59. ایتریتور (یکی یکی پیش رفتن) در پایتون
  60. چندریختی (Polymorphism) در پایتون
  61. محدوده (Scope) در پایتون
  62. ماژول در پایتون چیست؟
  63. کار با تاریخ در پایتون
  64. ریاضیات در پایتون
  65. JSON در پایتون به زبان ساده
  66. عبارات منظم (RegEx) در پایتون
  67. Python PIP
  68. معرفی Try-Except در پایتون
  69. ورودی کاربر در پایتون
  70. فرمت‌بندی رشته‌ها در پایتون
درس 50 از 70
در حال پیشرفت

دیکشنری‌های تو در تو در پایتون (Nested Dictionaries)

در پایتون، یک دیکشنری (Dictionary) می‌تواند شامل دیکشنری‌های دیگر باشد. به این ساختار، دیکشنری تو در تو (Nested Dictionary) گفته می‌شود.

🎯 مثال: ایجاد یک دیکشنری شامل چند دیکشنری

فرض کنید می‌خواهیم اطلاعات سه کودک را در یک دیکشنری ذخیره کنیم. هر کودک یک دیکشنری جداگانه دارد که شامل نام و سال تولد او است.

🔹 روش اول: ساخت دیکشنری به‌صورت مستقیم

myfamily = {
  "child1": {
    "name": "Emil",
    "year": 2004
  },
  "child2": {
    "name": "Tobias",
    "year": 2007
  },
  "child3": {
    "name": "Linus",
    "year": 2011
  }
}

🔹 روش دوم: ایجاد دیکشنری‌های جداگانه و ترکیب آن‌ها

child1 = {
  "name": "Emil",
  "year": 2004
}
child2 = {
  "name": "Tobias",
  "year": 2007
}
child3 = {
  "name": "Linus",
  "year": 2011
}

myfamily = {
  "child1": child1,
  "child2": child2,
  "child3": child3
}

نتیجه: در هر دو روش، دیکشنری myfamily شامل سه دیکشنری (child1, child2, child3) است.


🎯 دسترسی به مقدارهای دیکشنری تو در تو

برای دسترسی به یک مقدار خاص، باید نام دیکشنری‌های تو در تو را مرحله‌به‌مرحله مشخص کنیم.

🔹 مثال: چاپ نام کودک دوم

print(myfamily["child2"]["name"])

🔹 خروجی:

Tobias

تحلیل:

  • ابتدا myfamily["child2"] را دریافت می‌کنیم که خودش یک دیکشنری است.
  • سپس مقدار name را از این دیکشنری می‌خوانیم.

🔄 پیمایش در دیکشنری‌های تو در تو

گاهی اوقات نیاز داریم که تمام اطلاعات یک دیکشنری تو در تو را بررسی کنیم. برای این کار می‌توانیم از متد ()items استفاده کنیم.

🔹 مثال: نمایش تمام داده‌ها

for key, value in myfamily.items():
print(key)  # نام دیکشنری (مثلاً child1, child2, ...)

for sub_key, sub_value in value.items():
    print(sub_key + ":", sub_value)

🔹 خروجی:

child1
name: Emil
year: 2004
child2
name: Tobias
year: 2007
child3
name: Linus
year: 2011

تحلیل:

  • در حلقه اول، نام دیکشنری‌های داخلی (child1, child2, child3) را دریافت می‌کنیم.
  • در حلقه دوم، کلید (name, year) و مقدار مربوط به هر کودک را چاپ می‌کنیم.

🎯 تمرین 🚀

یک دیکشنری جدید به نام classroom بسازید که شامل سه دیکشنری student1, student2, student3 باشد. هر دانش‌آموز باید دارای name، age و grade باشد. سپس نام دانش‌آموز دوم را چاپ کنید.

🔹 پاسخ خود را در پایتون اجرا کنید و نتیجه را ببینید! 😊


🎉 نتیجه‌گیری

✅ دیکشنری‌های تو در تو به ما کمک می‌کنند داده‌های پیچیده را به شکل سازمان‌یافته ذخیره کنیم.
✅ برای دسترسی به داده‌ها، می‌توانیم از نام دیکشنری‌ها استفاده کنیم.
✅ می‌توانیم با استفاده از حلقه‌ها، تمام اطلاعات دیکشنری را پردازش کنیم.