Python – wie man eine "rohe" Zeichenfolge in eine normale Zeichenfolge umwandelt

In Python habe ich einen String wie folgt:

'\\x89\\n' 

Wie kann ich es in einen normalen String wie:

 '\x89\n' 

2 Solutions collect form web for “Python – wie man eine "rohe" Zeichenfolge in eine normale Zeichenfolge umwandelt”

Python 2 Byte Strings können mit dem 'string_escape' Codec decodiert werden:

 raw_string.decode('string_escape') 

Demo:

 >>> '\\x89\\n'.decode('string_escape') '\x89\n' 

Für Unicode- Literale verwenden Sie 'unicode_escape' . In Python 3, wo Strings standardmäßig Unicode-Strings sind, haben nur Byte-Strings eine .decode() -Methode:

 raw_byte_string.decode('unicode_escape') 

Wenn Ihre Eingabezeichenfolge bereits eine Unicode-Zeichenfolge ist, verwenden Sie codecs.decode() , um zu konvertieren:

 import codecs codecs.decode(raw_unicode_string, 'unicode_escape') 

Demo:

 >>> b'\\x89\\n'.decode('unicode_escape') '\x89\n' >>> import codecs >>> codecs.decode('\\x89\\n', 'unicode_escape') '\x89\n' 

Dies würde für Python 3 funktionieren:

 b'\\x89\\n'.decode('unicode_escape') 
  • Konvertieren von String (ohne Trennzeichen) zur Liste
  • Python-Saitenformat mit Liste und String
  • Sind Strings zwischengespeichert?
  • Ignorieren Sie den Fall in Python-Strings
  • Wie bekomme ich die visuelle Länge eines Textstrings in Python
  • Python: Nicht alle Argumente, die während der String-Formatierung konvertiert wurden
  • Wie unterscheidet sich \ v von \ x0b oder \ x0c?
  • Python - Umwandlung einer Zeichenfolge in eine Liste von int
  • Mimik Pythons Streifen () Funktion in C
  • Python String ersetzen funktioniert nicht
  • Python float - str - float weirdness
  • Python ist die beste Programmiersprache der Welt.