פייתון 2.7 עבודה עם קבצים
TRANSCRIPT
מבוא לתכנות מדעי
2חלק 6הרצאה
עבודה עם קבצים
2016Igor Kleiner
מטרה
ללמוד איך לעבוד עם קבצים בפייתון
שמירת מידע בקובץ
קריאת מידע מקובץ
קובץ
סוגים של קבצים
קובץ טקסט
אפשר לחשוב על קובץ טקסט כעל קובץ עם שורות של טקסט•
”n\"כאשר כל שורת טקסט היא בעצם מחרוזת שמסתיימת בסימן שורה חדשה •
לצורך תרגול נעבוד עם קובץ הבא שניתן להוריד אותו מאינטרנט•
http://www.py4inf.com/code/mbox-short.txt
פתיחת קובץאולכיםלפני שנוכל לקרוא או לכתוב לקובץ יש להגיד לפייתון באילו קבצים אנו •
להשתמש ובאיזו מטרה
()openפעולה זו נעשה בעזרת פונקציה •
•open() מחזירה אובייקט(handle ) שבעזרתו ניתן לגשת לתוכן של הקובץ או לעדכןאותו
:דוגמאות לשימוש•
• fhandle=open(“my.txt”,”r”) - for reading from file my.txt
• fh=open(“grades.txt”,w) - for writing to file my.txt
פתיחת קובץ לא קיים
אם נרצה לפתוח לקריא קובץ שלא קיים נקבל טעות•
אזי פייתון ייצר קובץ חדש בשבלינו, אפשר לפתוח לשמירה קובץ שלא קיים•
n\שורה חדשה:סימן
מסמן לפייתון שיש לעבור לשורה חדשהn\, סימן מיוחד•
אבל הוא ישנו בסוף השורות, בפועל לא רואים אותו•
קריא מקובץ
שורה-שורה: forאפשר לקרוא ממנו בעזרת לולאה , לאחר שפתחנו קובץ לקריא•
• handler = open(“data.txt”,”r”)
• for string in handler:
• print string
ספירת כמות שורות בקובץ
אפשר בקלות לספור כמות שורות בקובץ•
קריאת קובץ כולו בבת אחד
כי , אבל לא מומלץ בדרך כלל, אפשר לקרוא את הקוצץ כולו בבת אחד•ישנם קבצים מאוד גדולים ופעולה כזו יכולה לקחת המון זמן
אם אנו בטוחים שקובץ לא גדול אפשר להשתמש בפקודה זו לפעמים •
חיפוש בקובץ
אפשר להשתמש במתודות שונות של מחרוזות כדי לעשות חיפוש בקובץ•
From:-למשל אם נרצה למצוא כל השורות שמתחילות ב•
חיפוש בקובץ
אפשר להשתמש במתודות שונות של מחרוזות כדי לעשות חיפוש בקובץ•
From:למשל אם נרצה למצוא כל השורות שמתחילות מ•
קבלת שם של הקובץ ממשתמש
אפשר לקבל שם של קובץ ממשתמש•
שמירת נתונים בתוך קובץ
”w“:יש לפתוח את הקובץ לשמירה•
(stringרק פרמטרים מטיפוס )writeכותבים בתוך קובץ בעזרת מתודה •
()closeאחרי סוף שימוש בקובץ יש לסגור אותו בעזרת מתודה •
לסגור את קובץ רק פעם אחד לאחר כל שימוש בוחשוב•
שמירת נתונים בתוך קובץ
”w“:יש לפתוח את הקובץ לשמירה•
(stringרק פרמטרים מטיפוס )writeכותבים בתוך קובץ בעזרת מתודה •
()closeאחרי סוף שימוש בקובץ יש לסגור אותו בעזרת מתודה •
מידע נוסף על עבודה עם קבצים ניתן לחפש בגוגל
מידע נוסף על עבודה עם קבצים ניתן לחפש בגוגל
לא אפשרית-CodeSculptorעבודה עם קבצים ב
לא תומך בעבודה עם קבציםCS:שימו לב•
סיכום
למדנו איך לעבוד עם קבצי טקסט בפייתון
:שלב ראשון יש לפתוח קובץ באופן מתאים בעזרת פונקציהopen()
:אפשר לכתוב או לקרוא מקובץ בעזרת מתודות מתאימותwrite(), read(), readline()
אחרי עבודה עם קובץ יש לסגור אותו
סיכום
forקל לקרוא מקובץ בעזרת לולאת
מקבלת פרמטרים מטיפוס מחרוזת()writeפונקציית
יש להיזהר כאשר עובדים עם קבצים
1דוגמא מהרצאה
שמירת מספרים ראשוניים בקובץ: דוגמא נוספת
100עד 2-נכתוב תוכנה ששומרת בתוך הקובץ כל המספרים הראשוניים מ•
: אלגוריתם•
שמירת מספרים ראשוניים בקובץ: דוגמא נוספת
100עד 2-נכתוב תוכנה ששומרת בתוך הקובץ כל המספרים הראשוניים מ•
: אלגוריתם•
100עד 2-מXנעבור על כל מספר •
לקובץ..... הוא ראשוני Xואם , הוא ראשוניXהאם isPrimeנבדוק בעזרת פונקציה •
שמירת מספרים ראשוניים בקובץ: דוגמא נוספת
100עד 2-נכתוב תוכנה ששומרת בתוך הקובץ כל המספרים הראשוניים מ•
: אלגוריתם•
100עד 2-מXנעבור על כל מספר •
Xהוא ראשוני נכתוב Xואם , הוא ראשוניXהאם isPrimeנבדוק בעזרת פונקציה •לקובץ
שמירת מספרים ראשוניים בקובץ: דוגמא נוספת
100עד 2-נכתוב תוכנה ששומרת בתוך הקובץ כל המספרים הראשוניים מ•
שמירת מספרים ראשוניים בקובץ: דוגמא נוספת
100עד 2-נכתוב תוכנה ששומרת בתוך הקובץ כל המספרים הראשוניים מ•
• Igor Kleiner (Hebrew version adaptation 2016)