/Python: Part(3)

Python: Part(3)

في المرة الماضية تحدثنا عن المتتاليات في البايثون ، وقمنا باستعراض احد انواع المتتاليات وهو ال(lists)،وفي هذا العدد سنتحدث عن النوع الثاني من المتتاليات في البايثون وهو ال (Tuple) :-

Tuples

تعتبر ال(tuple)هى الوجه الاخر لل (list) باختلاف أساسى وهو أنه لا يمكن التعديل فيها (immutable).

لانشاء(tuple) جديد :

>>> w = (1,2,3)
>>> w
(1, 2, 3)

أو بطريقة اخرى عن طريق استخدام  The tuple Function

>>> tuple([8,4,5])
(8, 4, 5)
>>> tuple(‘CAT’)
(‘C’, ‘A’, ‘T’)

يمكن استخدام ال(Slicing) في تحديد العناصر داخل ال(Tuple)

x=tuple(‘CATreloaded’)
>>>x[4]
‘e’

كما يمكن حساب عدد مرات تكرار عنصر معين في ال(Tuple) :

>>> x.count(‘d’)
2
————————————————————————————————————————————————–

Chapter (3) “ Working With Strings

 

ذكرنا سابفا ان ال(lists) تتميز بسهولة التعديل والتغيير ، لكن الامر يختلف تمام مع الـ(Strings) فهي غير قابلة للتعديل والتغيير ، وبناء على ذلك يصبح الـ(slice assignmentst)  غير مقبول ، مثلا :-

>>> website  = ‘http://www.catreloaded.net’
>>>website[-3:]  = ‘com’
Traceback (most recent call last):
File “<pyshell#19>”, line 1, in ?
Website[-3:] = ‘com’
TryError : object doesn’t sapport slice assignment

وللتغلب على هذه المشكلة نقوم بوضع ال(string) في (list) ثم نقوم بعمل التغيرات المطلوبة

>>>a=’CAT’
>>>a= list(a)
>>>a[3:]=’reloaded’

>>>a

CATreloaded

String Formatting

Strings Substitutions

في بعض الاحيان يتطلب الامر اضافة بعض الرموز او الحروف الى النص :-

مثلا :

>>> a=”Mohamed”
>>> “My named is” + a
‘My name is Mohamed’
 

ولكن بزيادة عدد الرموز المراد دمجها بالنص يصبح الامر اكثر تعقيدا ،ولذلك نستخدم ال (strings substitutions) لتسهيل القيام بهذه العملية وليصبح الكود أكثر قابلية للقراءة والفهم .

>>> format = “Hello, %s. %s enough for you ? “
>>>value = (‘world’,’hot’)
>>>print  format %value

طريقة عمل ال(Strings Substiutions) :

 

اكتب النص بشكل عادي ،.بعد ذلك قم بكتابة (s%) في المكان الذي تريد اضافة  (variable) فيه

لاحظ ان ( s% ) تعني  :

اولا : انك سوف تقوم باضافة (variable) في موضع العلامة (s%) .

ثانيا : حرف الـ(s) بتعني ان ال(variable) اللذي سيتم اضافته هو من نوع (string) ، وذلك يعني انه لا داعي لتحويل ال(variable) الى (string) لانه سيتم تحويله تلقائيا الى (string) .

 بعد ذلك نقوم بكتابة ال(variable) المراد وضعه في النص ونقوم بوضعه داخل (tuple) اذا كان هناك اكثر من (variable) تريد استبداله كما في المثال السابق .

ويكون الخرج بهذه الطريقة :-

Output:
Hello, World. Hot enough for you ?

في المثال السابق استبدلنا اكثر من (variable) في المرة الواحدة ولذلك استخدمنا ال(tuple) ، لكن اذا اردنا استبدال (variable) واحد فقط ؟؟

في هذه الحالة يكون الامر اكثر سهولة .

مثال :

>>> a=” CAT”

>>> “Proud to be a  %s” %a

‘Proud to be a CAT’

 

كما يمكن استخدام ال(String Formatting) لطباعة الارقام بانظمة مختلفة :

مثلا عند طباعة رقم 15 بالنظام السادس عشر يصبح f

>>> “This number is %x” % 15

‘This number is f’

 

يتبع،،،