פייתון/פייתון גרסה 2/קלט ופלט בקבצים

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


קריאת נתונים מתוך קובץ[עריכה]

פרק זה לוקה בחסר. אתם מוזמנים לתרום לוויקיספר ולהשלים אותו. ראו פירוט בדף השיחה.



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

with open('results.dat') as f:
    for line in f:
        columns=line.split()
        x=float(columns[0])
        y=float(columns[1])
        z=float(columns[2])
        # לבצע פעולות עם הנתונים


כדאי לדעת:

בכל מחזור של הלולאה, ערכיהם של x,y,z ישתנו בהתאם למספר השורה הנקראת מתוך הקובץ! במילים אחרות, x,y,z הם סקלרים, לא וקטורים.

קריאת נתונים לתוך הזיכרון[עריכה]

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

with open('results.dat','r') as f:
    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]))
    # לבצע פעולות עם הנתונים

במקרה זה, x,y ו-z יהיו וקטורים (מערכים). הפקודה append מוסיפה איבר למערך, וכך הוקטורים גדלים בכל מחזור של הלולאה.

כתיבת נתונים לתוך קובץ[עריכה]

הדוגמה הפשוטה ביותר לכתיבה לתוך קובץ היא:

with open('your_file_name.dat', 'w') as f:
    f.write('This is a line of text\n')

הוספת מידע לקובץ[עריכה]

השימוש ב-'w' הוא טוב כאשר אין צורך במידע שהיה מקודם בקובץ, או כאשר הקובץ לא קיים. אך אם ברצונכם להוסיף מידע, יש להשתמש ב-'a' (מלשון append).


- קלט ופלט בקבצים -