Sie mussen der Bibliothek re
eine Zeichenfolge bereitstellen, wenn Sie ein Objekt mit einem Zeichenfolgenmuster bearbeiten m√∂chten. Wenn Sie versuchen, ein Zeichenfolgenmuster fur ein Objekt zu verwenden, das mit den "Bytes‚" Datentyps, werden Sie auf "TypeError: kein Zeichenfolgenmuster fur ein byte√§hnliches Objekt verwenden‚" error.
In diesem Leitfaden erfahren Sie, was dieser Fehler bedeutet und warum er auftreten kann. Wir fuhren Sie durch ein Beispiel fur diesen Fehler, damit Sie sehen können, welche Schritte Sie unternehmen mussen, um den Fehler zu beheben.
TypeError: Kann kein Zeichenfolgenmuster fur ein Byte-√§hnliches Objekt verwenden
Bytes-Objekte enthalten eine Folge einzelner Bytes. Sie sind wie Strings unver√§nderlich, was bedeutet, dass sie nicht ge√§ndert werden k√∂nnen. Ein bytes-Objekt wird normalerweise zuruckgegeben, wenn Sie eine Bin√§rdatei lesen oder eine Bibliothek wie "request‚" um Daten von einer Website abzurufen.
Wenn Sie die re
-Bibliothek verwenden, mussen Sie entweder mit Bytes oder Objekten arbeiten. Sie können keine Zeichenfolgenmuster fur ein Byte-Objekt angeben und umgekehrt.
Wenn Sie mit Byte-Daten arbeiten, muss Ihr Programm ein Regex-Muster in Byte angeben. Wenn Sie Regex mit Strings verwenden, stellen Sie ein string-basiertes Regex-Muster bereit.
Ein Beispielszenario
Wir werden ein Programm schreiben, das den Titel einer Webseite abruft. Fur dieses Tutorial arbeiten wir mit der Python.Engineering-Website.
Zu Beginn lassen Sie uns die beiden benötigten Bibliotheken importieren um unser Programm zu erstellen: urllib und re.
Die urllib
-Bibliothek ermöglicht es uns, Webanfragen zu stellen und die re
-Bibliothek gibt uns die Möglichkeit, Regex in unserem Programm zu verwenden.
81 % der Teilnehmer gaben an, dass sie sich nach dem Besuch eines Bootcamps hinsichtlich ihrer Berufsaussichten im Tech-Bereich sicherer fuhlten. Lassen Sie sich noch heute in ein Bootcamp einweisen.
Der durchschnittliche Bootcamp-Absolvent verbrachte weniger als sechs Monate im Karriereubergang, vom Beginn eines Bootcamps bis zur Suche nach seinem ersten Job.
Als n√§chstes machen wir einen < eine href="/what-is-http/">Webanfrage an die Python.Engineering-Homepage:
Das Programm ruft den Inhalt von die Karriere-Karma-Homepage. Diese Daten werden mit der Methode read()
gelesen, die Teil der Methode urlopen()
ist. Wir speichern diese Daten im "res‚" variable.