حلقه روی کلیدها و مقادیر

حلقه روی کلیدها و مقادیر در پایتون

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

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

پایتون روش‌های مختلفی برای پیمایش دیکشنری ارائه می‌دهد که هر کدام کاربرد خاص خود را دارند:

  1. پیمایش کلیدها: با استفاده از متد keys()
  2. پیمایش مقادیر: با استفاده از متد values()
  3. پیمایش جفت‌های کلید-مقدار: با استفاده از متد items()

مثال‌های کاربردی

بیایید با یک مثال ساده شروع کنیم. فرض کنید دیکشنری زیر را داریم:

روش مثال کد
پیمایش کلیدها
for key in my_dict.keys():
    print(key)
پیمایش مقادیر
for value in my_dict.values():
    print(value)
پیمایش جفت‌ها
for key, value in my_dict.items():
    print(f"{key}: {value}")
نکته مهم: در پایتون 3.x، متدهای keys()، values() و items() view objects برمی‌گردانند که تغییرات دیکشنری اصلی را منعکس می‌کنند.

کاربردهای پیشرفته

در برنامه‌نویسی واقعی، اغلب نیاز داریم عملیات پیچیده‌تری روی دیکشنری‌ها انجام دهیم:

  • فیلتر کردن مقادیر بر اساس شرایط خاص
  • تبدیل دیکشنری به ساختارهای داده دیگر
  • ایجاد دیکشنری‌های تو در تو
  • محاسبات آماری روی مقادیر دیکشنری

برای مثال، می‌توانیم با ترکیب حلقه‌ها و شرط‌ها، دیکشنری را فیلتر کنیم:

filtered_dict = {k:v for k, v in my_dict.items() if v > 50}

برای یادگیری عمیق‌تر این مفاهیم، می‌توانید از آموزش‌های موجود در سایت مکث استفاده کنید.

بهینه‌سازی عملکرد

هنگام کار با دیکشنری‌های بزرگ، رعایت نکات زیر می‌تواند به بهبود عملکرد کمک کند:

نکته توضیح
استفاده از items() برای دسترسی همزمان به کلید و مقدار، بهتر است از items() استفاده شود تا از جستجوی مکرر جلوگیری شود
فهم لیست برای تبدیل دیکشنری‌ها، فهم لیست (List Comprehension) معمولاً کارآمدتر است
استفاده از generators برای دیکشنری‌های بسیار بزرگ، استفاده از generator expressions می‌تواند در مصرف حافظه صرفه‌جویی کند

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