קריאה וכתיבה לקובץ לצורך אחסון או שימוש מאוחר יותר הן משימות נפוצות בתכנות. לפייתון יש מספר דרכים לעבוד עם קבצים, אך אנו נתמקד במיוחד בכתיבה לקבצי טקסט. קובצי טקסט משמשים לאחסון נתוני טקסט רגיל, ו-Python מקל על מתכנתים לקרוא ולכתוב נתונים בקובצי טקסט.
במדריך זה, נסביר כיצד משתמשים יכולים לכתוב בקובץ טקסט באמצעות Python.
לפייתון יש פונקציה מובנית ליצור, לכתוב או לקרוא את הקבצים. זה יכול להתמודד עם שני סוגים של קבצים קבצי טקסט רגילים וקבצים בינאריים. הבחירה בין שני אלה תלויה בנתונים עליהם אתה עובד ובדרישות האפליקציה.
תחביר לפתיחת קובץ ב-Python:
# Method 1: file = open (path_to_the_file, mode) # Manually required to close the file `file.close()` to ensure that # changes made are saved, and system resources are freed up. # Method 2: with open (path_to_the_file, mode) as file: # It automatically closes the file properly # after the block code is executed.
הפונקציה open() יכולה לקבל פרמטרים שונים. אבל המשתמש צריך להתמקד בשני הראשונים:
לכתיבה בקובץ טקסט, המשתמש ישתמש במצב הבא:
מצב | תיאור |
---|---|
'ב' | הוא משמש לפתיחת קובץ הטקסט לכתיבת טקסט. הקובץ קטוע במצב זה פירושו שהתוכן הקיים של הקובץ נמחק. |
'א' | הוא משמש לפתיחת קובץ הטקסט כדי להוסיף טקסט. המצביע מתמקם בסוף הקובץ, ונתונים חדשים מתווספים לתוכן הקיים. |
דוגמה: להראות כיצד משתמש יכול לכתוב בקובץ טקסט באמצעות Python
file.write(' ') file.writelines(' ')
זה תלוי לחלוטין במשתמש אם הוא רוצה להוסיף את הטקסט בשורה הבאה או לא.
יסודות java
דוגמה 2: להראות כיצד להשתמש בפונקציה write() לכתיבת רשימת הטקסטים בקובץ הטקסט
# Method 1 - Simple Approach file = open ('writeme.txt', 'w') file.write('writeme') file.close() # Method 2 - Using the 'with' keyword to open a file with open ('writeme.txt', 'w') as file: file.write('writeme')
תְפוּקָה:
שתי השיטות נותנות את אותה תוצאה.
שלבים לכתיבה בקובץ טקסט ב-Python:
לכתיבה בקובץ הטקסט באמצעות פִּיתוֹן , על המשתמש לבצע את השלבים הבאים:
שלב 1 - פתח את הקובץ - כדי להתחיל לכתוב לקובץ טקסט, עלינו קודם כל לפתוח אותו באמצעות הפונקציה in-built open() אשר לוקחת שני פרמטרים: שם הקובץ (כולל הנתיב אם הקובץ אינו בספרייה הנוכחית) והמצב ב- שאנו רוצים לפתוח את הקובץ. במקרה של כתיבה לקובץ טקסט, נוכל להשתמש במצב 'w', המייצג מצב כתיבה, או במצב 'a', המייצג את מצב התוספת. אם הקובץ לא קיים, Python תיצור קובץ חדש בשם הנתון.
# Opening a file 'example.txt' file = open('example.txt', 'w')
הפונקציה open() תחזיר אובייקט קובץ, ולאובייקט הקובץ הזה יהיו שתי פונקציות שימושיות לכתיבת טקסט בו:
- לִכתוֹב()
- writelines()
הפונקציה write() משמשת לכתיבת המחרוזת בקובץ הטקסט, והפונקציה writelines() משמשת לכתיבת רשימת המחרוזת בקובץ בבת אחת.
הפונקציה writelines() יכולה גם לקבל את האובייקט שניתן לחזור עליו. המשתמש יכול גם להעביר את טאפל המיתרים, את סט המיתרים וכו'.
כדי לכתוב בשורה הבאה, על המשתמש להוסיף ידנית את תו השורה החדש.
שלב 2 - כתוב לקובץ: ברגע שהקובץ נפתח במצב כתיבה, נוכל להשתמש בפונקציה write() או בפונקציה writelines() כדי לכתוב בו. המתודה write() לוקחת מחרוזת כפרמטר שאנו רוצים לכתוב לקובץ. אנו יכולים לכתוב מספר שורות על ידי קריאה לפונקציה write() מספר פעמים או שימוש בתווים newline ( ) בין מחרוזות כדי להפריד בין השורות.
# Using the 'write' function file.write('This is the first line. ') file.write('This is the second line. ') # Using the 'writelines' function file.writelines('This is the first line. This is the second line. ')
שלב 3 - סגור את הקובץ: המשתמש יכול לסגור את קובץ הטקסט באמצעות הפונקציה close(). לאחר כתיבת התוכן הרצוי לקובץ, חשוב לסגור אותו כמו שצריך. סגירת הקובץ מבטיחה שכל השינויים נשמרים, ומשאבי המערכת מתפנות.
# Closing the file file.close()
דוגמה 2: להראות כיצד משתמשים יכולים להוסיף תו שורה חדש בקובץ txt
file.write(' ') file.writelines(' ')
זה תלוי לחלוטין במשתמשים אם הם רוצים להוסיף את הטקסט בשורה הבאה או לא.
דוגמה 3: להראות כיצד להשתמש בפונקציה write() לכתיבת רשימת הטקסטים או המחרוזות בקובץ טקסט
# Creating a list of strings lines_1 = [ 'This is an example', 'to show how a user can write in a text file using Python'] with open('text.txt', 'w') as file: # Iterating over each element of the list for line_1 in lines_1: file.write(line_1) # Adding the line to the text.txt file.write(' ') # Adding a new line character
תְפוּקָה:
הֶסבֵּר:
בדוגמה שלמעלה, יצרנו תחילה רשימה של מחרוזות בשם lines_1, ולאחר מכן פתחנו את הקובץ הזה באמצעות הפונקציה open() עם המשפט 'with'. לאחר מכן השתמשנו ב-for-loop כדי לחזור על רכיבי הרשימה, ולאחר מכן כתיבת השורה והוספת תו שורה חדש לקובץ. תו קו חדש נוסף בסוף לולאת for, והמצביע מתמקם בשורה הבאה.
אם קובץ text.txt לא קיים בתיקייה, הפונקציה open() תיצור את הקובץ החדש, והפעולות מבוצעות בהתאם.
דוגמה 4: כדי להראות כיצד משתמשים יכולים לכתוב את רשימת מחרוזות הטקסט בקובץ text.txt באמצעות הפונקציה writelines():
# Creating a list of strings lines_1 = [ 'This is an example ', 'to show how a user can write in a text file using writelines() function in Python.'] # Opening the text.txt file with open('text.txt', 'w') as file: # Using the writelines() function file.writelines(lines_1)
תְפוּקָה:
הֶסבֵּר:
בדוגמה שלמעלה, הפונקציה writelines() כותבת כל רכיב רשימה בשורה בודדת בקובץ.
אם המשתמש מתייחס לכל רכיב רשימה כשורה, עליו לקשר אותו עם תו שורה חדש.
דוגמה 4: להראות כיצד משתמש יכול לקשר את תו השורה החדשה עם כל רכיב בשורה בקובץ text.txt
כבר ראינו בדוגמה מספר 3 כיצד נוכל להוסיף תו קו חדש לאחר כל רכיב רשימה. בזמן השימוש בפונקציה writelines(), עלינו להוסיף תו שורה חדש במחרוזת.
# Creating a list of strings lines_1 = [ 'This is an example ', 'to show how a user can link a new line character ', 'with each element of the list. '] # Opening the text.txt file with open('text.txt', 'w') as file: # Using the writelines function file.writelines(lines_1)
תְפוּקָה:
הֶסבֵּר:
כיצד לפתוח קובץ ב-java
בדוגמה שלמעלה, הפונקציה writelines() כותבת את רכיב הרשימה לקובץ text.txt, כאשר כל רכיב רשימה מסתיים בתו שורה חדשה.
סיכום
במדריך זה, הסברנו כיצד משתמש יכול לכתוב טקסטים בקובץ טקסט באמצעות Python והפונקציות השונות שלו. למדנו תחילה על קבצי טקסט רגילים ובינאריים, ולאחר מכן על התחביר כיצד לפתוח קובץ. בדקנו גם את ההבדל בין 'w' (מצב כתיבה) ו-'a' (מצב הוספה). לאחר מכן למדנו על השלבים לכתיבה בקובץ טקסט ב-Python ויישמנו דוגמאות שונות להבנת שיטות שונות לכתיבה בקובץ טקסט.