Programming Basics SQL HTML CSS JavaScript Python C++ Java JavaFX Swing Problem Solving English English Conversations Computer Fundamentals Learn Typing

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

تعريفها

تستخدم لإنشاء dict جديد مبني على قيم المصفوفة التي نمررها لها.


بناؤها

dict.fromkeys(seq[, value])
dict.fromkeys(seq[, value])

باراميترات

  • مكان الباراميتر seq نمرر كائن يمثل مصفوفة من أي نوع كان سواء list أو set أو tuple، عناصر هذا الكائن يتم وضعها كمفاتيح في كائن الـ dict الذي سيتم إنشاؤه.
  • value هو باراميتر إختياري، مكانه يمكن تمرير قيمة واحدة ليتم وضعها كقيمة أولية لجميع عناصر كائن الـ dict الذي سيتم إنشاؤه.

في حال لم يتم تمرير قيمة مكان الباراميتر value فستكون جميع قيم عناصره تساوي None.


قيمة الإرجاع

ترجع كائن dict جديد.


المثال الأول

Test.py
# يتألف من 4 عناصر tuple هنا قمنا بتعريف
aTuple = (1, 2, 3, 4)
# جديد مفاتيحه هي القيم الموجودة في الكائن dict هنا قمنا بإنشاء كائن
# None و لم نحدد قيمه الأولية لذلك ستكون جميعها تساوي aTuple
aDict = dict.fromkeys(aTuple)
# aDict هنا قمنا بعرض ما يحتوي الكائن
print(aDict)
# يتألف من 4 عناصر tuple هنا قمنا بتعريف aTuple = (1, 2, 3, 4) # جديد مفاتيحه هي القيم الموجودة في الكائن dict هنا قمنا بإنشاء كائن # None و لم نحدد قيمه الأولية لذلك ستكون جميعها تساوي aTuple aDict = dict.fromkeys(aTuple) # aDict هنا قمنا بعرض ما يحتوي الكائن print(aDict)

النتيجة

{1: None, 2: None, 3: None, 4: None}

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

Test.py
# يتألف من 4 عناصر tuple هنا قمنا بتعريف
aTuple = (1, 2, 3, 4)
# جديد مفاتيحه هي القيم الموجودة في الكائن dict هنا قمنا بإنشاء كائن
# كقيمة أولية في جميع عناصره 'Not Specified' مع تعيين النص aTuple
aDict = dict.fromkeys(aTuple, 'Not Specified')
# aDict هنا قمنا بعرض ما يحتوي الكائن
print(aDict)
# يتألف من 4 عناصر tuple هنا قمنا بتعريف aTuple = (1, 2, 3, 4) # جديد مفاتيحه هي القيم الموجودة في الكائن dict هنا قمنا بإنشاء كائن # كقيمة أولية في جميع عناصره 'Not Specified' مع تعيين النص aTuple aDict = dict.fromkeys(aTuple, 'Not Specified') # aDict هنا قمنا بعرض ما يحتوي الكائن print(aDict)

النتيجة

{1: 'Not Specified', 2: 'Not Specified', 3: 'Not Specified', 4: 'Not Specified'}