מרגיש שאני תקוע, יש לי את התשובה, המחשב לא מצליח להריץ את זה אבל בשביל להגיע לפיתרון
אני בטוח בתשובה שלי שאם אני יריץ אותך היא תעבוד, אבל לצערי הוא נתקע כל הזמן
עצות?
מרגיש שאני תקוע, יש לי את התשובה, המחשב לא מצליח להריץ את זה אבל בשביל להגיע לפיתרון
אני בטוח בתשובה שלי שאם אני יריץ אותך היא תעבוד, אבל לצערי הוא נתקע כל הזמן
עצות?
לעבוד על טקסט קצר יותר ולראות שהקוד אכן עובד כמו שצריך. אם הוא עובד עבור קצר יותר יעבוד גם עבור טקסט ארוך (:
כמו כן – עדיף לייעל את הקוד כך שיעבוד גם על הטקסט הארוך.
יש סיכוי שהפתרון לא מספיק יעיל פשוט
האם בשלב הזה בקורס אפשר לקרוא מקובץ ע"י
with open('resources/war-and-peace.txt', 'r') as file_handler:
for line in file_handler:
במקום -
with open('resources/haiku.txt') as fh:
haiku_text = fh.readlines()
??
זה אותו הדבר, השם של המשתנה פשוט שונה. בדוגמא הראשונה זה file_handler ובדוגמה השניה זה fh. בדוגמה הראשונה אתה עושה לולאת for לא ברור על מה, ובדוגמה השניה אתה קורא את השורות מהקובץ בעזרת המשתנה שמצביע על הקובץ.
אני מודע לזה ששתי הדוגמאות עושות אותו דבר.
את הדוגמה הראשונה לא תמצא בחומר הלימוד ואת הדוגמה השנייה תמצא.
הדוגמה הראשונה יעילה יותר.
אני שואל אם מותר להשתמש בדוגמה הראשונה.
לא, כמו תמיד אסור להשתמש בדברים שלא נלמדו אלא אם כן נכתב במפורש שמותר
מרגישה תסכול גדול, ואשמחחח לעזרה
הצלחתי לנקות את הטקסט מסימני פיסוק מיותרים,
יצרתי פונקציה שעל כל מילה בטקסט, עוברת על הטקסט וסופרת את כמות המופעים של המילה תוך מחיקת המופעים שנספרו. לבסוף נוצר מילון של כל מילה והמופעים שלה.
כמובן שהפונקציה לא מצליחה לרוץ לאורך כל הטקסט.
הייתי שמחה להכוונה ב2 דברים:
היי
הציפיה היא לעבוד עם הקובץ השלם.
בגלל שיופטר לא מצליח להריץ הדפסה של כולו אפשר לעשות הדפסה של מקטעים (כדי להבין איך הקוד עובד)
אבל לבסוף הקוד אמור לרוץ על הכל.
תנסי להימנע לprint שלו ולעשות print אולי במקומות ספציפיים במהלך ההרכבה של הקוד רק כדי להבין אם אכן מגיעים הערכים שאת מצפה (וכמובן אז תסירי את זה)
בנוגע לשאלה הזו זה טריקי לענות על זה כי זה מה שהתרגיל מבקש לעשות.
אין פרינטים ועדיין התוכנה איטית ולא מגיעה לתוצאה סופית… ):
את יכולה להעביר לי אם את רוצה אני אסתכל, אבל בגדול אם את לא בלולאה אינסופית אז משהו ביעילות של הקוד לא עובדת וצריך לבצע פעולות פחות “ארוכות” נגיד ככה.
היי, רשמתי קוד שעובד טוב על טקסט אם הוא באורך של כמה דפים.
כשאני מנסה להריץ אותו על כל הטקסט של מלחמה ושלום התוכנה נתקעת, מה אני יכול לעשות?
לייעל אותו כדי שירוץ מהר יותר. אם יש בקוד הרבה פעולות שעוברות על כל הטקסט זה מאט מאוד את הריצה
אני אישית לא מסכים שלא למדנו את זה. זה פור רגיל לכל דבר, אין פה שום דבר מיוחד.
את האמת שיש פה משהו מיוחד, וזה גם מימוש ספציפי של פייתון לכך שזה יעבוד
אז רק לוודא, זה שימוש אסור?
ברור לי, פיצלתי למילים מחקתי כפילויות וסימני פיסוק, אך אני עדיין צריך לספור כל מילה כמה היא מופיע בטקסט, אני עדיין לא מצליח להריץ את הקוד על הטקסט השלם
יש דרכים לספור את כל המילים בטקסט עם ריצות בודדות על כולו ויש דרכים שדורשות מאות אלפי ריצות על הטקסט. אם אתה משתמש ב-count נגיד זו בעיה
כן. אפשר עדיין לעבור ב־for על readlines, נניח, פשוט לא על השם של הקובץ ישירות
כנראה שזאת הבעיה, שהספירה מתבצעת בcount.