الكلاس set في بايثون | Python set


›مفهوم الكلاس set في بايثون›حذف الـ set بواسطة الجملة d

›مفهوم الكلاس set في بايثون›حذف الـ set بواسطة الجملة del في بايثون›التشييك على قيم الـ ">set بواسطة العامل in في بايثون›دوال الكلاس set في بايثون›دوال جاهزة في بايثون للتعامل مع الـ set


مفهوم الكلاس set في بايثون


الـ set عبارة عن مصفوفة ليس لها حجم ثابت, يمكنها تخزين قيم من مختلف الأنواع في وقت واحد, و لا يمكن تبديل أو حذف قيمها بشكل مباشر.

كما أنه لا يمكنها أن تحتوي على قيم مكررة. أي إذا وضعت فيها نفس القيمة مرتين فإنه سيتم تخزين قيمة واحدة فيها و ليس قيمتين.


النوع set لا يحافظ على الترتيب الذي تم فيه إدخال العناصر لأنه لا يضيف رقم Index لكل عنصر كما يفعل النوع list و النوع tuple.

لذلك لا تستغرب إذا قمت بتخزين مجموعة قيم بداخل set ثم حاولت عرضها. لأنك في كل مرة ستقوم فيها بتشغيل البرنامج من جديد ستتبدل أماكن القيم.



طريقة تعريف set


لتعريف set نستخدم الرمز { }.

بداخل هذا الرمز يمكنك تمرير القيم بشكل مباشر له بشرط وضع فاصلة بين كل عنصرين.



في المثال التالي قمنا بتعريف set وضعنا فيه أعداد صحيحة.


المثال الأولTest.py


numbers = {10, 20, 30, 40, 50} # يحتوي على أعداد صحيحة فقط numbers إسمه set هنا قمنا بتعريف print(numbers) # ( أي كما قمنا بتعريفه ) كما هو numbers هنا قمنا بعرض محتوى الكائن


•سنحصل على نتيجة تشبه النتيجة التالية عند التشغيل لأننا لا نعرف كيف سيتم ترتيب العناصر.


{40, 10, 50, 20, 30}




في المثال التالي قمنا بتعريف set وضعنا فيه نصوص.


المثال الثانيTest.py


names = {'Rami', 'Sara', 'Nada'} # يحتوي على نصوص فقط names إسمه set هنا قمنا بتعريف print(names) # ( أي كما قمنا بتعريفه ) كما هو names هنا قمنا بعرض ما يحتويه الكائن


•سنحصل على نتيجة تشبه النتيجة التالية عند التشغيل لأننا لا نعرف كيف سيتم ترتيب العناصر.


{'Sara', 'Rami', 'Nada'}




في المثال التالي قمنا بتعريف set وضعنا فيه أعداد صحيحة و نصوص.


المثال الثالثTest.py


data = {1, 'Mhamad', 'Harmush', 1500} # يحتوي على أعداد صحيحة و نصوص data إسمه set هنا قمنا بتعريف print(data) # ( أي كما قمنا بتعريفه ) كما هو data هنا قمنا بعرض ما يحتويه الكائن


•سنحصل على نتيجة تشبه النتيجة التالية عند التشغيل لأننا لا نعرف كيف سيتم ترتيب العناصر.


{'Harmush', 1, 1500, 'Mhamad'}




في المثال التالي قمنا بتعريف set وضعنا فيه نصوص و قمنا بتكرار هذه النصوص عن قصد لإثبات فكرة أن النوع set لا يقوم بتخزين نفس القيمة أكثر من مرة.


المثال الرابعTest.py


# يحتوي على نصوص و لاحظ أننا قمنا بتكرار بعض القيم names إسمه set هنا قمنا بتعريف names = {'Rami', 'Rami', 'Rami', 'Nada', 'Nada', 'Ahmad'} # ( أي كما قمنا بتعريفه ) كما هو. لاحظ أنه لا يحتوي على قيم مكررة names هنا قمنا بعرض ما يحتويه الكائن print(names)


•سنحصل على نتيجة تشبه النتيجة التالية عند التشغيل لأننا لا نعرف كيف سيتم ترتيب العناصر.


{'Ahmad', 'Rami', 'Nada'}


حذف الـ set بواسطة الجملة del في بايثون


الجملة del تستخدم لحذف الـ set كما هي من الذاكرة.



في المثال التالي قمنا بتعريف set وضعنا فيه أرقام. بعدها قمنا بحذفه من الذاكرة. بعدها حاولنا أن نعرض ما يحتويه.


مثالTest.py


# وضعنا فيه أعداد صحيحة arr إسمه set هنا قمنا بتعريف arr = {


el في بايثون›التشييك على قيم الـ ">set بواسطة العامل in في بايثون›دوال الكلاس set في بايثون›دوال جاهزة في بايثون للتعامل مع الـ set


صدام العويري أكتوبر 28, 2020


مفهوم الكلاس set في بايثون


الـ set عبارة عن مصفوفة ليس لها حجم ثابت, يمكنها تخزين قيم من مختلف الأنواع في وقت واحد, و لا يمكن تبديل أو حذف قيمها بشكل مباشر.

كما أنه لا يمكنها أن تحتوي على قيم مكررة. أي إذا وضعت فيها نفس القيمة مرتين فإنه سيتم تخزين قيمة واحدة فيها و ليس قيمتين.


النوع set لا يحافظ على الترتيب الذي تم فيه إدخال العناصر لأنه لا يضيف رقم Index لكل عنصر كما يفعل النوع list و النوع tuple.

لذلك لا تستغرب إذا قمت بتخزين مجموعة قيم بداخل set ثم حاولت عرضها. لأنك في كل مرة ستقوم فيها بتشغيل البرنامج من جديد ستتبدل أماكن القيم.



طريقة تعريف set


لتعريف set نستخدم الرمز { }.

بداخل هذا الرمز يمكنك تمرير القيم بشكل مباشر له بشرط وضع فاصلة بين كل عنصرين.



في المثال التالي قمنا بتعريف set وضعنا فيه أعداد صحيحة.


المثال الأولTest.py


numbers = {10, 20, 30, 40, 50} # يحتوي على أعداد صحيحة فقط numbers إسمه set هنا قمنا بتعريف print(numbers) # ( أي كما قمنا بتعريفه ) كما هو numbers هنا قمنا بعرض محتوى الكائن


•سنحصل على نتيجة تشبه النتيجة التالية عند التشغيل لأننا لا نعرف كيف سيتم ترتيب العناصر.


{40, 10, 50, 20, 30}




في المثال التالي قمنا بتعريف set وضعنا فيه نصوص.


المثال الثانيTest.py


names = {'Rami', 'Sara', 'Nada'} # يحتوي على نصوص فقط names إسمه set هنا قمنا بتعريف print(names) # ( أي كما قمنا بتعريفه ) كما هو names هنا قمنا بعرض ما يحتويه الكائن


•سنحصل على نتيجة تشبه النتيجة التالية عند التشغيل لأننا لا نعرف كيف سيتم ترتيب العناصر.


{'Sara', 'Rami', 'Nada'}




في المثال التالي قمنا بتعريف set وضعنا فيه أعداد صحيحة و نصوص.


المثال الثالثTest.py


data = {1, 'Mhamad', 'Harmush', 1500} # يحتوي على أعداد صحيحة و نصوص data إسمه set هنا قمنا بتعريف print(data) # ( أي كما قمنا بتعريفه ) كما هو data هنا قمنا بعرض ما يحتويه الكائن


•سنحصل على نتيجة تشبه النتيجة التالية عند التشغيل لأننا لا نعرف كيف سيتم ترتيب العناصر.


{'Harmush', 1, 1500, 'Mhamad'}




في المثال التالي قمنا بتعريف set وضعنا فيه نصوص و قمنا بتكرار هذه النصوص عن قصد لإثبات فكرة أن النوع set لا يقوم بتخزين نفس القيمة أكثر من مرة.


المثال الرابعTest.py


# يحتوي على نصوص و لاحظ أننا قمنا بتكرار بعض القيم names إسمه set هنا قمنا بتعريف names = {'Rami', 'Rami', 'Rami', 'Nada', 'Nada', 'Ahmad'} # ( أي كما قمنا بتعريفه ) كما هو. لاحظ أنه لا يحتوي على قيم مكررة names هنا قمنا بعرض ما يحتويه الكائن print(names)


•سنحصل على نتيجة تشبه النتيجة التالية عند التشغيل لأننا لا نعرف كيف سيتم ترتيب العناصر.


{'Ahmad', 'Rami', 'Nada'}


حذف الـ set بواسطة الجملة del في بايثون


الجملة del تستخدم لحذف الـ set كما هي من الذاكرة.



في المثال التالي قمنا بتعريف set وضعنا فيه أرقام. بعدها قمنا بحذفه من الذاكرة. بعدها حاولنا أن نعرض ما يحتويه.


مثالTest.py


# وضعنا فيه أعداد صحيحة arr إسمه set هنا قمنا بتعريف arr = {


تعليقات