Piton

Kako se koriste maketrani u Pythonu 3

Kako se koriste maketrani u Pythonu 3
The maketrani () funkcija je ugrađena metoda prevođenja u Pythonu koja se koristi za stvaranje tablica pretvorbe mapiranja znakova. Ovom se metodom jedan lik prevodi u drugi znak. Ova se funkcija može primijeniti na niz podataka i rječnika na mape znakova. Unicode prikaz lika koristi se u prijevodnoj tablici. The Prevedi() funkcija koristi se za pretvorbu podataka tablice prijevoda u niz podataka. Ovaj tutorial objasnit će kako maketrani () metoda može se koristiti u Pythonu za mapiranje znakova.

Sintaksa

niz.maketrani (arg1 [, arg2 [, arg3]]])

The maketrani () funkcija odnosi se na sadržaj niz vrijednost. Ova funkcija može uzeti tri argumenta. Prvi je argument obvezan, a druga dva argumenta nisu obavezna. Kada se u ovoj metodi koristi samo jedan argument, tada će argument biti rječnik.  Kada se u ovoj metodi koriste dva argumenta, tada će oba argumenta biti nizovi iste duljine. Kada se u ovoj metodi koriste tri argumenta, tada će treći argument biti niz koji će ukloniti znakove iz podataka niza. Primjene funkcije maketrans () u nizovima i podacima rječnika prikazane su u primjerima koji slijede.

Primjer 1: Upotreba maketransa () za prijevod ključa rječnika

Sljedeća skripta prikazuje upotrebu funkcije maketrans () za podatke rječnika. Prije je spomenuto da funkcija maketrans () uzima samo jedan argument za varijablu rječnika. Prilagođena funkcija, nazvana make_translation (), ovdje se koristi za stvaranje tablice prijevoda na temelju pružene vrijednosti niza putem maketrani () funkcija. Dva za petlje i dva brojača ovdje se koriste za ispis ispravnog znaka koji je mapiran od svakog ASCII koda.

#!/ usr / bin / env python3
 
# Definirajte funkciju za prevođenje rječnika u prijevodnu tablicu
def make_translation (dictVar, strVar):
# Stvorite prijevodnu tablicu
trans_table = strVar.maketrani (dictVar)
print ("Izvorni rječnik je: \ n", dictVar)
print ("Prevedena tablica rječnika je: \ n", trans_table)
ispis ("\ n")
# Inicijalizirajte prvi brojač za rječnik
brojač1 = 1
za key1 u dictVar:
# Inicijalizirajte drugi brojač za tablicu prijevoda
brojač2 = 1
za key2 u trans_table:
ako je brojač1 == brojač2:
ispis ("% s je preveden na% d"% (tipka1, tipka2))
pauza
# Povećaj drugi brojač
brojač2 = brojač2 + 1
# Povećaj prvi brojač
brojač1 = brojač1 + 1
 
# Definirajte rječnik u kojem je ključ niz
dictData = "A": 90, "B": 59, "C": 81, "D": 75
# Definirajte popis znakova za prijevod
string = "ABCD"
# Pozovite funkciju prevođenja
make_translation (dictData, string)

Izlaz:

Sljedeći će se izlaz pojaviti nakon pokretanja skripte. Tablica prijevoda sadrži ASCII kod ključne vrijednosti rječnika.

Primjer 2: Upotreba maketrana () za prevođenje znakova niza

Sljedeći primjer prikazuje upotrebu maketrani () s nizovnim podacima. Dvije vrijednosti niza bit će uzete kao tekst pretraživanja i zamijeniti tekst, a te će se tekstne vrijednosti koristiti kao argumenti za maketrani () funkcija. Imajte na umu da duljina ulaznog i izlaznog teksta mora biti jednaka da bi se stvorila tablica prijevoda. U suprotnom, generirat će se pogreška. The Prevedi() ovdje se koristi funkcija za pretvaranje podataka tablice prijevoda u niz vrijednosti.

#!/ usr / bin / env python3
 
# Unesite popis znakova koji želite prevesti
search = input ("Unesite popis znakova za pretragu \ n")
# Unesite popis znakova koji želite zamijeniti
replace = input ("Unesite popis zamjenskih znakova \ n")
 
# Provjerite duljinu pretraživanja i zamjene popisa znakova
ako je len (pretraga) == len (zamjena):
 
# Definirajte niz podataka
izvorni_tekst = "+8801822594876"
# Stvorite tablicu prevoda pomoću maketransa ()
modificirani_tekst = izvorni_tekst.maketrani (tražiti, zamijeniti)
 
# Ispis originalnog teksta
ispis ("Izvorni tekst je:", original_text)
# Ispis rezultata nakon primjene maketrana ()
ispis ("Izlaz tablice mapiranja je:", modificirani_tekst)
# Ispis rezultata nakon primjene translate ()
print ("Zamijenjeni tekst je:", original_text.prevedi (izmijenjeni_tekst))
drugo:
print ("Duljina teksta za pretraživanje i zamjenskog teksta nije jednaka")

Izlaz

Nakon pokretanja skripte, 856 uzima se kao znakove za pretraživanje i 487 uzima se kao zamjenski znak u sljedećem izlazu. U ovom slučaju, 8 se zamjenjuje s 4, 5 se zamjenjuje s 8, a 6 se zamjenjuje sa 7 u nizu, '+8801822594878.'Modificirani izlaz je' +4401422894477.'

Primjer 3: Korištenje maketransa () za prevođenje i brisanje znakova u nizu

Sljedeći primjer prikazuje upotrebu tri argumenta s metodom maketrans (). Evo, niz je glavni niz, u kojem su znakovi str1 bit će pretražen. Ako se bilo koji znak podudara s odabranim znakom, tada će taj znak biti zamijenjen odgovarajućim znakom str2. Ako bilo koji lik od str3 podudara se s bilo kojim likom niz varijabla, tada će taj znak biti uklonjen iz niz varijabilna. Metoda maketrans () poziva se s dva argumenta za jedno vrijeme, a metoda maketrans () s tri argumenta za drugi put.

#!/ usr / bin / env python3
 
# Definirajte glavni niz
string = "Linux"
# Definirajte popis znakova za pretraživanje
str1 = "iu"
# Definirajte popis znakova koji će se zamijeniti
str2 = "Ui"
# Definirajte popis znakova za brisanje
str3 = "L"
 
# Ispis glavnog teksta
ispis ("Izvorni tekst:", niz)
 
# Stvorite prijevodnu tablicu
dict1 = niz.maketrani (str1, str2)
print ("\ nTablica prijevoda: \ n", dict1)
print ("Izmijenjeni niz:", niz.prevedi (dict1))
 
# Stvorite prijevodnu tablicu nakon brisanja znakova
dict2 = niz.maketrani (str1, str2, str3)
print ("\ nTablica prijevoda nakon brisanja znakova: \ n", dict2)
# ispiši modificirani niz nakon prijevoda
print ("\ nModificirani niz nakon brisanja:", niz.prevedi (dict2))

Izlaz

Sljedeći izlaz pojavljuje se nakon pokretanja skripte. Ovdje su znakovi 'i' i 'u'Linux'zamjenjuju se znakovima' U 'i' i 'pri pozivanju maketransa () s dva argumenta, a izlaz je'LUnix.'Kada se metoda maketrans () pozove s tri argumenta, tada se trećim argumentom briše znak' L ', a izlaz je'Unix.'

Zaključak

Ovaj vodič pokazuje kako lako možete zamijeniti sadržaj podataka rječnika ili niza pomoću metode maketrans (). Pomoću ove metode mogu se izbrisati i određeni znakovi unutar niza. Nadam se da će primjeri prikazani u ovom vodiču pomoći korisnicima Pythona da razumiju neke upotrebe metode maketrans () i pokazat će kako pravilno primijeniti ovu metodu u vlastitoj skripti.

Vodič za Shadow of the Tomb Raider za Linux
Shadow of the Tomb Raider dvanaesti je dodatak seriji Tomb Raider - franšizi u akcijsko-avanturističkoj igri koju je stvorio Eidos Montreal. I kritiča...
Kako pojačati FPS u Linuxu?
FPS je kratica Okviri u sekundi. Zadatak FPS-a je mjerenje broja sličica u reprodukcijama video zapisa ili igranim izvedbama. Jednostavnim riječima, b...
Najpopularnije laboratorijske igre Oculus App
Ako ste vlasnik slušalica Oculus, tada morate biti sigurni u bočno učitavanje. Bočno učitavanje postupak je instaliranja nehranjenog sadržaja na vaše ...