תוזורחמ :4 רועישblog.csit.org.il/UpLoad/FilesUpload/1450-3-04.pdfstring גוסמ...

16
שיעור4 : מחרוזות1 ברק גונן

Transcript of תוזורחמ :4 רועישblog.csit.org.il/UpLoad/FilesUpload/1450-3-04.pdfstring גוסמ...

Page 1: תוזורחמ :4 רועישblog.csit.org.il/UpLoad/FilesUpload/1450-3-04.pdfstring גוסמ הנתשמ הליכמש תינכות pycharm ב ובתיכ “Hello, my name is Inigo Montoya”

מחרוזות: 4שיעור

1

ברק גונן

Page 2: תוזורחמ :4 רועישblog.csit.org.il/UpLoad/FilesUpload/1450-3-04.pdfstring גוסמ הנתשמ הליכמש תינכות pycharm ב ובתיכ “Hello, my name is Inigo Montoya”

אוסף של תווים כלשהם: מחרוזת

אפשר להגדיר עם גרש יחיד או גרשיים◦

1מחרוזת באורך -characterתו ◦

2 ברק גונן

Page 3: תוזורחמ :4 רועישblog.csit.org.il/UpLoad/FilesUpload/1450-3-04.pdfstring גוסמ הנתשמ הליכמש תינכות pycharm ב ובתיכ “Hello, my name is Inigo Montoya”

אפשר לחתוך חלקים ממחרוזת באופן הבא:

החיתוך דומה לפונקציהrange אותה

:הכרנו◦Start : (0ברירת מחדל )אינדקס התחלה

◦Stop : ברירת מחדל סוף )אינדקס סיום

(המחרוזת

◦Delta : (1ברירת מחדל )כמה אינדקסים קופצים

האינדקס -אפשר לשים גם ערכים שליליים◦ (אחורה)או קפיצה שלילית , 1-האחרון הוא

3 ברק גונן

Page 4: תוזורחמ :4 רועישblog.csit.org.il/UpLoad/FilesUpload/1450-3-04.pdfstring גוסמ הנתשמ הליכמש תינכות pycharm ב ובתיכ “Hello, my name is Inigo Montoya”

4 ברק גונן

Page 5: תוזורחמ :4 רועישblog.csit.org.il/UpLoad/FilesUpload/1450-3-04.pdfstring גוסמ הנתשמ הליכמש תינכות pycharm ב ובתיכ “Hello, my name is Inigo Montoya”

ב כיתבו-pycharm תוכנית שמכילה משתנה מסוגstring ,

.”Hello, my name is Inigo Montoya“בעל הערך

השתמשו רק ב-slice ים על המחרוזת והדפיסו את המחרוזות

:הבאות◦ “Hello”

◦ “my name”

◦ “Hlo ynm sIioMnoa”

◦ “lo ynm sI”

סדובסקישי , עומר רוזנבוים: קרדיט◦

5 ברק גונן

Page 6: תוזורחמ :4 רועישblog.csit.org.il/UpLoad/FilesUpload/1450-3-04.pdfstring גוסמ הנתשמ הליכמש תינכות pycharm ב ובתיכ “Hello, my name is Inigo Montoya”

6 ברק גונן

+ :סימן

חיבור מחרוזות

len:

אורך המחרוזת

upper:

הצגה באותיות

גדולות

המחרוזת -שימו לב

לא השתנתה עקב upper

find:

מיקום התו במחרוזת

:מסקנה

אם אנחנו צריכים לבצע פעולה

, בפייתוןכלשהי לרוב נוכל למצוא

לכך פונקציה קיימת

Page 7: תוזורחמ :4 רועישblog.csit.org.il/UpLoad/FilesUpload/1450-3-04.pdfstring גוסמ הנתשמ הליכמש תינכות pycharm ב ובתיכ “Hello, my name is Inigo Montoya”

במחרוזות קיימים צירופים

מיוחדיםלדוגמה אם נזין למחרוזת את ◦

\לא יודפס התו n\הצירוף

אלא תבוצע ירידת nואחריו התו

שורה

להלן טבלה של הצירופים ◦

המיוחדים

:לקריאה נוספת◦◦/ref/strings.html0.2docs.python.org/://https

7 ברק גונן

Page 8: תוזורחמ :4 רועישblog.csit.org.il/UpLoad/FilesUpload/1450-3-04.pdfstring גוסמ הנתשמ הליכמש תינכות pycharm ב ובתיכ “Hello, my name is Inigo Montoya”

ומה אם יש לנו טקסט שכולל צירוף מיוחד ואנחנו רוצים

?שהוא יודפס :לדוגמה שם של ספריה במחשב◦

איך להדפיס את ומיצאובטבלה שבשקף הקודם העזרו: תרגיל◦

. השם נכון

8 ברק גונן

Page 9: תוזורחמ :4 רועישblog.csit.org.il/UpLoad/FilesUpload/1450-3-04.pdfstring גוסמ הנתשמ הליכמש תינכות pycharm ב ובתיכ “Hello, my name is Inigo Montoya”

כפי שראינו כאשר מגדירים מחרוזת צירופי תווים מיוחדים

מקבלים פרשנות אחרת

ההנחיהr ( קיצור שלraw ) קח את " לפייתוןאומרת

"תתעלם מצירופים מיוחדים, התווים כמו שהם

9 ברק גונן

Page 10: תוזורחמ :4 רועישblog.csit.org.il/UpLoad/FilesUpload/1450-3-04.pdfstring גוסמ הנתשמ הליכמש תינכות pycharm ב ובתיכ “Hello, my name is Inigo Montoya”

בקישור הבא ניתן למצוא ריכוז של כל ה-string methods :

/library/stdtypes.html2https://docs.python.org/

10 ברק גונן

Page 11: תוזורחמ :4 רועישblog.csit.org.il/UpLoad/FilesUpload/1450-3-04.pdfstring גוסמ הנתשמ הליכמש תינכות pycharm ב ובתיכ “Hello, my name is Inigo Montoya”

הפונקציהraw_input משמשת לקליטת קלט

מהמשתמש והכנסתו למשתנה מסוג מחרוזת

11 ברק גונן

Page 12: תוזורחמ :4 רועישblog.csit.org.il/UpLoad/FilesUpload/1450-3-04.pdfstring גוסמ הנתשמ הליכמש תינכות pycharm ב ובתיכ “Hello, my name is Inigo Montoya”

זוכרים את שפת הבית?

מהמשתמש ומתרגם אותו ( באנגלית)כיתבו קוד שקולט משפט

לשפת הבית

אחרי האותיות : תזכורתaeiou צריך להוסיףb ולהכפיל את האות

עבור הקלט : לדוגמהani ohev otach יודפס:

abanibi obohebev obotabach

12 ברק גונן

Page 13: תוזורחמ :4 רועישblog.csit.org.il/UpLoad/FilesUpload/1450-3-04.pdfstring גוסמ הנתשמ הליכמש תינכות pycharm ב ובתיכ “Hello, my name is Inigo Montoya”

תרגיל מתוךgoogle classes נתון הקובץstring1.py

לשכתב את הפונקציה : המשימהdonuts כך שהרצה שלה תיתן את התוצאות הנדרשות

ולאחריה הערך returnהפקודה : החזרת ערך מפונקציה◦

בתוךmain עם פרמטרים , מבוצעות קריאות לפונקציה והתוצאות מושוות לתוצאות הנדרשות, שונים

13 ברק גונן

Page 14: תוזורחמ :4 רועישblog.csit.org.il/UpLoad/FilesUpload/1450-3-04.pdfstring גוסמ הנתשמ הליכמש תינכות pycharm ב ובתיכ “Hello, my name is Inigo Montoya”

תוצאות ההרצה:

14 ברק גונן

Page 15: תוזורחמ :4 רועישblog.csit.org.il/UpLoad/FilesUpload/1450-3-04.pdfstring גוסמ הנתשמ הליכמש תינכות pycharm ב ובתיכ “Hello, my name is Inigo Montoya”

String1.py

String2.py

15 ברק גונן

Page 16: תוזורחמ :4 רועישblog.csit.org.il/UpLoad/FilesUpload/1450-3-04.pdfstring גוסמ הנתשמ הליכמש תינכות pycharm ב ובתיכ “Hello, my name is Inigo Montoya”

כיתבו תוכנית שקולטת מהמשתמש מספר בעל :חמש ספרות ומדפיסה

את המספר עצמו◦

כל ספרה בנפרד, את ספרות המספר◦

את סכום הספרות של המספר◦

הערות: ניתן להניח שהמשתמש הכניס קלט תקין◦

מחזירה את int(number)הפקודה : intשימוש בפונקציה ◦ numberהמספר שנמצא במחרוזת

סדובסקישי , עומר רוזנבוים: קרדיט

16 ברק גונן