O module tokenize
Jak sama nazwa wskazuje, moduł tokenize można użyć do tworzenia „tokenów” z akapitu lub części tekstu. Każdy pojedynczy zepsuty kawałek powrócił po procesie tokenizacji nazywany tokenem. Po tokenizowaniu tekstu możesz zaimplementować własną logikę w programie Python, aby przetwarzać tokeny zgodnie z przypadkiem użycia. Moduł tokenize zapewnia kilka przydatnych metod, które można użyć do tworzenia tokenów. Wykorzystanie tych metod można najlepiej zrozumieć za pomocą przykładów. Niektóre z nich są wyjaśnione poniżej.
Tokenizowanie akapitu lub wyroku
Możesz tokenizować akapit lub zdanie za pomocą słów oddzielonych przestrzenią za pomocą próbki kodu wyjaśnionej poniżej.
importować tokenizePierwsze dwa stwierdzenia importują niezbędne moduły Pythona wymagane do przekształcenia kawałka tekstu na indywidualne tokeny. Zmienna o nazwie „tekst” zawiera przykładowy ciąg. Następnie wywoływana jest metoda „tokenize” z modułu tokenize. Wykorzystuje metodę „odczytu” jako obowiązkowego argumentu. Ponieważ zmienna tekstowa jest typu „str”, użycie jej bezpośrednio spowoduje błąd. Argument LILINE jest metodą, która musi zwracać bajty zamiast ciągu, aby metoda tokenize działała poprawnie. Korzystając z klasy „bajtesio”, tekst jest konwertowany na strumień bajtów, określając typ kodowania.
Metoda tokenize generuje nazwany krotek zawierający pięć typów: typ (typ tokena), ciąg (nazwa tokena), start (pozycja początkowa tokena), koniec (pozycja końcowa tokena) i linia (linia (linia linii To było używane do tworzenia tokenów). Więc po uruchomieniu powyższej próbki kodu należy uzyskać wyjście podobne do tego:
Tokeninfo (type = 62 (kodowanie), string = 'utf-8', start = (0), end = (0, 0), line = ")Jak widać na powyższym wyjściu, metoda tokenize generuje „Tokeninfo”Obiekt z pięcioma typami wymienionymi powyżej. Jeśli chcesz uzyskać dostęp do tego typu indywidualnie, użyj notacji kropkowej (jak pokazano w poniższym próbce kodu).
importować tokenizePo uruchomieniu powyższej próbki kodu należy uzyskać następujące dane wyjściowe:
Zauważ, że „T.typ„Wywołanie zwraca stały numer dla typu tokena. Jeśli chcesz bardziej czytelnego typu tokena, użyj „znak”Moduł i„Tok_name„Dostępny w nim słownik.
importować tokenizeDostarczając „t.Wpisz „stały na słownik„ tok_name ”, możesz uzyskać czytelną nazwę człowieka dla typu tokena. Po uruchomieniu powyższej próbki kodu należy uzyskać następujące dane wyjściowe:
UTF-8 (0, 0) (0, 0)Pełna lista wszystkich rodzajów tokenów i ich nazwiska jest dostępne tutaj. Zauważ, że pierwszy token jest zawsze typem kodowania strumienia wejściowego i nie ma wartości początkowej i końcowej.
Możesz łatwo uzyskać listę nazwy tokenów za pomocą instrukcji lub rozumiania listy pętli, jak pokazano w poniższej próbce kodu.
importować tokenizePo uruchomieniu powyższej próbki kodu należy uzyskać następujące dane wyjściowe:
[„Utf-8”, „LoreM”, „ipsum”, „dolor”, „sit”, „amet”, ”,”, „konsekttur”, „adipiscing”, „elit”, ”,„, „sed” , 'do', 'eiusmod', 'tempor', 'incididunt', 'ut', 'labore', 'et', 'dolore', 'magna', 'aliqua', '.', ","]Możesz użyć metody „Geneate_tokens” dostępnej w module tokenize, jeśli chcesz tokenizować ciąg bez przekształcania go w bajty. Nadal podejmuje metodę odczytu, który jest obowiązkowym argumentem, ale obsługuje tylko ciągi zwrócone metodą Readline, a nie bajty (w przeciwieństwie do metody tokenize wyjaśnionej powyżej). Poniższa próbka kodu ilustruje użycie metody generate_tokens. Zamiast klasy bajtejskiej, teraz używana jest klasa „stringio”.
importować tokenizePo uruchomieniu powyższej próbki kodu należy uzyskać następujące dane wyjściowe:
['Lorem', 'ipsum', 'dolor', 'sit', 'amet', ',', 'consectetur', 'adipiscing', 'elit', ',', 'sed', 'do', ' eiusmod ', „Tempor”, „incididunt”, „ut”, „labore”, „et”, „dolore”, „magna”, „aliqua”,', ','.', ","]Tokenizowanie zawartości pliku
Możesz użyć instrukcji „z otwartą” w trybie „RB”, aby bezpośrednio odczytać zawartość pliku, a następnie tokenizować. Tryb „R” w „RB” oznacza tryb tylko do odczytu, podczas gdy „B” oznacza tryb binarny. Poniższa próbka kodu otwiera „próbkę.plik txt ”i tokenizuje jego zawartość za pomocą metod tokenize i odczytu linii.
importować tokenizeMożesz także użyć „Otwórz”, metody wygody dostępnej w module tokenize, a następnie wywołać generat_tokens i metody odczytu, aby bezpośrednio tworzyć tokeny z pliku.
importować tokenizeZakładając, że próbka.plik txt zawiera ten sam przykładowy ciąg, należy uzyskać następujące dane wyjściowe po uruchomieniu dwóch próbek kodów wyjaśnionych powyżej.
['Lorem', 'ipsum', 'dolor', 'sit', 'amet', ',', 'consectetur', 'adipiscing', 'elit', ',', 'sed', 'do', ' eiusmod ', „Tempor”, „incididunt”, „ut”, „labore”, „et”, „dolore”, „magna”, „aliqua”,', ','.', ","]Wniosek
Moduł tokenize w Python zapewnia użyteczny sposób na tokenizację fragmentów tekstu zawierające. Tworzy także mapę początkowych i końcowych pozycji tokenów. Jeśli chcesz tokenizować każde słowo tekstu, metoda tokenize jest lepsza niż metoda „podzielona”, ponieważ zajmuje się również tokenizującymi postaciami interpunkcyjnymi / innymi symbolami, a także zapiera typ tokena.