بايثون الدالة setdefault()

تعريفها

تستخدم للحصول على قيمة مفتاح موجود في كائن الـdict الذي قام باستدعائها, أو لإضافة عنصر جديد فيه مع إرجاع قيمته أيضاً.
مكان الباراميتر key نمرر مفتاح العنصر الذي إن كان موجوداً في كائن الـdict سيتم إرجاع قيمته فقط, و إن لم يكن موجوداً سيتم إضافته و إرجاع قيمته.
مكان الباراميتر default يمكنك تمرير القيمة الإفتراضية التي تريد وضعها للعنصر في حال تم إضافته لأنه إفتراضياً إن تم إضافة عنصر جديد ستكون قيمته None.



بناؤها

dict.setdefault(key[, default])
	


باراميترات

  • مكان الباراميتر key نمرر مفتاح العنصر الذي إن كان موجوداً في كائن الـdict سيتم إرجاع قيمته فقط, و إن لم يكن موجوداً سيتم إضافته و إرجاع قيمته.
  • الباراميتر default هو باراميتر إختياري, يمكنك أن تمرر مكانه القيمة الإفتراضية التي تريد وضعها للعنصر في حال كان سيتم إضافته.


قيمة الإرجاع

ترجع قيمة المفتاح الذي تم تمريره لها مكان الباراميتر key.


المثال الأول

Test.py
# data يتألف من ثلاث عناصر, إسمه dict هنا قمنا بتعريف
data = {
    1: 'Admin',
    2: 'Editor',
    3: 'Reader'
}

# بعدها قمنا بعرضها ,data هنا قمنا بالحصول على قيمة العنصر الذي يملك المفتاح رقم 3 من الكائن
print('Returned value:', data.setdefault(3))
		

سنحصل على النتيجة التالية عند التشغيل.

Returned value: Reader


المثال الثاني

Test.py
# 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)
		

سنحصل على النتيجة التالية عند التشغيل.

Returned value: None
data contains: {1: 'Admin', 2: 'Editor', 3: 'Reader', 4: None}


المثال الثالث

Test.py
# 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)
		

سنحصل على النتيجة التالية عند التشغيل.

Returned value: Subscriber
data contains: {1: 'Admin', 2: 'Editor', 3: 'Reader', 4: 'Subscriber'}

الدورات

أدوات مساعدة

أقسام الموقع

دورات
مقالات كتب مشاريع أسئلة