פייתון/קלט ופלט בקבצים
מתוך ויקיספר, אוסף ספרי הלימוד והמדריכים החופשי.
| חלק זה של הספר הינו קצרמר. אתם מוזמנים לתרום לוויקיספר ולערוך אותו. |
תוכן עניינים |
[עריכה] קריאת נתונים מתוך קובץ
פרק זה לוקה בחסר. אתם מוזמנים לתרום לוויקיספר ולהשלים אותו. ראו פירוט בדף השיחה.
נניח כי קיים קובץ בשם results.dat אשר מכיל עמודות של מספרים, אותן ברצונכם לטעון לזיכרון. אם הפעלתם את פייתון מתוך אותה תיקייה בה נמצא הקובץ, יש לכתוב:
F=open('results.dat','r') for line in F: columns=line.split() x=float(columns[0]) y=float(columns[1]) z=float(columns[2]) # לבצע פעולות עם הנתונים F.close()
|
כדאי לדעת: בכל מחזור של הלולאה, ערכיהם של x,y,z ישתנו בהתאם למספר השורה הנקראת מתוך הקובץ! במילים אחרות, x,y,z הם סקלרים, לא וקטורים. |
[עריכה] קריאת נתונים לתוך הזיכרון
במקום לקרוא מהקובץ שורה-אחר-שורה, ניתן לטעון את כל המידע לזיכרון. כך יתאפשר לבצע פעולות מורכבות, וביצוען יהיה מהיר יותר. נשנה מעט את הדוגמה הקודמת:
F=open('results.dat','r') data=F.readlines() x=[]; y=[]; z=[] # וכך הלאה, בהתאם למספר העמודות for line in data: columns=line.split() x.append(float(columns[0])) y.append(float(columns[1])) z.append(float(columns[2])) # לבצע פעולות עם הנתונים F.close()
במקרה זה, x,y ו-z יהיו וקטורים (מערכים). הפקודה append מוסיפה איבר למערך, וכך הוקטורים גדלים בכל מחזור של הלולאה.
[עריכה] כתיבת נתונים לתוך קובץ
הדוגמה הפשוטה ביותר לכתיבה לתוך קובץ היא:
F=open('your_file_name.dat', 'w') F.write('This is a line of text\n') F.close()
[עריכה] הוספת מידע לקובץ
השימוש ב-'w' הוא טוב כאשר אין צורך במידע שהיה מקודם בקובץ, או כאשר הקובץ לא קיים. אך אם ברצונכם להוסיף מידע, יש להשתמש ב-'a' (מלשון append).