Le sequenze di escape ti permettono di includere caratteri speciali nelle stringhe. Per fare questo, aggiungete semplicemente un backslash (\) prima del carattere che volete sfuggire.

Per esempio, immagina di aver inizializzato una stringa con virgolette singole:

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

Output:

Hey, whats up?

Ma se includi un apostrofo senza escape, otterrai un errore:

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

Output:

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

Per risolvere il problema, fai l’escape dell’apostrofo:

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

Per aggiungere newlines alla tua stringa, usa \n:

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

Output:

Multiline stringscan be createdusing escape sequences.

Una cosa importante da ricordare è che, se vuoi includere un carattere backslash in una stringa, dovrai fare l’escape. Per esempio, se vuoi stampare un percorso di directory in Windows, dovrai fare l’escape di ogni backslash nella stringa:

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

Output:

C:\Users\Pat\Desktop

Stringhe grezze

Una stringa grezza può essere usata facendo precedere la stringa da r o R, che permette di includere backslash senza bisogno di escape. Per esempio:

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

Output:

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

Ma tieni presente che i backslash senza escape alla fine di una stringa grezza causeranno un errore:

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
\2858> Backslash (\)
Citazione singola (')
Double quote (")
\n ASCII Linefeed (aggiunge newline)
\b ASCII Backspace

Una lista completa di sequenze di escape può essere trovata qui nella documentazione Python.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.