تعريفها
تستخدم للحصول على قيمة مفتاح موجود في كائن الـdict
الذي قام باستدعائها, أو لإضافة عنصر جديد فيه مع إرجاع قيمته أيضاً.
مكان الباراميتر key
نمرر مفتاح العنصر الذي إن كان موجوداً في كائن الـdict
سيتم إرجاع قيمته فقط, و إن لم يكن موجوداً سيتم إضافته و إرجاع قيمته.
مكان الباراميتر default
يمكنك تمرير القيمة الإفتراضية التي تريد وضعها للعنصر في حال تم إضافته لأنه إفتراضياً إن تم إضافة عنصر جديد ستكون قيمته None
.
بناؤها
dict.setdefault(key[, default])
باراميترات
- مكان الباراميتر
key
نمرر مفتاح العنصر الذي إن كان موجوداً في كائن الـdict
سيتم إرجاع قيمته فقط, و إن لم يكن موجوداً سيتم إضافته و إرجاع قيمته. - الباراميتر
default
هو باراميتر إختياري, يمكنك أن تمرر مكانه القيمة الإفتراضية التي تريد وضعها للعنصر في حال كان سيتم إضافته.
قيمة الإرجاع
ترجع قيمة المفتاح الذي تم تمريره لها مكان الباراميتر key
.
المثال الأول
# data يتألف من ثلاث عناصر, إسمه dict هنا قمنا بتعريف data = { 1: 'Admin', 2: 'Editor', 3: 'Reader' } # بعدها قمنا بعرضها ,data هنا قمنا بالحصول على قيمة العنصر الذي يملك المفتاح رقم 3 من الكائن print('Returned value:', data.setdefault(3))
سنحصل على النتيجة التالية عند التشغيل.
المثال الثاني
# data يتألف من ثلاث عناصر, إسمه dict هنا قمنا بتعريف data = { 1: 'Admin', 2: 'Editor', 3: 'Reader' } # و من ثم قمنا بعرضها ,data هنا حاولنا الحصول على قيمة العنصر الذي يملك المفتاح رقم 4 من الكائن # None مفتاحه الرقم 4 و قيمته data بما أنه لا يوجد عنصر يملك مفتاح يساوي الرقم 4, سيتم إضافة عنصر جديد على الكائن print('Returned value:', data.setdefault(4)) # data هنا قمنا بعرض جميع العناصر الموجودة في الكائن print('data contains:', data)
سنحصل على النتيجة التالية عند التشغيل.
data contains: {1: 'Admin', 2: 'Editor', 3: 'Reader', 4: None}
المثال الثالث
# data يتألف من ثلاث عناصر, إسمه dict هنا قمنا بتعريف data = { 1: 'Admin', 2: 'Editor', 3: 'Reader' } # و من ثم قمنا بعرضها ,data هنا حاولنا الحصول على قيمة العنصر الذي يملك المفتاح رقم 4 من الكائن # 'Subscriber' مفتاحه الرقم 4 و قيمته النص data بما أنه لا يوجد عنصر يملك مفتاح يساوي الرقم 4, سيتم إضافة عنصر جديد على الكائن print('Returned value:', data.setdefault(4, 'Subscriber')) # data هنا قمنا بعرض جميع العناصر الموجودة في الكائن print('data contains:', data)
سنحصل على النتيجة التالية عند التشغيل.
data contains: {1: 'Admin', 2: 'Editor', 3: 'Reader', 4: 'Subscriber'}