Python

Maketransi kasutamine Python 3-s

Maketransi kasutamine Python 3-s
The maketrans () function on Pythonis sisseehitatud tõlkemeetod, mida kasutatakse märkide vastendamise teisendustabelite loomiseks. Selle meetodi abil tõlgitakse üks märk teiseks tähemärgiks. Seda funktsiooni saab rakendada stringide ja sõnastike andmetele märkide kaardistamiseks. Tõlketabelis kasutatakse märgi Unicode'i esitust. The tõlkima () Funktsiooni kasutatakse tõlketabeli andmete teisendamiseks stringiandmeteks. Selles õpetuses selgitatakse, kuidas maketrans () meetodit saab Pythonis kasutada märkide kaardistamiseks.

Süntaks

string.maketrans (arg1 [, arg2 [, arg3]])

The maketrans () Funktsioon kehtib string väärtus. See funktsioon on võimeline võtma kolm argumenti. Esimene argument on kohustuslik ja ülejäänud kaks argumenti on valikulised. Kui selles meetodis kasutatakse ainult ühte argumenti, on see argument sõnastik.  Kui selles meetodis kasutatakse kahte argumenti, on mõlemad argumendid ühepikkused stringid. Kui selles meetodis kasutatakse kolme argumenti, on kolmas argument string, mis eemaldab stringiandmetest märgid. Funktsiooni maketrans () kasutusalad stringide ja sõnastike andmetes on toodud järgnevates näidetes.

Näide 1: Maketrans () kasutamine sõnaraamatu võtme tõlkimiseks

Järgmine skript näitab funktsiooni maketrans () kasutamist sõnastikuandmete jaoks. Enne mainiti, et funktsioon maketrans () võtab sõnastiku muutuja jaoks ainult ühe argumendi. Kohandatud funktsioon nimega make_translation (), kasutatakse siin tõlketabeli loomiseks pakutava stringi väärtuse põhjal maketrans () funktsioon. Kaks eest silmuseid ja kahte loendurit kasutatakse siin iga ASCII-koodi kaardistatud õige märgi printimiseks.

#!/ usr / bin / env python3
 
# Määratlege sõnastiku tõlkimistabelisse tõlkimise funktsioon
def make_translation (dictVar, strVar):
# Looge tõlketabel
trans_table = strVar.maketrans (dictVar)
print ("Algne sõnastik on: \ n", dictVar)
print ("Sõnastiku tõlgitud tabel on: \ n", trans_table)
print ("\ n")
# Alustage sõnastiku esimene loendur
loendur1 = 1
võtme1 jaoks dictVaris:
# Alustage tõlketabeli teine ​​loendur
loendur2 = 1
võtme2 jaoks trans_table:
kui loendur1 == loendur2:
print ("% s tõlgitakse% d-ks"% (key1, key2))
murda
# Suurendage teist loendurit
loendur2 = loendur2 + 1
# Suurendage esimest loendurit
loendur1 = loendur1 + 1
 
# Määratlege sõnastik, kus võti on string
dictData = "A": 90, "B": 59, "C": 81, "D": 75
# Määrake tõlgitavate märkide loend
string = "ABCD"
# Helistage tõlkefunktsioonile
make_translation (dictData, string)

Väljund:

Pärast skripti käivitamist ilmub järgmine väljund. Tõlketabel sisaldab sõnastiku võtmeväärtuse ASCII-koodi.

Näide 2: Maketrans () kasutamine stringi märkide tõlkimiseks

Järgmine näide näitab maketrans () stringiandmetega. Kaks stringi väärtust võetakse otsingu tekstina ja asendatakse tekst ning neid teksti väärtusi kasutatakse maketrans () funktsioon. Peaksite meeles pidama, et nii sisendi kui ka väljundi teksti pikkus peab tõlketabeli loomiseks olema sama. Vastasel juhul luuakse viga. The tõlkima () Funktsiooni kasutatakse siin tõlketabeli andmete teisendamiseks stringi väärtusteks.

#!/ usr / bin / env python3
 
# Sisestage märkide loend, mille soovite tõlkida
search = input ("Sisestage otsitavate märkide loend \ n")
# Sisestage märkide loend, mille soovite asendada
Replace = input ("Sisestage asendavate märkide loend \ n")
 
# Kontrollige otsimise ja märkide loendi asendamise pikkust
kui len (otsing) == len (asenda):
 
# Määrake stringi andmed
original_text = "+8801822594876"
# Looge transatlatsioonitabel maketransi () abil
muudetud_tekst = algne_tekst.maketrans (otsi, asenda)
 
# Printige originaaltekst
print ("Algtekst on:", original_text)
# Prindi väljund pärast maketransi () rakendamist
print ("Kaarditabeli väljund on:", modifitseeritud_tekst)
# Printige väljund pärast tõlke () rakendamist
print ("Asendatud tekst on:", originaalne_tekst.tõlkima (muudetud_tekst))
muu:
print ("Otsitava teksti pikkus ja teksti asendamine pole võrdsed")

Väljund

Pärast skripti käivitamist, 856 võetakse otsingumärkidena ja 487 võetakse asendusmärkideks järgmises väljundis. Sel juhul asendatakse stringis 8 numbriga 4, 5 asendatakse numbriga 8 ja stringis 6 asendatakse numbriga 7, '+8801822594878.'Muudetud väljund on' +4401422894477."

Näide 3: maketrans () kasutamine stringi märkide tõlkimiseks ja kustutamiseks

Järgmine näide näitab kolme argumenti kasutamist meetodiga maketrans (). Siin, string on peamine string, kus tähemärgid str1 otsitakse. Kui mõni märk sobib valitud tähemärgiga, asendatakse see märk vastava tähemärgiga str2. Kui mõni märk on str3 sobib mis tahes tähemärgiga string muutuja, siis see märk eemaldatakse string muutuv. Maketrans () meetodit kutsutakse ühe korraga kahe argumendiga ja maketrans () meetodit kolmeks ajaks kolmeks argumendiks.

#!/ usr / bin / env python3
 
# Määratlege peamine string
string = "Linux"
# Määrake otsitavate märkide loend
str1 = "iu"
# Määratlege asendatavate märkide loend
str2 = "Ui"
# Määratlege kustutatavate märkide loend
str3 = "L"
 
# Printige põhitekst
print ("Algtekst:", string)
 
# Looge tõlketabel
dict1 = string.maketrans (str1, str2)
print ("\ nTõlketabel: \ n", dict1)
print ("Muudetud string:", string.tõlkima (dict1))
 
# Looge tõlgitabel pärast märkide kustutamist
dict2 = string.maketrans (str1, str2, str3)
print ("\ nTõlketabel pärast märkide kustutamist: \ n", dict2)
# printige muudetud string pärast tõlkimist
print ("\ nMuudetud string pärast kustutamist:", string.tõlkima (dict2))

Väljund

Pärast skripti käivitamist kuvatakse järgmine väljund. Siin tähtede „i” ja „u” tähemärgidLinux"asendatakse maketrans () -i kutsumisel kahe argumendiga tähtedega" U "ja" i "ning väljund on"LUnix."Kui maketrans () meetodit kutsutakse kolme argumendiga, siis kolmanda argumendi abil kustutatakse märk" L "ja väljund on"Unix."

Järeldus

See õpetus näitab, kui hõlpsalt saate sõnaraamatu või stringiandmete sisu maketrans () meetodi abil asendada. Selle meetodi abil saab stringi konkreetseid märke kustutada. Loodan, et selles õpetuses toodud näited aitavad Pythoni kasutajatel mõista meetodi maketrans () mõningaid kasutusviise ja näitavad, kuidas seda meetodit oma skriptis õigesti rakendada.

Kuidas mängu Linuxis arendada
Kümme aastat tagasi ei osanud paljud Linuxi kasutajad ennustada, et nende lemmikoperatsioonisüsteem on ühel päeval populaarne kommertsvideomängude män...
Kommertsmängumootorite avatud lähtekoodiga sadamad
Tasuta, avatud lähtekoodiga ja platvormidevaheliste mängumootorite puhkusereise saab kasutada nii vanade kui ka mõnede üsna hiljutiste mängude pealkir...
Parimad Linuxi käsurea mängud
Käsurida pole Linuxi kasutamisel lihtsalt teie suurim liitlane - see võib olla ka meelelahutusallikas, sest saate seda kasutada paljude lõbusate mängu...