Python-Syntaxfehler: Nicht-ASCII-Zeichen xe2 in Datei

Zeeshan Afridi 21 Juni 2023
  1. Was sind ASCII-Codes
  2. Was ist der SyntaxError: Non-ASCII character '\xe2' in File in Python
  3. So beheben Sie den SyntaxError: Non-ASCII character '\xe2' in File in Python
  4. Abschluss
Python-Syntaxfehler: Nicht-ASCII-Zeichen xe2 in Datei

Dieser Fehler zeigt an, dass Sie ein Nicht-ASCII-Zeichen in Ihren Code schreiben. Beim Kompilieren wird der Interpreter verwirrt und wirft den SyntaxError: Non-ASCII character '\xe2'.

ASCII-Zeichen verwenden dieselbe Codierung wie die ersten 128 Zeichen von UTF-8, sodass ASCII-Text mit UTF-8 kompatibel ist. Zunächst müssen Sie den Unterschied zwischen ASCII- und Nicht-ASCII-Zeichen verstehen.

Was sind ASCII-Codes

ASCII ist das beliebteste Zeichenkodierungsformat für Textdaten auf Computern und im Internet (American Standard Code for Information Interchange).

Es gibt unterschiedliche Werte für 128 zusätzliche alphabetische, numerische, Sonder- und Steuerzeichen in ASCII-codierten Daten.

Was ist der SyntaxError: Non-ASCII character '\xe2' in File in Python

Der Hauptgrund für diesen Fehler ist, dass Sie ein Zeichen lesen, das von Ihrem Python-Compiler nicht erkannt wird.

Probieren wir zum Beispiel das Symbol £, das der Python-Interpreter nicht erkennt.

string = "£"
fp = open("test.txt", "w+")

fp.write("%s" % string)
print(string)

Ausgang:

SyntaxError: Non-ASCII character '\xe2'

Das Symbol £ wird vom Interpreter nicht erkannt, daher gibt es einen SyntaxError: Non-ASCII character '\xe2' aus.

So beheben Sie den SyntaxError: Non-ASCII character '\xe2' in File in Python

Hier haben wir oben im Programm die Anweisung #coding: utf-8 eingefügt. Dieser Code erstellt eine Datei test.txt, in der der Wert £ gespeichert ist, und wird wie gezeigt in der Ausgabe gedruckt.

Codebeispiel:

# coding: utf-8
string = "£"
fp = open("test.txt", "w+")

fp.write("%s" % string)
print(string)

Ausgang:

£

Beim Lesen des PEP, das der Fehler liefert, heißt es, dass das £ kein ASCII-Zeichen ist, trotz der Versuche Ihres Codes, es zu verwenden. Verwenden Sie UTF-8-Kodierung, wenn Sie können, und setzen Sie #-Kodierung: utf-8 an den Anfang Ihres Programms, um loszulegen.

Um komplexer zu werden, können Sie in Ihrem Code sogar Codierungen Zeichenfolge für Zeichenfolge deklarieren. Sie benötigen jedoch einen Encoder, der dies in der gesamten Datei unterstützt, wenn Sie versuchen, das Literal £ zu Ihrem Code hinzuzufügen.

Sie können auch die unten angegebenen Codezeilen hinzufügen.

#!/usr/bin/env python
# -*- coding: utf-8 -*-

Abschluss

Nicht-ASCII ist in Python nicht erlaubt, da der Interpreter es als SyntaxError behandelt. Python kann und sollte nicht versuchen zu bestimmen, welche Zeichenkette eine Folge von Bytes außerhalb des ASCII-Bereichs darstellt.

Um diesen Fehler zu beheben, müssen Sie oben in Ihrem Programm coding: utf-8 hinzufügen.

Zeeshan Afridi avatar Zeeshan Afridi avatar

Zeeshan is a detail oriented software engineer that helps companies and individuals make their lives and easier with software solutions.

LinkedIn

Verwandter Artikel - Python Error