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

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

در پایتون، شما می‌توانید دیکشنری‌هایی داشته باشید که شامل دیکشنری‌های دیگر باشند. این نوع ساختار را “دیکشنری تو در تو” می‌نامند.

مثال: ساخت یک دیکشنری که شامل سه دیکشنری دیگر است

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

در این مثال، myfamily یک دیکشنری است که شامل سه دیکشنری دیگر به نام‌های child1، child2 و child3 می‌باشد.

یا، اگر می‌خواهید سه دیکشنری را به یک دیکشنری جدید اضافه کنید:

ابتدا سه دیکشنری جداگانه ایجاد می‌کنید و سپس آن‌ها را در یک دیکشنری دیگر قرار می‌دهید.

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

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

در این مثال، دیکشنری‌های child1، child2 و child3 به دیکشنری myfamily اضافه شده‌اند.

دسترسی به آیتم‌ها در دیکشنری‌های تو در تو

برای دسترسی به آیتم‌های یک دیکشنری تو در تو، باید از نام دیکشنری‌ها استفاده کنید، از دیکشنری بیرونی شروع کرده و به دیکشنری‌های داخلی بروید.

مثال:

چاپ نام child2:

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

در اینجا، ابتدا به myfamily و سپس به child2 و در نهایت به کلید name دسترسی پیدا کرده‌ایم.

حلقه زدن در دیکشنری‌های تو در تو

می‌توانید با استفاده از متد items() در یک دیکشنری تو در تو حلقه بزنید و به کلیدها و مقادیر دیکشنری‌های داخلی دسترسی پیدا کنید.

مثال:

حلقه زدن در کلیدها و مقادیر همه دیکشنری‌های تو در تو:

for x, obj in myfamily.items():
  print(x)
  for y in obj:
    print(y + ':', obj[y])

در این مثال، ابتدا در myfamily حلقه زده و سپس در هر دیکشنری داخلی (child1، child2، child3) حلقه می‌زنیم تا تمام کلیدها و مقادیر را چاپ کنیم.

پست های مرتبط

مطالعه این پست ها رو از دست ندین!
JavaScript - تاریخ‌ها (Dates)

JavaScript – تاریخ‌ها (Dates)

آبجکت‌های تاریخ (Date) در جاوااسکریپت آبجکت‌های تاریخ در جاوااسکریپت به ما امکان کار با تاریخ و زمان را می‌دهند....

بیشتر بخوانید
JavaScript - آرایه‌های ثابت (Array Const)

JavaScript – آرایه‌های ثابت (Array Const)

جاوااسکریپت: تعریف آرایه با const در سال 2015، جاوااسکریپت کلمه کلیدی مهمی به نام const را معرفی کرد. این...

بیشتر بخوانید
JavaScript - تکرار آرایه‌ها (Array Iteration)

JavaScript – تکرار آرایه‌ها (Array Iteration)

جاوا اسکریپت: تکرار بر روی آرایه‌ها جاوا اسکریپت روش‌های مختلفی برای تکرار (Iteration) بر روی آرایه‌ها ارائه می‌دهد که...

بیشتر بخوانید

نظرات

سوالات و نظراتتون رو با ما به اشتراک بذارید

برای ارسال نظر لطفا ابتدا وارد حساب کاربری خود شوید.