Hogyan adhatunk CRLF-et egy karakterlánchoz a Pythonban

Python számítógépes kód példafüggvény

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.