חתול ארוך הוא ארוך - התחלה

היי,
מסתבך קצת עם ההסרה של סימנים שאינם אותיות.
אני יודע איך לזהות איבר שהוא לא אות אבל מתקשה להבין איך עושים כמה for-ים עם כמה תנאים ב-comprehension

`

האם נכון לעבור על המילים של הטקסט? על האותיות?

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

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

עברתי עליה, אבל לא מבין איך זה יותר ברור מלולאות רגילות
האם בקומפרהנשין אפשר לשים גם else או רק if?

בגדול אפשר ליישם else אבל לא למדנו ולכן זה לא המצב פה.
זה נכון שלעיתים זה “מתלכלך” אבל אם אתה ממש עושה את זה נכון זה יוצא בסוף אלגנטי גם אם יש שם יותר מלולאה אחת או אם יש לולאה אחת ופונקציות וכו.

כמובן שלדברים מאוד מורכבים לא נכון להשתמש בזה כפי שהוסבר במחברת.

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

מסכים איתך, אבל זה מה שהופך את זה למורכב מחשבתית
כרגע לא הצלחתי להעלים את התווים שצריך, ואני צריך כיוון

אני אנסה לעזור, נסה לפרק את זה ל:

  • מהם התווים האפשריים ואיך אתה משיג אותם.
  • אילו פונקציו שלמדנו יכולות לעזור לך בלנקות
  • אילו פונקציות למדנו שיכולות לעזור לך בלבדות את תקינות המילים
  • איזה מבנה נתונים יכול להיות הכי מתאים לבעיה.

ואז לנסות לעשות מהכל סלט אחד שנקרא קומפריהנשין :slight_smile:

לייק 1
  1. כל מה שהוא לא אות
  2. חשבתי על isalpha
  3. לא הבנתי את מה שכתבת
  4. בסופו של דבר מילון, אבל כרגע אני עוד בשלב הראשון של מחיקת התווים שלא צריכים להיות

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

strip?

///////////////

אני לא יכול לענות על דברים כאלה כי לחיוב או שלילה זה יכול להיחשב כמתן תשובה.

הצלחתי למחוק סימנים מההתחלה ומהסוף אבל לא מאמצע מילה.
האם צריך לעבור אות אות או שיש דרך חכמה יותר?
צריך להשתמש במודול string?

האם נכון לפתור את זה עם לולאות רגילות ואז לנסות להמיר לקומפריהנשיין? או שזה דרך אחרת?

למה זו לא דרך חכמה? תלוי איך אתה מבצע אותה.
לא חובה

אם זו הצורה שיותר נוחה לך - בהחלט. אם יש לך את הלולאה הנכונה והכול עובד יהיה לך כנראה יותר קל להגיע לקומפרהנשן הנכון מאשר אם תטעה ותסתבך איתו ותעשה דברים שבכלל לא התכוונת

יש לי את הלולאה הנכונה - הפער שלי בהפיכתו לקומפרהנשן זה שאני רוצה להכניס את המילה לרשימה החדשה רק כשאני מסיים לעבור על כל המילה ולא אחרי כל אות

אני לא לגמרי מבינה מה ואיך אתה עושה כרגע אז אני חוששת שאני לא יכולה לעזור יותר מדי. נסה להיעזר בציור הוויזואלי של איך בדיוק “דוחסים” לולאה רגילה לצורת הקומפרהנשן שלה

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

בעיני ובשבילי לעבור בין שני המבנים האפשריים, עזר להבין את הקומפריהנשיין מאוד

הצלחתי, תודה לכולם :slight_smile:

חושבים שזה בסדר להשתמש גם בקומפרהיישן אבל אחר כך לעשות לולאות רגילות או שחייבים לנקות את כל הסימנים רק עם קומפרהשיין?