Kép jóváírása: matejmo/iStock/GettyImages
A Pythonban a CRLF a kocsivisszaadásra és a soremelésre utal. Ezt a karakterpárt számos számítógépes fájl szövegsorainak befejezésére használják, és az írógép-felhasználó által a gépelés során végzett műveletek mintájára modellezték. A Pythonban manuálisan is hozzáadhatja őket egy karakterlánchoz karakterlánc-összefűzési operátorok használatával, vagy megadhatja, hogy hozzá kell-e adni őket a képernyőre vagy fájlba nyomtatott karakterlánchoz.
Python és CRLF
A különböző operációs rendszerek eltérő módon jelezhetik, ha egy szövegfájl sortörést tartalmaz. Ez általában a kocsivissza- és soremelés karakterek keverékével történik, amelyeket bizonyos numerikus kódok határoznak meg.
A nap videója
Hagyományosan a Microsoft operációs rendszerek kocsivisszaváltást használnak, amelyet soremelés követ, a Unix rendszerek pedig, beleértve a Linuxot és az Apple macOS legújabb verzióit is, csak egyetlen soremelést használnak. A régebbi Mac rendszerek csak egyetlen kocsivisszaküldést használtak.
Sok szövegfeldolgozó program képes észlelni, hogy mely sorvégződéseket használja, és megnyithat bármilyen fájlt, hogy megjelenjen általában, de a szöveg időnként megzavarható, ha egy program nincs beállítva, hogy kitalálja, vagy megteszi tévesen. A Python egy programozási nyelv, amely sokféle rendszeren fut, ezért képesnek kell lennie különféle típusú sorvégződések kezelésére.
Vonalvégek hozzáadása a karakterláncokhoz
Kézzel adjon hozzá egy tetszőleges sorvéget egy karakterlánchoz Pythonban a pluszjel-összefűzési operátor használatával, amely több karakterláncot egyesít.
Például az "abc" + "def" az "abcdef" karakterláncot eredményezi. A Pythonban a kocsivisszaadást a \r karakterlánc, az újsor karaktert pedig a \n karakterlánc képviseli. A fordított perjel egy escape karakter, amely közli a Pythonnal, hogy a következő karakternek különleges jelentése van. Valódi fordított perjel beírásához tegyen elé egy második fordított perjelet, hogy a Python is megkerülje.
Ha egy karakterlánchoz kocsivisszaadást és újsort szeretne hozzáadni, adja hozzá a "\r\n" karakterláncot a pluszjel használatával.
Nyomtatás CRLF-fel
Alapértelmezés szerint a Python 2 nyomtatási operátora és a Python 3 nyomtatási funkciója csak egy újsor karaktert ad a karakterláncba vagy fájlba nyomtatott szövegsorok végére, kocsivisszaváltást nem. Mind a Python 2, mind a Python 3 széles körben használatos, de kissé eltérően kezelik a nyomtatást.
Python 2-ben minden sorhoz saját maga adja hozzá a megfelelő végződést, és a bemenet után vesszőt fűz a print utasítás végéhez, hogy elnyomja a Python saját sorvégét. Például beírhatja a "print "Ez egy teszt" + "\r\n"" parancsot, hogy kinyomtassa a "Ez egy teszt" karakterláncot kocsivisszaállítással és újsorral.
A Python 3-ban a "print" inkább függvény, mint speciális operátor. Ehhez egy "end" nevű argumentum szükséges, amely megadja a használandó sorvégződést. A 'Print ("Ez egy teszt", end = "\r\n")' kiírja a mondatot kocsivissza és újsor karakterrel. Alapértelmezés szerint az end argumentum egyszerűen egy újsor karakter.