כיצד להוסיף CRLF למחרוזת ב- Python

פונקציית דוגמה לקוד מחשב Python

קרדיט תמונה: matejmo/iStock/GettyImages

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

פייתון ו-CRLF

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

סרטון היום

באופן מסורתי, מערכות ההפעלה של מיקרוסופט משתמשות בהחזרת עגלה ואחריה בהזנת שורה, ומערכות Unix כולל לינוקס וגרסאות עדכניות של Apple macOS משתמשות רק בהזנת שורה אחת. מערכות Mac ישנות יותר השתמשו רק בהחזרת כרכרה אחת.

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

הוספת סיומות שורות למחרוזות

הוסף ידנית סיום שורה לבחירתך למחרוזת ב- Python באמצעות אופרטור שרשור סימן הפלוס, שמחבר יחד מחרוזות מרובות.

לדוגמה, "abc" + "def" מניב את המחרוזת "abcdef" כתוצאה מכך. ב-Python, החזרת כרכרה מיוצגת על ידי המחרוזת \r ותו קו חדש מיוצג על ידי המחרוזת \n. הנטוי האחורי הוא דמות בריחה שאומרת לפייתון שלדמות הבאה יש משמעות מיוחדת. כדי להקליד קו נטוי ממשי, הצב לפניו קו נטוי שני כדי שגם Python יברח ממנו.

כדי להוסיף החזרת כרכרה ושורה חדשה למחרוזת, הוסף לה את המחרוזת "\r\n" באמצעות סימן הפלוס.

הדפסה עם CRLF

כברירת מחדל, אופרטור ההדפסה ב- Python 2 ופונקציית ההדפסה ב- Python 3 מוסיפים רק תו חדש, לא החזרת כרכרה, לסוף כל שורת טקסט המודפסת למחרוזת או לקובץ. גם Python 2 וגם Python 3 נמצאים בשימוש נרחב, אבל הם מטפלים בהדפסה בצורה מעט שונה.

ב-Python 2, אתה מוסיף את הסיום הנכון לכל שורה בעצמך ומוסיף פסיק לסוף משפט ההדפסה לאחר הקלט כדי לדכא את סיום השורה של Python עצמו. לדוגמה, תוכל להזין 'הדפס "זהו מבחן" + "\r\n"' כדי להדפיס את המחרוזת "זהו מבחן" עם החזרת כרכרה ושורה חדשה.

בפייתון 3, "הדפס" הוא פונקציה ולא אופרטור מיוחד. נדרש ארגומנט שנקרא "סוף" המציין את סיום השורה לשימוש. 'הדפס ("זהו מבחן", סוף = "\r\n")' מדפיס את המשפט עם החזרת כרכרה ותו קו חדש. כברירת מחדל, ארגומנט הסיום הוא פשוט תו חדש.