Escape sekvenser i Python

Escape-sekvenser giver dig mulighed for at medtage specialtegn i strenge. For at gøre dette skal du blot tilføje et tilbageslag ( \) før det tegn, du vil undslippe.

Forestil dig for eksempel, at du initialiserede en streng med enkelt anførselstegn:

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

Produktion:

Hey, whats up?

Men hvis du inkluderer en apostrof uden at undslippe den, får du en fejl:

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

Produktion:

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

For at løse dette skal du bare undslippe apostrofen:

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

For at tilføje nye linjer til din streng skal du bruge \n:

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

Produktion:

Multiline strings can be created using escape sequences.

En vigtig ting at huske er, at hvis du vil inkludere et tilbageslagstegn i en streng, skal du undslippe det. For eksempel, hvis du vil udskrive en biblioteksti i Windows, skal du slippe for hver tilbageslag i strengen:

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

Produktion:

C:\Users\Pat\Desktop

Rå strenge

En streng kan bruges ved at prefikse strengen med reller R, hvilket gør det muligt at inkludere tilbageslag uden behov for at undslippe dem. For eksempel:

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

Produktion:

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

Men husk, at unescaped backslash i slutningen af ​​en rå streng vil forårsage og fejle:

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

Produktion:

 File "main.py", line 1 print(r"There's an unescaped backslash at the end of this string\") ^ SyntaxError: EOL while scanning string literal

Almindelige flugtsekvenser

Escape sekvens Betyder
\ Omvendt skråstreg ( \)
'' Enkelt tilbud ( ')
" Dobbelt tilbud ( ")
\ n ASCII Linefeed (tilføjer ny linje)
\ b ASCII Backspace

En komplet liste over escape-sekvenser kan findes her i Python-dokumenterne.