داليتي سكول -

Daliaty School

   صفحة البيت  |

 

 

 

 

 

بايثون – פיתון – python

 

 

 

 

الحلقة التكرارية for و النصوص strings   

 

 

  

 

 

مصطلحات تعلمناها:

Input – (קלט): إِدْخال (البيانات)، مُدْخَل، مُدخلات.

Output – (פלט): إخراج (البيانات)، الإخراج، المخرجات.

Loop – (לולאה)، حلقة تكرارية.

counter – (מונה)، عداد (عداد الحلقة – מונה הלולאה)

Steep – (קפיצה, דילוג) ، قفزة، خطوة.

Range (תחום)، مجال، نطاق. 

 

 

  

 

 

مواد قيد التحرير – (المصدر עמליה אפל)

 

 

  מחרוזת       

 

·       מחרוזת היא אוסף של תווים.

·       למשל שם, משפט ç אוסף אותיות, מספרים או סימנים.

·       לכל איבר במחרוזת מספר המציין את מיקומו במחרוזת,

האיבר הראשון מתחיל באינדקס [מיקום] 0 .

·       הגדרה של מחרוזת נעשית בין שני גרשיים " " או ' '  

 

 

·            

·              

·            

 

 

לולאות ומחרוזות

 

פעולות בלולאה על מחרוזות

 

תכנית המקבל שם ומדפיסה אותו אות, אות.

 

name: amer

a

m

e

r

name = input("name: ")

for letter in name:

  print (letter)

 

הדפסת מחרוזת אות, אות:

str= 'hello world'

for letter in str:

  print (letter)

 

 

  

 

 

שינוי מחרוזת

 

תנאי שידפיס רק את האות l (L קטנה)

 

str= 'hello world'

for letter in str:

  if letter == 'l':

    print (letter)

 

 

במחרוזת שנציג, נחליף את האות 'l' באות 'L'

 

str= 'hello world'

for letter in str:

  if letter == 'l':

    print ('L',end=" ")

  else:

    print (letter)

 

 

·            

·              

·            

 

 

גישה לאיברים במחרוזות

 

[קפיצות : סוף : התחלה] שם מחרוזת

 

הפלט שיוצג:

Happy

9

yppaH

ppy

 

str = "Happy day"

print (str[ :  :  2])

print (len(str))

print (str[ :  :-1])

print (str[ 2 : 5])

 

העתקת מחרוזת הפוך למחרוזת חדשה:

str1 = 'hello world'

print (str1)

str2 = str1[ : :-1]

print (str2)

 

 

  

 

مبنى حلقة for مع النص (string)

 

 

for متغير الحلقة in السلسلة:

 

  جسم الحلقة

 

مثال:

المُخرج (הפלט):

a b c d

s='abcd'

for k in s:

  print (k)

 

توضيح:

متغير الحلقة، k، كل مرة يحصل على قيمة حرف آخر من بين أحرف السلسلة s.

المراحل التي تحدث:

تعويض الـ k=s[0], وعندها يتم تنفيذ جسم الحلقة

تعويض الـ k=s[1], وعندها يتم تنفيذ جسم الحلقة

تعويض الـ k=s[2], وعندها يتم تنفيذ جسم الحلقة

وهكذا...

تعويض الـ k=s[n], وعندها يتم تنفيذ جسم الحلقة (n هو طول السلسلة s)

 

 

 

تمارين – حلقة for - مع النصوص     

 

 

 

  تمارين – في حلقة for - مع النصوص   

 

 

 

سؤال

 

 

معطى الكود التالي:

 

s ='2015'; k = '1'

for c in s:

  k = k + c

print (k)

 

حدد ماذا سيكون المُخرج (הפלט):

أ. 2016      ب. '12015'     ج. '51021'

د. جميع الإجابات غير صحيحة

  

حل تمرين:   ب. '12015' 

 

  

 

 

سؤال 1

 

اكتب برنامج يطبع النص 'abcd' من النهاية للبداية؟

 

الحل:

طريقة أولى:

 

 

        الكود

الفكرة - مبسطة

(A)

word ="abcd"

for c in range(3,-1,-1):

  print (word[c])

 

 

word ="abcd"

print (word[3])

print (word[2])

print (word[1])

print (word[0])

(B)

word ="abcd"

for c in range (1,5):

  print (word[-c])

 

 

word ="abcd"

print (word[-1])

print (word[-2])

print (word[-3])

print (word[-4])

(C)

word ="abcd"

n=len(word)

for c in range(n):

  print (word[(n-1)-c])

 

 

 

طريقة ثانية:

نبني سلسلة جديدة، نقطع كمل مرة حرف ونظيفة للسلسلة الجديدة من اليسار

 

اختر الإجابة الصحيحة:

a)  st=st+k

b)  st=k+st

c)  st=k+st[k]

d)  st=k[0]+st

word = 'abcd'

st=''

for k in word:

  print (k)

  st=______

print (st)

 

الحل   د. 2  1 

 

  

 

 

سؤال 1

 

اكتب برنامج يقوم بتحريك لليسار (הזזה שמאלה) للسلسلة 'abcd'

المُخرج يجب أن يكون 'dabc'

(ارشاد: النتائج الوسطى للسلسلة هي: 'abcd'  è  'bcda'  è  'cdab'  è  'dabe' )

 

الحل

 

اختر الإجابة الصحيحة:

a) st = st[0:] + st[0]

b) st = st[:1] + st[0]

c) st = st[1:] + st[0]

d) st = st[:]  + st[0]

st = 'abcd'

print (st)

print ('-----')

n = len(st)

for i in range(n-1):

  st =_____________________

  print (st)

 

حل تمرين

c) st=st[1:]+st[0]

 

 

  

 

 

سؤال

جد المخرج من الكود التالي؟

 

المُخرج:

one 

two

three

four

five

list1=['one', 'two', 'three', 'four', 'five']

n=len(list1)

for i in range(0, n):

  print (list1[i])

 

 

  

 

 

 

 

 

   

 

 

 

   

 

 

 

Daliaty School – Copywrite  2023

wahbem@gmail.com | https://daliaty.com

 

 

 

 

 

<meta name="viewport" content="width=device-width, initial-scale=1">