Jak używać Maketrans w Pythonie 3

Jak używać Maketrans w Pythonie 3
Maketrans () Funkcja jest wbudowaną metodą tłumaczenia w Pythonie używanym do tworzenia tabel konwersji mapowania znaków. Jedna postać jest przetłumaczona na inną postać za pomocą tej metody. Ta funkcja można zastosować do danych i danych słownika do mapowania znaków. Reicode reprezentacja znaku jest używana w tabeli tłumaczenia. Tłumaczyć() Funkcja służy do konwersji danych tabeli tłumaczenia na dane ciągów. Ten samouczek wyjaśni, jak Maketrans () Metodę można zastosować w Pythonie do mapowania znaków.

Składnia

strunowy.Maketrans (Arg1 [, arg2 [, arg3]])

Maketrans () Funkcja dotyczy treści strunowy wartość. Ta funkcja jest w stanie wziąć trzy argumenty. Pierwszy argument jest obowiązkowy, a pozostałe dwa argumenty są opcjonalne. Gdy w tej metodzie jest używany tylko jeden argument, argument będzie słownikiem. Gdy w tej metodzie zastosowano dwa argumenty, oba argumenty będą miały ciągi o tej samej długości. Gdy w tej metodzie użyto trzech argumentów, trzeci argument będzie ciągiem, który usunie znaki z danych ciągu. Zastosowania funkcji Maketrans () w danych i danych słownikowych pokazano w następujących przykładach.

Przykład 1: Używanie makeTrans () do przetłumaczenia klucza słownika

Poniższy skrypt pokazuje użycie funkcji Maketrans () dla danych słownika. Wcześniej wspomniano, że funkcja Maketrans () przyjmuje tylko jeden argument za zmienną słownika. Funkcja niestandardowa, nazwana Make_Translation (), jest używany tutaj do utworzenia tabeli tłumaczenia na podstawie dostarczonej wartości ciągu za pośrednictwem Maketrans () funkcjonować. Dwa Do Pętle i dwa liczniki są tutaj używane do wydrukowania prawidłowego znaku odwzorowanego przez każdy kod ASCII.

#!/usr/bin/env python3
# Zdefiniuj funkcję, aby przetłumaczyć słownik na tabelę tłumaczeń
def Make_Translation (Dictvar, Strvar):
# Utwórz tabelę tłumaczeń
trans_table = strvar.Maketrans (Dictvar)
Drukuj („Oryginalny słownik to: \ n”, dictvar)
Drukuj („Przewodniona tabela słownika to: \ n”, trans_table)
Drukuj („\ n”)
# Zainicjuj pierwszy licznik słownika
licznik 1 = 1
dla Key1 w Dictvar:
# Zainicjuj drugi licznik tabeli tłumaczeń
licznik 2 = 1
dla key2 w trans_table:
Jeśli liczba 1 == Counter2:
Drukuj („ %S jest przetłumaczone na %d” %(key1, key2))
przerwa
# Przyrost drugi licznik
licznik 2 = licznik 2 + 1
# Przyrost pierwszy licznik
licznik 1 = licznik 1 + 1
# Zdefiniuj słownik, w którym klucz jest ciągiem
dictdata = „A”: 90, „B”: 59, „C”: 81, „D”: 75
# Zdefiniuj listę znaków, aby przetłumaczyć
string = "abcd"
# Wywołaj funkcję tłumaczenia
Make_Translation (DictData, ciąg)

Wyjście:

Następujące dane wyjściowe pojawią się po uruchomieniu skryptu. Tabela tłumaczeń zawiera kod ASCII kluczowej wartości słownika.

Przykład 2: Używanie maketrans () do przetłumaczenia znaków łańcucha

Poniższy przykład pokazuje użycie Maketrans () z danymi ciągu. Dwie wartości łańcuchowe zostaną przyjęte jako tekst wyszukiwania i zastąpienie tekstu, a te wartości tekstu będą używane jako argumenty dla Maketrans () funkcjonować. Należy pamiętać, że długość zarówno danych wejściowych, jak i wyjściowych musi być taka sama, aby utworzyć tabelę tłumaczenia. W przeciwnym razie zostanie wygenerowany błąd. Tłumaczyć() Funkcja jest tutaj używana do konwersji danych tabeli tłumaczenia na wartości ciągów.

#!/usr/bin/env python3
# Wprowadź listę znaków, którą chcesz przetłumaczyć
Search = input („Wprowadź listę znaków wyszukiwania \ n”)
# Wprowadź listę znaków, którą chcesz wymienić
zamień = wejście („wprowadź listę znaków zastępujących \ n”)
# Sprawdź długość wyszukiwania i wymiany listy znaków
Jeśli len (wyszukiwanie) == len (zamień):
# Zdefiniuj dane ciągów
original_text = "+8801822594876"
# Utwórz tabelę tranlacji za pomocą maketrans ()
Modified_text = original_text.Maketrans (wyszukiwanie, zamień)
# Wydrukuj oryginalny tekst
drukuj („oryginalny tekst to:”, oryginał_text)
# Wydrukuj wyjście po zastosowaniu Maketrans ()
Drukuj („Wyjście tabeli mapowania to:”, Modified_Text)
# Wydrukuj wyjście po zastosowaniu Translate ()
Drukuj („Wymieniony tekst to:”, original_text.Tłumacz (Modified_Text)))
w przeciwnym razie:
wydrukuj („Długość tekstu wyszukiwania i Tekst zamień nie są równe”)

Wyjście

Po uruchomieniu skryptu, 856 jest traktowany jako znaki wyszukiwania i 487 jest traktowany jako Znaki Zastąpienie w następującym wyjściu. W tym przypadku 8 jest zastępowane 4, 5 jest zastępowane 8, a 6 jest zastępowane przez 7 w ciągu, '+8801822594878.„Zmodyfikowane wyjście to” +4401422894477.'

Przykład 3: Używanie maketrans () do tłumaczenia i usuwania znaków w ciągu

Poniższy przykład pokazuje zastosowania trzech argumentów za pomocą metody Maketrans (). Tutaj strunowy to główny ciąg, w którym znaki str1 zostanie przeszukany. Jeśli jakikolwiek znak pasuje do wybranego znaku, wówczas znak ten zostanie zastąpiony odpowiednim znakiem str2. Jeśli jakikolwiek charakter str3 pasuje do dowolnego charakteru strunowy zmienna, wówczas znak ten zostanie usunięty z strunowy zmienny. Metoda Maketrans () jest wywoływana z dwoma argumentami na jeden czas, a metoda Maketrans () jest wywoływana z trzema argumentami na inny czas.

#!/usr/bin/env python3
# Zdefiniuj główny ciąg
string = "Linux"
# Zdefiniuj listę znaków do wyszukiwania
str1 = "iu"
# Zdefiniuj listę znaków, aby zastąpić
str2 = „UI”
# Zdefiniuj listę znaków, aby usunąć
str3 = "l"
# Wydrukuj główny tekst
wydrukuj („oryginalny tekst:”, ciąg)
# Utwórz tabelę tłumaczeń
dict1 = ciąg.Maketrans (STR1, STR2)
Drukuj („\ n Tabela tłumaczeń: \ n”, DICT1)
wydrukuj („Zmodyfikowany ciąg:”, ciąg.Tłumacz (dict1))
# Utwórz tabelę tłumaczeń po usunięciu znaków
dict2 = ciąg.Maketrans (STR1, STR2, STR3)
Drukuj („\ n Tabela tłumaczenia po usunięciu znaków: \ n”, Dict2)
# Wydrukuj zmodyfikowany ciąg po przetłumaczeniu
wydrukuj („\ n zmodyfikowany ciąg po usunięciu:”, ciąg.Tłumacz (DICT2))

Wyjście

Następujące dane wyjściowe pojawia się po uruchomieniu skryptu. Tutaj, „ja” i „u” postaci ”Linux„są zastępowane przez znaki„ u ”i„ i ”, wywołując Maketrans () dwoma argumentami, a wyjście jest”Lunix.„Gdy metoda Maketrans () jest wywoływana z trzema argumentami, wówczas znak„ L ”jest usuwany przez trzeci argument, a wyjście jest”UNIX.'

Wniosek

Ten samouczek pokazuje, jak łatwo możesz zastąpić zawartość danych słownika lub string. Poszczególne znaki w łańcuchu można również usunąć za pomocą tej metody. Mam nadzieję, że przykłady pokazane w tym samouczku pomogą użytkownikom Python zrozumieć niektóre zastosowania metody Maketrans () i pokażą, jak prawidłowo zastosować tę metodę we własnym skrypcie.