Fungsi maketrans() berlaku untuk isi dari nilai string. Fungsi ini mampu mengambil tiga argumen. Argumen pertama adalah wajib dan dua argumen lainnya adalah opsional. Ketika hanya satu argumen yang digunakan dalam metode ini, maka argumen tersebut akan menjadi kamus. Ketika dua argumen digunakan dalam metode ini, maka kedua argumen tersebut akan menjadi string dengan panjang yang sama. Ketika tiga argumen digunakan dalam metode ini, maka argumen ketiga akan berupa string yang akan menghapus karakter dari data string. Penggunaan fungsi maketrans() dalam string dan data kamus ditunjukkan pada contoh berikut
Contoh 1. Menggunakan maketrans() untuk Menerjemahkan Kunci Kamus
Skrip berikut menunjukkan penggunaan fungsi maketrans() untuk data kamus. Sebelumnya telah disebutkan bahwa fungsi maketrans() hanya membutuhkan satu argumen untuk variabel kamus. Fungsi khusus, bernama make_translation(), digunakan di sini untuk membuat tabel terjemahan berdasarkan nilai string yang disediakan melalui fungsi maketrans(). Dua for loop dan dua counter digunakan di sini untuk mencetak karakter yang benar yang dipetakan oleh setiap kode ASCII
#. /usr/bin/env python3
# Tentukan fungsi untuk menerjemahkan kamus ke tabel terjemahan
def make_translation ( dictVar , strVar):
# Buat tabel terjemahan
trans_table = strVar. maketrans( dictVar )
cetak("Kamus aslinya adalah. \n ", dictVar )
print("Tabel kamus terjemahan adalah. \n ", trans_table )
cetak(" \n")
# Menginisialisasi penghitung pertama untuk kamus
penghitung1 = 1
untuk key1 di dictVar.
# Menginisialisasi penghitung kedua untuk tabel terjemahan
penghitung2 = 1
untuk kunci2 di trans_table.
jika penghitung1 == penghitung2.
print("%s diterjemahkan ke %d" %(key1, key2))
putus
# Peningkatan penghitung kedua
penghitung2 = penghitung2 + 1
# Menaikkan penghitung pertama
penghitung1 = penghitung1 + 1
# Tentukan kamus dengan kunci berupa string
dictData = {"A" . 90, "B" . 59, "C" . 81, "D" . 75}
# Tentukan daftar karakter untuk diterjemahkan
string = "ABCD"
# Panggil fungsi terjemahan
make_translation ( dictData ,string)
Keluaran
Output berikut akan muncul setelah menjalankan skrip. Tabel terjemahan berisi kode ASCII dari nilai kunci kamus
Contoh 2. Menggunakan maketrans() untuk Menerjemahkan Karakter dari String
Contoh berikut menunjukkan penggunaan maketrans() dengan data string. Dua nilai string akan diambil sebagai teks pencarian dan teks pengganti, dan nilai teks ini akan digunakan sebagai argumen untuk fungsi maketrans(). Anda harus ingat bahwa panjang teks masukan dan keluaran harus sama untuk membuat tabel terjemahan. Jika tidak, kesalahan akan dihasilkan. Fungsi translate() digunakan di sini untuk mengonversi data tabel terjemahan menjadi nilai string
#. /usr/bin/env python3
# Masukkan daftar karakter yang ingin Anda terjemahkan
search = input("Masukkan karakter pencarian \n")
# Masukkan daftar karakter yang ingin Anda ganti
replace = input("Masukkan karakter pengganti \n")
# Periksa panjang pencarian dan penggantian daftar karakter
jika len( telusuri ) == len(replace):
# Menentukan data string
teks_asli = "+8801822594876"
# Buat tabel terjemahan menggunakan maketrans()
modified_text = teks_asli. maketrans( search , ganti )
# Cetak teks aslinya
cetak("Teks aslinya adalah. ", teks_asli )
# Cetak output setelah menerapkan maketrans()
print("Output tabel pemetaan adalah. ", modified_text )
# Cetak output setelah menerapkan translate()
print("Teks penggantinya adalah. " , original_text.terjemahkan( modified_text ))
selain itu .
cetak("Panjang teks pencarian dan teks pengganti tidak sama")
Keluaran
Setelah menjalankan skrip, 856 diambil sebagai karakter pencarian dan 487 diambil sebagai karakter pengganti dalam keluaran berikut. Dalam hal ini, 8 diganti dengan 4, 5 diganti dengan 8, dan 6 diganti dengan 7 dalam string, '+8801822594878. ' Keluaran yang dimodifikasi adalah '+4401422894477. ’
Contoh 3. Menggunakan maketrans() untuk Menerjemahkan dan Menghapus Karakter dalam String
Contoh berikut menunjukkan penggunaan tiga argumen dengan metode maketrans(). Disini, string adalah string utama, dimana karakter dari str1 akan dicari. Jika ada karakter yang cocok dengan karakter yang dipilih, maka karakter tersebut akan digantikan oleh karakter str2 yang sesuai. Jika ada karakter str3 yang cocok dengan karakter apa pun dari variabel string, maka karakter tersebut akan dihapus dari variabel string. Metode maketrans() dipanggil dengan dua argumen untuk satu waktu dan metode maketrans() dipanggil dengan tiga argumen untuk waktu yang lain
#. /usr/bin/env python3
# Tentukan string utama
string = "Linux"
# Tentukan daftar karakter yang akan dicari
str1 = "iu"
# Tentukan daftar karakter yang akan diganti
str2 = "Ui"
# Tentukan daftar karakter yang akan dihapus
str3 = "L"
# Cetak teks utama
cetak("Teks asli. ",string)
# Buat tabel terjemahan
dict1 = string . maketrans( str1 , str2 )
cetak(" \n Tabel terjemahan. \n " , dict1 )
print("String yang dimodifikasi. " ,string . terjemahkan( dict1 ))
# Buat tabel terjemahan setelah menghapus karakter
dict2 = string . maketrans( str1 , str2 , str3)
print(" \n Tabel terjemahan setelah . \n ", dict2 )
# cetak string yang dimodifikasi setelah diterjemahkan
print(" \n String yang dimodifikasi setelah . ", string . terjemahkan( dict2 ))
Keluaran
Output berikut muncul setelah menjalankan skrip. Di sini, karakter 'i' dan 'u' dari 'Linux' diganti dengan karakter 'U' dan 'i' saat memanggil maketrans() dengan dua argumen, dan hasilnya adalah 'LUnix. ’ Ketika metode maketrans() dipanggil dengan tiga argumen, maka karakter ‘L’ dihapus oleh argumen ketiga dan hasilnya adalah ‘Unix. ’
Kesimpulan
Tutorial ini menunjukkan betapa mudahnya Anda mengganti konten kamus atau data string melalui metode maketrans(). Karakter tertentu dalam string juga dapat dihapus melalui metode ini. Saya harap contoh yang ditampilkan dalam tutorial ini akan membantu pengguna Python untuk memahami beberapa penggunaan metode maketrans() dan akan menunjukkan cara menerapkan metode ini dengan benar dalam skrip mereka sendiri