Afbeelding tegoed: matejmo/iStock/GettyImages
In Python verwijst CRLF naar een regelterugloop en regelinvoer. Dit paar tekens wordt gebruikt om tekstregels in veel computerbestanden te beëindigen, gemodelleerd naar de acties die een typemachinegebruiker onderneemt aan het einde van een regel typen. In Python kun je ze handmatig aan een tekenreeks toevoegen met behulp van tekenreeksaaneenschakelingsoperatoren, of je kunt specificeren dat ze moeten worden toegevoegd aan een tekenreeks die je op het scherm of een bestand afdrukt.
Python en CRLF
Verschillende besturingssystemen hebben verschillende manieren om aan te geven wanneer een tekstbestand een regeleinde bevat. Het wordt meestal gedaan met een combinatie van de regelterugloop- en regelinvoertekens, die worden gedefinieerd door bepaalde numerieke codes.
Video van de dag
Traditioneel gebruiken Microsoft-besturingssystemen een regelterugloop gevolgd door een regelinvoer, en Unix-systemen, waaronder Linux en recente versies van Apple macOS, gebruiken slechts een enkele regelinvoer. Oudere Mac-systemen gebruikten slechts een enkele regelterugloop.
Veel tekstverwerkingsprogramma's kunnen detecteren welke regeleindes worden gebruikt en elk bestand openen zodat het wordt weergegeven normaal, maar tekst kan af en toe worden verminkt als een programma niet is ingesteld om deze gok te maken of dit doet onjuist. Python is een programmeertaal die op een groot aantal verschillende systemen draait, dus het moet in staat zijn om verschillende soorten regeleindes aan te kunnen.
Regeleindes toevoegen aan strings
Voeg handmatig een regeleinde naar keuze toe aan een tekenreeks in Python met behulp van de aaneenschakelingsoperator voor plustekens, die meerdere tekenreeksen samenvoegt.
Bijvoorbeeld, "abc" + "def" levert als resultaat de tekenreeks "abcdef". In Python wordt een regelterugloop weergegeven door de tekenreeks \r en een teken voor een nieuwe regel wordt weergegeven door de tekenreeks \n. De backslash is een escape-teken dat Python vertelt dat het volgende teken een speciale betekenis heeft. Om een echte backslash te typen, plaatst u een tweede backslash ervoor zodat Python er ook aan ontsnapt.
Om een regelterugloop en een nieuwe regel aan een tekenreeks toe te voegen, voegt u de tekenreeks "\r\n" eraan toe met het plusteken.
Afdrukken met CRLF
Standaard voegen de print-operator in Python 2 en de printfunctie in Python 3 alleen een teken voor een nieuwe regel toe, geen regelterugloop, aan het einde van elke regel tekst die is afgedrukt naar een tekenreeks of een bestand. Zowel Python 2 als Python 3 worden veel gebruikt, maar ze gaan iets anders om met afdrukken.
Op Python 2 voeg je zelf het juiste einde toe aan elke regel en voeg je een komma toe aan het einde van het printstatement na de invoer om Python's eigen regeleinde te onderdrukken. U kunt bijvoorbeeld 'print "Dit is een test" + "\r\n"' invoeren om de tekenreeks "Dit is een test" af te drukken met een regelterugloop en een nieuwe regel.
In Python 3 is "print" een functie in plaats van een speciale operator. Er is een argument nodig met de naam "end" dat het regeleinde specificeert dat moet worden gebruikt. 'Print ("Dit is een test", end = "\r\n")' drukt de zin af met een regelterugloop en een nieuwregelteken. Standaard is het eindargument gewoon een teken voor een nieuwe regel.