Ho la stringa U, il suo contenuto è variabile. Mi piacerebbe renderlo una stringa grezza. Come faccio a fare questo?Python Raw Strings
Qualcosa di simile al metodo r ''.
U = str(var)
Ho la stringa U, il suo contenuto è variabile. Mi piacerebbe renderlo una stringa grezza. Come faccio a fare questo?Python Raw Strings
Qualcosa di simile al metodo r ''.
U = str(var)
le stringhe raw si applicano solo ai valori letterali stringa. esistono in modo da poter esprimere più convenientemente le stringhe che verrebbero modificate dall'elaborazione della sequenza di escape. Ciò è particolarmente utile quando si scrivono espressioni regolari o altre forme di codice in stringhe letterali. se si desidera una stringa unicode senza elaborazione di escape, basta prefissarlo con ur
, ad esempio ur'somestring'
.
Non mi aspetto che @TokenMacGuy lo sappia, ma sono anche utili per definire i percorsi su Windows che utilizza la barra rovesciata come carattere separatore nei percorsi, come 'r'C: \ Python27 \ Tools \ Scripts \ 2to3. py'' – martineau
Ahimè, TokenMacGuy è solo il nome. La mia macchina principale esegue windows. la * vera * ragione per cui non utilizzo le stringhe non elaborate per i percorsi file è perché non ho mai hardcode i nomi dei percorsi. – SingleNegationElimination
Le stringhe raw sono non un diverso tipo di stringa. Sono un modo diverso di descrivere una stringa nel codice sorgente. Una volta creata la stringa, è ciò che è.
+1 per l'uso raro e accurato di "è quello che è" – LoveMeSomeCode
questo è in realtà sbagliato. C'è un'altra risposta qui con la risposta corretta: "le stringhe grezze non sfuggono a nulla dentro di loro". – igorsantos07
credo che quello che stai cercando sia la funzione str.encode ("string-escape"). Ad esempio, se si dispone di una variabile che si desidera 'stringa raw':
a = '\x89'
a.encode('unicode_escape')
'\\x89'
Nota: utilizzare string-escape
per Python 2.xe versioni precedenti
ero alla ricerca di una soluzione simile e ha trovato la soluzione via: casting raw strings python
Le stringhe non elaborate sono solo una sintassi diversa quando si definisce una costante di stringa. Cosa vuoi in particolare da var che ti faccia pensare all'utilizzo di stringhe non elaborate? –
Stai usando Python 2 o Python 3? Se Python 3, stai forse chiedendo del tipo 'bytes'? –