11-05-2018, 11:06 PM
# المتتاليات sequences
هي أساسا مجموعة الانواع types التالية: list - tuple - str - bytes لكنها تجمع أنواع أخرى غير هذه.
تعريفها: المتتاليات هي مجموعة محددة ومرتبة من العناصر المؤشرة من صفر الى ن - 1 إذا كان عدد العناصر يساوي ن.
نبدأ بمتتالية تمثل سلسلة نصية str:
كود :
s = 'egg, bacon'
كود :
s[0] # أول عنصر
s[9] # آخر عنصر
كود :
len(s)
كود :
'egg' in s
'egg' not in s
كود :
s + ' and beans'
- تحديد مؤشر اول ظهور لعنصر في المتتالية (تنبيه: index ترجع خطأ اذا لم تجد ما تبحث عنه)
كود :
s.index('g')
s.index('x') # Error !
كود :
s.count('g')
كود :
min(s)
max(s)
كود :
s * 2
'x' * 30
## التقطيع/الشرائح: slicing
هذه العملية هامة جدا ومستخدمة بكثرة في بيثون، وهي ترد الينا متتالية جديدة من نفس النوع (ما يحدث هو عملية نسخ shallow copy). الحد الايسر مضمّن دائما والحد الايمن مستثنى دائما: اقرأها رياضيا هكذا دائما
كود :
s[ a:b [
### أمثلة
كود :
s = 'egg, bacon'
s[0:3]
s[:3]
s[5:10]
s[5:]
s[:]
### مزيد من الامثلة عبر اضافة عدد الخطوات
كود :
s[0:10:2]
s[::2]
s[:8:3]
s[2::3]
s[100:200]
كود :
mlist = [1, 2, 'a', 'bug', 12.5, {'January':31, 'February':28, 'March':31, 'April':30}, ('fname', 'lname', 'ntel'), s, set(s), [c for c in 'Hello']]
mlist
mlist[0:3]
mlist[:3]
mlist[5:10]
mlist[5:]
mlist[:]
كود :
mlist[0:10:2]
mlist[::2]
mlist[:8:3]
mlist[2::3]
mlist[5:100]
### لنتحدث عن المؤشرات السالبة
كود :
s[-10: -7]
(-1 هو آخر عنصر في المتتالية لعرضه نستخدم الطريقة التالية)
كود :
s[-10:]
كود :
s[-len(s):]
s[:len(s)]
s[:-3]
كود :
s[::-1]
s[2:0:-1]
كود :
s[2::-1]