في( المرة السابقة) تحدثنا بشكل عام عن كيفية التعامل مع ال(Strings) ، وفي الجزء الاول من هذا العدد سوف نتحدث عن طرق التعامل مع ال(Strings) .
(String Methods):
تتمتع البايثون بالكثير من الدوال الجاهزة التي تتيح التعامل بسهولة مع ال(strings) .
(find) دالة
تقوم دالة (find) بإيجاد (substring) معين يقوم المستخدم بادخاله .
وفي حالة ايجاد ال(substring) المطلوب يكون خرج هذه الدالة عبارة عن ال(index) لاول كلمة متوافقة مع الكلمة المراد ايجادها من ناحية اليسار (leftmost index)
>>>’mohamed’.find(‘o’)
1
>>>’ahmed mohamed’.find(‘med’)
2
لاحظ ان الخرج كان عبارة عن ال(index) لاول (‘med’) من ناحية اليسار .
اما في حالة عدم ايجاد ال(string) المطلوب يكون الخرج (-1) .
>>>’ahmed mohamed’.find(‘s’)
-1
(strip) دالة
تقوم دالة (strip) بأزالة الرموز او الحروف الغير مرغوب في ظهورها:
>>>”#$%^CATreloaded@#%”.strip(‘@#$%^’)
‘CATrelaoded’
(translate) دالة
تقوم دالة (translate) بتغيير حرف بحرف آخر.
قبل البدأ في استخدام دالة (translate) يجب استدعاء دالة (maketrans).
>>>from string import maketrans
>>>table=maketrans(‘mo’,’cs’)
>>>”mohamed”.translate(table)
‘cshaced’
(replace)
تقوم دالة (replace) باستبدال (string) بآخر.
>>>”my name is”.replace(‘is’,’tt’)
‘my name tt’
(upper)
تقوم دالة (upper) بتحويل الحروف من (lower case) الى (upper case).
>>>”cat reloaded”.upper()
‘CAT RELOADED’
(lower)
تقوم دالة (lower) بتحويل الحروف من (upper case) الى (lowe case) .
>>>”CATAZINE”.lower()
‘catazine’
chapter (4) “Dictionaries”
ال (dictionary) عبارة عن جدول يحتوي على (items) ، كل (item) منها تتكون من (key : value) . ولشرح طريقة عمل ال(dictionaries) سوف نلقي نظرة صغيرة على ال(lists) مرة اخرى خلال حديثنا .
فمثلا اذا اردت عمل داتابيز صغيرة بالبايثون ، يمكنك عملها بعدة طرق منها استخدام ال(list):
Ex :
>>> names = [‘Alice’, ‘Beth’, ‘Cecil’, ‘Dee-Dee’, ‘Earl’]
>>> numbers = [‘2341’, ‘9102’, ‘3158’, ‘0142’, ‘5551’]
>>> numbers[names.index(‘Cecil’)]
3158
ولكن من الواضح ان هذه الطريقة غير عملية، كما انه من الصعب استخدامها مع زيادة المدخلات ، فمن الصعب تحديد -مثلا- الاسم رقم100 في ال(list) الاولى مع الرقم المقابل له في ال(list) الثانية.
في البايثون هناك ما يقوم لهذه العملية بكل بساطة 🙂 ، يوجد في البايثون ما يسمى بال(Dictionary) .
في المثال الآتي شرح كيفية عمل نفس دليل الهاتف لكن عن طريق ال(Dictionary) .
>>> phonebook = {‘Alice’: ‘2341’, ‘Beth’: ‘9102’, ‘Cecil’: ‘3158’}
>>> phonebook [‘Cecil’]
3158
طريقة عمل ال(Dictionary): –
item —->(‘Alice’: ‘2341’ )
key —->(‘Alice’)
value —->(‘2341’)
ملحوظة : عند استخدام ال(dictionareis) لا يمكنك تكرار ال(key) ولكن يمكن تكرار ال(value) .
في الاصدار القادم باذن الله سوف نستكمل حديثنا عن ال(dictionaries ) وسنتطرق الى اهم الدوال المستخدمة فيها .