לחששנית - קריאה מקובץ בחלקים

היי

לא קראתי אם כבר זה עלה כי אני מנסה לפתור לבד קודם.

כתוב : “זכרו שהקובץ עלול להיות גדול מאוד, ועדיף שלא לקרוא את כולו במכה אחת”
בגדול הקובץ הזה נכנס לי בלי בעיה למשתנה אחד, ואז אני רוצה לקרוא מהמשתנה הזה בצורה מדורגת.
האם זאת כוונת המשורר?

מה שגם

תקציר

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

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

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

אם למחשב שלך אין בעיה לקרוא את הקובץ בפעם אחת ללא “חיתוכים” את יכולה להתעלם מההערה הזו.

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

לייק 1

בשביל זה יש אותך פה ! (:
מה שכן, אני לא יודע איך זה קרה אבל אצלי זה קרא את הקובץ :woman_facepalming:t2:

(הפעם) ים ריחם עלינו ונתן לנו קובץ קטן שלא יפוצץ לנו את המחשב :slight_smile:

2 לייקים

אל תתני לו רעיונות …

2 לייקים

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

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

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

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

אשמח לאישרור (או תיקון) בנושא

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

לייק 1

לא הבנתי אם הקריאה בחלקים של הקובץ היא חלק אינטגרלי בפתרון או עניין של יעילות. צריך לעבור על כולו בכל מקרה (עד כמה שאני מבין) ולפחות בדרך שאני חשבתי למצוא את המסרים צריך לשחק עם אינדקסים אז לקרוא רק חלקים יכול לסבך. אשמח לקצת הכוונה, ממש בא לי להצליח להגיש בזמן :slight_smile:

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

תחשוב שקובץ עלול להיות גדול מדי לקריאה (כמו מלחמה ושלום עליו השלום - הספר האמיתי מעל 1000 עמודים, או נגיד קובץ שמכיל את כל ספרי הארי פוטר - ואלה עוד בקטנה), אז עליך לקרוא אותו כל פעם במנות - בחלקים קטנים יותר.
ככה אתה עובר על כולו (תחזור על מחברת קבצים משבוע 3 ותראה מה קורא שכל פעם קוראים מחדש קובץ במנות [לאיפה הסמן עובר])

היי,
ניתן לקרוא גם שורות במקטעים (כך עשיתי)
ניתן להתסמך עלזה שהמסר כתוב בשורה אחת ולא נחצה ע"י שתי שורות?
במידה ולא אצטרך לתקן…
תודה :slight_smile:

מצטער לבאס אבל אי אפשר להסתמך על זה

לייק 1

תנסה לחשוב על איזה מקטע אפשר להסתמך (רמז: זה כנראה יותר קטן משורה). כך אני פתרתי.

2 לייקים