Escape-sekvenser gör det möjligt att inkludera specialtecken i strängar. För att göra detta lägger du helt enkelt till ett backslash (\) före det tecken du vill undslippa.

Föreställ dig till exempel att du initialiserat en sträng med enkla citattecken:

s = 'Hey, whats up?'print(s)

Output:

Hey, whats up?

Men om du inkluderar en apostrof utan att undkomma den får du ett fel:

s = 'Hey, what's up?'print(s)

Output:

 File "main.py", line 1 s = 'Hey, what's up?' ^SyntaxError: invalid syntax

För att åtgärda detta undkommer du helt enkelt apostrofen:

s = 'Hey, what\'s up?'print(s)

För att lägga till nya rader i strängen använder du \n:

print("Multiline strings\ncan be created\nusing escape sequences.")

Output:

Multiline stringscan be createdusing escape sequences.

En viktig sak att komma ihåg är att om du vill inkludera ett backslash-tecken i en sträng måste du undvika det. Om du till exempel vill skriva ut en katalogsökväg i Windows måste du undvika varje backslash i strängen:

print("C:\Users\Pat\Desktop")

Output:

C:\Users\Pat\Desktop

Råa strängar

En obearbetad sträng kan användas genom att prefixera strängen med r eller R, vilket gör det möjligt att inkludera backslashes utan att du behöver undvika dem. Till exempel:

print(r"Backslashes \ don't need to be escaped in raw strings.")

Output:

Backslashes \ don't need to be escaped in raw strings.

Men kom ihåg att backslashes i slutet av en obehandlad sträng som inte är markerade kommer att orsaka ett fel:

print(r"There's an unescaped backslash at the end of this string\")

Output:

 File "main.py", line 1 print(r"There's an unescaped backslash at the end of this string\") ^SyntaxError: EOL while scanning string literal
Escape Sequence Meaning
\ Backslash (\)
Enkla citationstecken (')
Double citationstecken (")
\n ASCII Linefeed (lägger till ny rad)
\b ASCII Backspace

En fullständig lista över undvikande sekvenser finns här i Pythons dokumentation.

Lämna ett svar

Din e-postadress kommer inte publiceras.