~2 min read · Updated Jul 18, 2025

تعریف دیکشنری در پایتون


دیکشنری با آکلاد {} تعریف می‌شود و شامل کلیدهایی یکتا همراه با مقادیر دلخواه است:



my_dict = {"name": "Ali", "age": 25, "is_active": True}
empty_dict = {}
mixed_keys = {1: "one", True: "yes", 3.14: "pi"}

ویژگی‌های کلیدی دیکشنری


  • کلیدها باید از نوع غیرقابل‌تغییر باشند: مانند رشته‌ها، اعداد یا تاپل‌ها
  • مقادیر می‌توانند هر نوع داده باشند: حتی دیکشنری یا لیست
  • کلیدها یکتا هستند: تکرار کلید منجر به بازنویسی مقدار قبلی می‌شود
  • قبل از پایتون ۳.۷ ترتیب نداشتند: از نسخه ۳.۷ به بعد ترتیب درج حفظ می‌شود

دسترسی و اصلاح داده‌ها



person = {"name": "Zara", "city": "Doha"}

print(person["name"])         # 'Zara'
person["age"] = 30            # افزودن کلید جدید
person["city"] = "Dubai"      # تغییر مقدار موجود

متدهای رایج دیکشنری


متدتوضیح
get(key, default)برمی‌گرداند مقدار کلید یا مقدار پیش‌فرض
keys()نمایشی از همهٔ کلیدها
values()نمایشی از همهٔ مقادیر
items()نمایشی از همهٔ جفت‌های کلید-مقدار
update(dict2)به‌روزرسانی با دیکشنری دیگر
pop(key)حذف کلید و بازگرداندن مقدار آن
popitem()حذف و بازگرداندن آخرین جفت واردشده
clear()پاک‌سازی تمام موارد
copy()بازگرداندن نسخهٔ سطحی از دیکشنری

نمونه‌کد استفاده از متدها:



user = {"username": "shahin", "role": "admin"}

print(user.get("email", "not found"))     # 'not found'
print(user.keys())                        # dict_keys(['username', 'role'])
print(user.values())                      # dict_values(['shahin', 'admin'])
user.update({"email": "[email protected]"})
print(user.pop("role"))                   # 'admin'
print(user)                               # {'username': 'shahin', 'email': '[email protected]'}

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


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



data = {
    "user": {"name": "Ali", "age": 27},
    "status": {"online": True, "verified": False}
}

for section, info in data.items():
    print(section, info)

نتیجه‌گیری


دیکشنری‌ها ساختاری ضروری برای نگاشت کلید به مقدار در پایتون هستند. با پشتیبانی از جست‌وجوی سریع، مقادیر منعطف، و مجموعه‌ای غنی از متدها، دیکشنری ابزاری قدرتمند برای مدیریت داده‌های پویا و تودرتو در برنامه‌نویسی پایتون محسوب می‌شود.


Written & researched by Dr. Shahin Siami

Related Articles

آشنایی کامل با دکوریتورها در پایتون – تزئین رفتار توابع با کدهای قابل‌استفاده مجدد

دکوریتورها در پایتون ابزار قدرتمندی برای تغییر یا گسترش رفتار توابع و کلاس‌ها بدون تغییر در کد اصلی آن‌ها هستند. با استفاده از دکوریتورها می‌توان منطق‌هایی مانند لاگ‌گیری، احراز هویت، کش‌کردن، یا بررسی زمان اجرا را به‌صورت تمیز و قابل‌تکرار پیاده‌سازی کرد. این مقاله به بررسی ساختار، نحوه تعریف، کاربردهای رایج و مثال‌های عملی دکوریتورها می‌پردازد.

Continue

آشنایی کامل با کلاس‌ها در پایتون – شی‌گرایی، ساختار، وراثت و کاربردهای عملی

کلاس‌ها در پایتون یکی از پایه‌های برنامه‌نویسی شی‌گرا هستند که امکان تعریف ساختارهای داده‌ای پیچیده، رفتارهای قابل‌تخصیص و کپسوله‌سازی منطق را فراهم می‌کنند. در این مقاله، با مفاهیم پایه‌ای کلاس، سازنده‌ها، متدها، وراثت، کلاس‌های فرزند، و کاربردهای واقعی کلاس‌ها در پروژه‌های پایتونی آشنا می‌شویم.

Continue

چندین نمونه کد

برای درک بهتر زبان پیاتون

Continue

راهنمای جامع دریافت ورودی متنی از کاربر در پایتون

در پایتون، دریافت ورودی از کاربر یکی از ابتدایی‌ترین اما کلیدی‌ترین قابلیت‌ها برای تعامل با کاربران است. این مقاله به بررسی دقیق تابع input()، نحوه تبدیل ورودی به انواع داده‌ای، استفاده در شرط‌ها و حلقه‌ها، و نکات امنیتی و عملی درباره فیلتر کردن و اعتبارسنجی ورودی می‌پردازد. همچنین مثال‌های متنوعی برای کاربردهای واقعی ارائه می‌گردد.

Continue

بررسی کامل تابع در پایتون: ساختار، انواع و کاربردها

comprehensive-guide-python-functiتوابع در پایتون از مهم‌ترین ابزارهای برنامه‌نویسی هستند که کد را ماژولار، قابل استفاده مجدد و خواناتر می‌سازند. این مقاله با معرفی ساختار تعریف تابع، تفاوت بین توابع Built-in و Custom، کاربرد آرگومان‌ها، مقدارهای بازگشتی، و مفاهیم پیشرفته مانند توابع بازگشتی و توابع لامبدا، درک جامعی از توانمندی‌های تابع در پایتون فراهم می‌کند.ons-structure-types-uses-fa

Continue

حلقه‌ها، ایتریتورها و کنترل جریان تکرار در پایتون

در پایتون، حلقه‌ها ابزاری کلیدی برای انجام عملیات تکراری هستند. حلقه‌های for برای تعداد مشخص و while برای تعداد نامشخص استفاده می‌شوند. با معرفی مفهوم ایتریتور، تابع input برای دریافت داده از کاربر، و توابعی مثل enumerate, zip, next, و shuffle، این مقاله درک جامعی از نحوه مدیریت و کنترل جریان تکرار در پایتون ارائه می‌دهد.

Continue