Über das Tokenize -Modul
Wie der Name schon sagt, kann das Tokenize -Modul verwendet werden, um „Token“ aus einem Absatz oder einem Teil des Textes zu erstellen. Jedes einzelne gebrochene Stück kehrte zurück, nachdem der Tokenisierungsprozess als Token bezeichnet wurde. Sobald Sie einen Text tokenisieren, können Sie Ihre eigene Logik in Ihrem Python -Programm implementieren, um die Token gemäß Ihrem Anwendungsfall zu verarbeiten. Das Tokenize -Modul bietet einige nützliche Methoden, mit denen Token erstellt werden können. Die Verwendung dieser Methoden kann am besten anhand von Beispielen verstanden werden. Einige von ihnen werden unten erklärt.
Tokenisierung eines Absatzes oder Satzes
Sie können einen Absatz oder einen Satz mit platz getrennten Wörtern unter Verwendung des unten erläuterten Codeprobes tokenisieren.
Tokenize importierenDie ersten beiden Aussagen importieren die erforderlichen Python -Module, die für die Umwandlung eines Textstücks in einzelne Token erforderlich sind. Eine Variable namens "Text" enthält eine Beispielzeichenfolge. Als nächstes wird die Methode "Tokenize" aus dem Tokenize -Modul genannt. Es verwendet die "Readline" -Methode als obligatorisches Argument. Da die Textvariable vom Typ „STR“ ausgeht, wirft die Verwendung direkter Verwendung einen Fehler auf. Das Readline -Argument ist eine aufrufbare Methode, die Bytes anstelle einer Zeichenfolge zurückgeben muss, damit die Tokenize -Methode korrekt funktioniert. Mit der Klasse „Bytesio“ wird der Text durch Angabe eines Codierungsarts in einen Byt -Strom konvertiert.
Die Tokenize -Methode generiert ein benanntes Tupel mit fünf Typen: Typ (Typ des Tokens), String (Name des Tokens), Start (Startposition des Tokens), End (Endposition des Tokens) und Zeile (Zeile (die Zeile Das wurde zum Erstellen von Token verwendet). Nachdem Sie das obige Code -Beispiel ausgeführt haben, sollten Sie eine ähnliche Ausgabe wie folgt erhalten:
Tokeninfo (Typ = 62 (Codierung), String = 'utf-8', start = (0, 0), End = (0, 0), Line = ")Wie Sie in der obigen Ausgabe sehen können, generiert die Tokenize -Methode eine “TokeninfoObjekt mit fünf oben genannten Typen. Wenn Sie auf diese Typen einzeln zugreifen möchten, verwenden Sie die Punktnotation (wie in der folgenden Code -Stichprobe gezeigt).
Tokenize importierenNachdem Sie das obige Code -Beispiel ausgeführt haben, sollten Sie die folgende Ausgabe erhalten:
Notiere dass der "T.TypCall gibt eine konstante Zahl für den Token -Typ zurück. Wenn Sie einen typisch mehr menschlich lesbarer Token wünschen, verwenden Sie die “Zeichen”Modul und die“TOK_NAME”Wörterbuch erhältlich darin.
Tokenize importierenDurch Lieferung “t.Geben Sie "Konstante auf" Tok_name "-Dictionary ein. Sie können einen menschlichen lesbaren Namen für den Token -Typ erhalten. Nachdem Sie das obige Code -Beispiel ausgeführt haben, sollten Sie die folgende Ausgabe erhalten:
UTF-8 (0, 0) (0, 0) CodierungEine vollständige Liste aller Token -Typen und ihrer Namen ist hier verfügbar. Beachten Sie, dass das erste Token immer der Codierungstyp des Eingabestreams ist und keinen Start- und Endwert hat.
Sie können problemlos eine Liste von gerechten Token -Namen erhalten, die für Schleifenanweisungen oder Listenverständnisse verwendet werden, wie im folgenden Code -Beispiel gezeigt.
Tokenize importierenNachdem Sie das obige Code -Beispiel ausgeführt haben, sollten Sie die folgende Ausgabe erhalten:
['UTF-8', 'Lorem', 'Ipsum', 'Dolor', 'Sit', 'Amet', ',' Consectetur ',' Adipiscing ',' Elit ',', 'SED' , 'do', 'eiusmod', 'tempor', 'incididunt', 'ut', 'labore', 'et', 'Dolore', 'Magna', 'Aliqua', ''.', ","]Sie können die im Tokenize -Modul verfügbare Methode "generate_tokens" verwenden, wenn Sie eine Zeichenfolge tokenisieren möchten, ohne sie in Bytes zu konvertieren. Es dauert immer noch eine Callable Readline -Methode als obligatorisches Argument, aber es behandelt nur Zeichenfolgen, die von der Readline -Methode zurückgegeben wurden und nicht von Bytes (im Gegensatz zur oben erläuterten Tokenize -Methode). Das folgende Code -Beispiel zeigt die Verwendung der Methode generate_tokens. Anstelle der Bytesio -Klasse wird jetzt die "Stringio" -Klasse verwendet.
Tokenize importierenNachdem Sie das obige Code -Beispiel ausgeführt haben, sollten Sie die folgende Ausgabe erhalten:
['Lorem', 'Ipsum', 'Dolor', 'Sit', 'Amet', ',', "Consectetur ',' Adipiscing ',' Elit ',', 'Sed', 'Do', '' '', '' '' Eiusmod ',' tempor ',' incididunt ',' ut ',' labore ',' et ',' Dolore ',' Magna ',' Aliqua ',' '.', ","]Tokenisierungsinhalte einer Datei
Sie können die Anweisung "mit offener" -Modus "mit offener" Modus verwenden, um den Inhalt einer Datei direkt zu lesen und sie dann zu tokenisieren. Der "R" im "RB" -Modus steht für den schreibgeschützten Modus, während "B" für den Binärmodus steht. Die nachstehende Code -Probe öffnet eine „Probe.TXT ”-Datei und tokenisiert ihren Inhalt mit den Methoden zur Tokenize- und Readline.
Tokenize importierenSie können auch "Open" verwenden, eine im Tokenize -Modul verfügbare Convenience -Methode und dann Call generate_tokens und Readline -Methoden, um Token aus einer Datei direkt zu erstellen.
Tokenize importierenAngenommen, die Probe.Die TXT -Datei enthält denselben Beispielzeichen.
['Lorem', 'Ipsum', 'Dolor', 'Sit', 'Amet', ',', "Consectetur ',' Adipiscing ',' Elit ',', 'Sed', 'Do', '' '', '' '' Eiusmod ',' tempor ',' incididunt ',' ut ',' labore ',' et ',' Dolore ',' Magna ',' Aliqua ',' '.', ","]Abschluss
Das Tokenize-Modul in Python bietet einen nützlichen Weg, um Textbrocken mit räumlich getrennten Wörtern zu tokenisieren. Es schafft auch eine Karte von Start- und Beendungspositionen von Tokens. Wenn Sie jedes einzelne Wort eines Textes tokenisieren möchten, ist die Tokenize -Methode besser als die „Split“.