תרגול רשימות ומחרוזות

היי,
בשאלה האחרונה בתרגול יש שתי דרישות שנראה שאינן תלויות האחת בשניה,
אך הפתרון נכתב כך שתנאי 2 לא יוכל להתבצע ללא התנאי הראשון.
כלומר, עבור כל מחרוזת שאינה מתחילה בbb נקבל מחרוזת ריקה (גם אם מקיימת את התנאי השני)

האם הfind בתנאי השני והמניפולציה על המחרוזת לא אמורים להיות על input_string המקורי?

לייק 1

אין צורך שהם יהיו על המחרוזת המקורית.
הרי אם התנאי הראשון לא מתקיים נרצה להחזיר מחרוזת ריקה. אם הוא כן מתקיים אנחנו מחליפים b ב-a אבל זה לא משפיע על התנאי השני (הרי אף gold לא יווצר או ייהרס מכך), ואף אחד משני התנאים לא משפיע על ה-split כיוון שהם אינם משנים את מספר ההופעות של k.

לייק 1

אתה צודק, זו נראת אכן טעות בכתיבה של הקוד.
על מנת לתקן מראש יש להגדיר את
result_string = input_string
ולבצע את כל פעולות ה-replace והמציאה של תווים על המחרוזת result_string

לייק 1

נשמע הגיוני :slight_smile:
תהיתי מה אני מפספסת

אם התנאי הראשון לא מתקיים, אין שינוי לresult_string ואנחנו נשארים עם מחרוזת ריקה לאורך כל הקוד

משום מה הבנתי מניסוח השאלה פה שזה מה שרצינו (לא ראיתי את התרגול עדיין).
אם התנאים לא קשורים ואנו רוצים שגם אם תנאי א’ לא יתקיים שני הדברים שאחריו כן, אני מחזקת את מה ש-orronai אמר.

מדויק :slight_smile:

  1. ניסיתי אתמול לבצע פעולה דומה למתודה חיפוש =! מינוס 1 על רשימה ולא הצליח למה?

  2. האם את חיפוש המילה ‘גולד’ היה אפשר באופן הבא?
    if ‘gold’ in …

  1. שלח את הקוד שלך

  2. כן, אבל במקרה בו נרצה להשתמש באינדקס שבו נמצא המופע לא נוכל לעשות זאת

לייק 1