Ako pridať CRLF do reťazca v Pythone

Príklad funkcie počítačového kódu Python

Kredit za obrázok: matejmo/iStock/GettyImages

V Pythone sa CRLF vzťahuje na návrat vozíka a posun riadkov. Tento pár znakov sa používa na ukončenie riadkov textu v mnohých počítačových súboroch, modelovaných podľa akcií, ktoré používateľ písacieho stroja vykoná na konci riadku písania. V Pythone ich môžete manuálne pridať do reťazca pomocou operátorov zreťazenia reťazcov alebo môžete určiť, že sa majú pridať do reťazca, ktorý vytlačíte na obrazovku alebo do súboru.

Python a CRLF

Rôzne operačné systémy majú rôzne spôsoby, ako označiť, keď textový súbor obsahuje zalomenie riadku. Zvyčajne sa to robí kombináciou znakov návratu vozíka a riadkov, ktoré sú definované konkrétnymi číselnými kódmi.

Video dňa

Operačné systémy Microsoft tradične používajú návrat vozíka nasledovaný posunom riadku a systémy Unix vrátane Linuxu a najnovších verzií Apple macOS používajú iba posun jedného riadka. Staršie systémy Mac používali iba návrat jedného vozíka.

Mnoho programov na spracovanie textu dokáže zistiť, ktoré konce riadkov sú použité, a otvoriť ľubovoľný súbor tak, aby sa zobrazil normálne, ale text sa môže príležitostne pokaziť, ak program nie je nastavený tak, aby to odhadol alebo tak urobí nesprávne. Python je programovací jazyk, ktorý beží na širokej škále systémov, takže musí byť schopný zvládnuť rôzne typy zakončení riadkov.

Pridávanie koncov riadkov do reťazcov

Manuálne pridajte koniec riadku podľa vlastného výberu do reťazca v Pythone pomocou operátora zreťazenia znamienka plus, ktorý spája viacero reťazcov.

Napríklad „abc“ + „def“ vo výsledku poskytne reťazec „abcdef“. V Pythone je návrat vozíka reprezentovaný reťazcom \r a znak nového riadku je reprezentovaný reťazcom \n. Opačná lomka je únikový znak, ktorý hovorí Pythonu, že nasledujúci znak má špeciálny význam. Ak chcete zadať skutočnú opačnú lomku, vložte pred ňu druhú opačnú lomku, aby ju Python tiež opustil.

Ak chcete do reťazca pridať návrat vozíka a nový riadok, pridajte k nemu reťazec "\r\n" pomocou znamienka plus.

Tlač pomocou CRLF

Operátor tlače v Pythone 2 a funkcia tlače v Pythone 3 štandardne pridávajú na koniec každého riadku textu vytlačeného do reťazca alebo súboru iba znak nového riadku, nie znak návratu na začiatok riadku. Python 2 aj Python 3 sa bežne používajú, no zvládajú tlač trochu inak.

V Pythone 2 sami pridáte správny koniec do každého riadku a na koniec príkazu print za vstupom pridáte čiarku, aby sa potlačil vlastný koniec riadku Pythonu. Môžete napríklad zadať 'print "Toto je test" + "\r\n"' a vytlačiť reťazec "Toto je test" s návratom vozíka a novým riadkom.

V Pythone 3 je „tlač“ skôr funkciou než špeciálnym operátorom. Vyžaduje argument s názvom "end", ktorý určuje koniec riadku, ktorý sa má použiť. 'Print ("Toto je test", end = "\r\n")' vytlačí vetu s návratom vozíka a znakom nového riadku. V predvolenom nastavení je koncový argument jednoducho znak nového riadku.