التعامل مع الصفوف في بايثون والقاموس والمجموعات -الدرس الرابع-

0
3992
الصفوف في بايثون
الصفوف في بايثون

التعامل مع الصفوف في بايثون هو الدرس الحالي و إستكمالاً للدرس السابق التعامل مع القوائم  والذى تعلمنا فيه

  • كيفية إنشاء قائمة (List)
  • الوصول للعناصر داخل القوائم (Lists)
  • التأكد من تواجد عنصر معين داخل القائمة
  • الوصول لقيم القائمة
  • إضافة عناصر جديدة
  • حذف عنصر معين أو جميع عناصر القائمة
  • معرفة عدد عناصر القائمة

فى هذا الدرس أيضاً سوف نستكمل التعامل مع مجموعة من البيانات.

الصفوف في بايثون (tuples in python)

مصفوفة من العناصر ( المرتبة ، لا يمكن تغييرها، تسمح بالقيم المكررة )

كيف نستخدم الصفوف في بايثون (Tuples

عن طريق كتابة العناصر فى الأقواس المستديرة round brackets

("firstTuple=("data1","data2","data3  
(print(firstTuple

طريقة أُخرى لتعريف ال Tuple

(("secondTuple=tuple(("data1","data2","data3  
(print(secondTuple

الوصول للعناصر داخل الصفوف في بايثون

(Tuples)

بما أن الصفوف عناصرها مرتبة فإن الوصول للعناصر مثله مثل القوائم سيتم الوصول إليه عن طريق ترتيب العناصر.

تذكر الترتيب داخل القائمة يبدأ من الصفر.

مثال : الوصول لعنصر data1

("firstTuple=("data1","data2","data3 
([print(firstTuple[0

تغيير العناصر داخل الصفوف في بايثون (Tuples)

بما أننا ذكرنا فى تعريف الصفوف أن قيم الTuple لا يمكن تغييرها لذلك إذا قمنا بكتابة هذا الكود

("firstTuple=("data1","data2","data3  
"firstTuple[0]= "data1 after changed  
([print(firstTuple[0

سيقوم بطباعة هذا الخطأ Error لك لأن الtuple لا يدعم هذه العملية.

TypeError: ‘tuple’ object does not support item assignment

المرور على العناصر داخل الصفوف في بايثون (Tuples)

مثال : طباعة كل العناصر داخل firstTuple !

بعد أن تعرفنا على كيفية الوصول للعناصر داخل الصف (tuple) بإمكاننا الوصول لكل واحد على حدى وطباعته بنفس الطريقة ولكن ماذا إذا لم نكن نعرف عدد العناصر !!

هنا تأتي الفكرة في المرور على العناصر بإستخدام حلقات التكرار (Loops) لتمر على كل العناصر وتقوم بطباعتها (سيتم شرحها بالتفصيل فيما بعد).

("firstTuple=("data1","data2","data3  
:forin firstTuple  
{      
(print(x          
{

تواجد العناصر داخل الصفوف (Tuples)

مثال : تأكد من تواجد “data1” داخل firstTuple التي قمنا بإنشائها فى أول مثال، إن كان موجود قم بطباعة “Yes data1 already in firstTuple” وإن كان غير موجود قم بطباعة “this item is not in firstTuple “.

سنستخدم فى هذا المثال الجمل الشرطية (IF Condition) للتأكد من تواجد العنصر (سيتم شرحها بالتفصيل فيما بعد).

("firstTuple=("data1","data2","data3  
:if"data1" in firstTuple  
{      
("print("Yes data1 already in firstTuple          
{

التعرف على عدد العناصر داخل القوائم (Lists)

فى هذا الدرس أيضاً سوف نستخدم دالة جديدة إسمها (len) تقوم بعدد العناصر داخل الصفوف.

مثال : قم بطباعة عدد العناصر داخل firstTuple .

("firstTuple=("data1","data2","data3  
((print(len(firstTuple

ملحوظة : إذا لم يتم تعريف المصفوفة لا يتم

  • [no_list]
    • حذف عنصر معين
    • تغيير قيمة عنصر معين
    • إضافة عنصر جديد

    [/no_list]

الصفوف في بايثون
الصفوف في بايثون

 المجموعات فى بايثون ( sets in python)

هى مجموعة من العناصر الغير مرتبة ولا تسمح بتكرار القيم .

 إستخدام المجموعات فى بايثون (sets in python)

يمكن تعريف المجموعات Sets من خلال طريقتين الطريقة الأولى

(("seconsSet=set(("data1","data2","data3 
(print(seconsSet

والطريقة الثانية فى تعريف المجموعات فى بايثون (declare sets in python)

{"firstSet={"data1","data2","data3  
(print(firstSet

إضافة عناصر جديدة للمجموعات (Sets)

تذكر لا يمكن إضافة نفس القيم مكررة للمجموعة وإذا تم ذلك سيتم إهمالها.

ولإضافة قيم جديدة عن طريق الدالة () add

{"firstSet={"data1","data2","data3  
(print(firstSet  
("add("data4  
(print(firstSet

ولإضافة أكثر من عنصر فى نفس الوقت يتم إستخدام الدالة () Update

ويتم إضافة قائمة من القيم (List of items) لتضاف إلى المجموعة

{“firstSet={“data1″,”data2”,”data3

(print(firstSet

([“firstSet.update([“data4”,”data5

(print(firstSet

الوصول للعناصر داخل المجموعات (ٍSets)

بما أن العناصر دخلت ال set غير مرتبة لا يمكن الوصول للعناصر إلا من خلال ال loop ولا يمكن طبعاً الوصول لعنصر من خلال ترتيبه فقط من خلال الloop

مثال : طباعة العناصر داخل firstSet

{"firstSet={"data1","data2","data3  
:forin firstSet  
{        
(print(x           
{

التعرف على عدد العناصر داخل القوائم (Lists)

فى هذا الدرس أيضاً سوف نستخدم دالة جديدة إسمها (len) تقوم بعدّ العناصر داخل القوائم.

مثال : قم بطباعة عدد العناصر داخل firstSet .

{"firstSet={"data1","data2","data3
((print(len(firstSet

حذف القيم من المجموعة (Set)

يوجد عدة طرق لحذف القيم من المجموعات (Sets) فى بايثون عن طريق

  • الدالة remove

{"firstSet={"data1","data2","data3  
("firstSet.remove("data1  
(print(firstSet
  • الدالة Discard

تتميز هذه الدالة أنه اذا لم تكن القيمة تتواجد فى الset لن يتسبب فى خطأ error  على عكس remove

{"firstSet={"data1","data2","data3  
("firstSet.discard("data1  
(print(firstSet
  • الدالة ()pop

تقوم بحذف آخر عنصر فى المجموعة set

{"firstSet={"data1","data2","data3  
()firstSet.pop  
(print(firstSet
  • الدالة ()clear

تستخدم لحذف عناصر المجموعة كلها

{"firstSet={"data1","data2","data3  
()firstSet.clear  
(print(firstSet
  • الكلمة المحجوزة Del

حذف المجموعة set نهائياً

{"firstSet={"data1","data2","data3  
del firstSet
الصفوف في بايثون
الصفوف في بايثون

 القاموس فى بايثون (Dictionary in python)

القاموس يحتوي على مجموعة من القيم الغير مرتبة والتى يمكن تعديلها وتتميز بوجود المفتاح (اسم العنصر) وقيمته (key and value) بمعنى

اسم المادة هو بايثون ==<<  وهنا المفتاح هو إسم المادة والقيمة هي بايثون.

 تعريف القاموس Dictionary فى بايثون

 }=firstDictionary 
"Name":"python",  
{"year":"1980"  
(print(firstDictionary

الوصول لقيم القاموس Dictionary  فى بايثون

يتم الوصول للقيم فى القاموس عن طريق المفتاح لعرض القيمة

}=firstDictionary  
"Name":"python",  
{"year":"1980"  
(["print(firstDictionary["Name

ويمكن الوصول لمفاتيح القاموس أيضاً عن طريق الloop

}=firstDictionary  
,"Name":"python"   
{"year":"1980"   
:for in firstDictionary  
}      
(print(x          
{

وللوصول للقيم نفسها من خلال ال loop  من خلال

}=firstDictionary  
,"Name":"python"  
{"year":"1980"  
()for in firstDictionary.values  
{      
(print(x          
{

إضافة قيم في القاموس Dictionary  فى بايثون

ويتم بطريقة مباشرة جداً كما هو موضح فى المثال التالي

}=firstDictionary  
,"Name":"python"  
{"year":"1980"  
"firstDictionary["newKey"]="new value
(print(firstDictionary

لحذف قيم من القاموس Dictionary في بايثون

حذف قيمة لمفتاح معين عن طريق الدالة ()pop

}=firstDictionary  
,"Name":"python"  
{"year":"1980"  
("firstDictionary.pop("Name  
(print(firstDictionary

حذف القيم جميعها داخل القاموس عن طريق الدالة ()clear

}=firstDictionary  
,"Name":"python"  
{"year":"1980"  
()firstDictionary.clear  
(print(firstDictionary

حذف القاموس تماماً  عن طريق الكلمة المحجوزة del

}=firstDictionary  
,"Name":"python"  
{"year":"1980"  
del firstDictionary
الصفوف في بايثون
الصفوف في بايثون

الدرس الخامس

المصادر:

W3School