Python

Cara Menggunakan maketrans di Python 3

Cara Menggunakan maketrans di Python 3
Itu maketrans() function adalah metode terjemahan bawaan dalam Python yang digunakan untuk membuat tabel konversi pemetaan karakter. Satu karakter diterjemahkan ke karakter lain melalui metode ini. Fungsi ini dapat diterapkan pada data string dan kamus untuk memetakan karakter. Representasi karakter Unicode digunakan dalam tabel terjemahan translation. Itu menterjemahkan() fungsi digunakan untuk mengubah data tabel terjemahan menjadi data string. Tutorial ini akan menjelaskan bagaimana maketrans() metode dapat digunakan dalam Python untuk pemetaan karakter.

Sintaksis

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

Itu maketrans() fungsi berlaku untuk konten tali nilai. Fungsi ini dapat mengambil tiga argumen. Argumen pertama wajib dan dua argumen lainnya 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 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 data string dan kamus ditunjukkan pada contoh berikut:.

Contoh 1: Menggunakan maketrans() untuk Menerjemahkan Kunci Kamus

Skrip berikut menunjukkan penggunaan fungsi maketrans() untuk data kamus. Sebelumnya, 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 maketrans() fungsi. Dua untuk loop dan dua penghitung 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)
print("Kamus aslinya adalah: \n", dictVar)
print("Tabel terjemahan kamus adalah: \n",trans_table)
cetak("\n")
# Inisialisasi penghitung pertama untuk kamus
penghitung1 = 1
untuk key1 di dictVar:
# Inisialisasi penghitung kedua untuk tabel terjemahan
penghitung2 = 1
untuk key2 di trans_table:
jika penghitung1 == penghitung2:
print("%s diterjemahkan ke %d" %(key1, key2))
istirahat
# Tingkatkan penghitung kedua
penghitung2 = penghitung2 + 1
# Tingkatkan penghitung pertama
penghitung1 = penghitung1 + 1
 
# Tentukan kamus yang kuncinya 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 String

Contoh berikut menunjukkan penggunaan maketrans() dengan data string. Dua nilai string akan diambil sebagai teks pencarian dan menggantikan teks, dan nilai teks ini akan digunakan sebagai argumen untuk maketrans() fungsi. Anda harus ingat bahwa panjang teks input dan output harus sama untuk membuat tabel terjemahan. Jika tidak, kesalahan akan dihasilkan. Itu menterjemahkan() fungsi digunakan di sini untuk mengubah data tabel terjemahan menjadi nilai string.

#!/usr/bin/env python3
 
# Masukkan daftar karakter yang ingin Anda terjemahkan
search = input("Masukkan daftar karakter pencarian \n")
# Masukkan daftar karakter yang ingin Anda ganti
replace = input("Masukkan daftar karakter pengganti \n")
 
# Periksa panjang pencarian dan penggantian daftar karakter
if len(cari) == len(ganti):
 
# Tentukan data string
original_text = "+8801822594876"
# Buat tabel terjemahan menggunakan maketrans()
modifikasi_teks = teks_asli.maketrans(cari, ganti)
 
# Cetak teks asli
print("Teks aslinya adalah: ", original_text)
# Cetak output setelah menerapkan maketrans()
print("Output tabel pemetaan adalah: ", modified_text)
# Cetak output setelah menerapkan translate()
print("Teks yang diganti adalah: ", original_text.terjemahkan(teks_dimodifikasi))
lain:
print("Panjang teks pencarian dan teks pengganti tidak sama")

Keluaran

Setelah menjalankan skrip, 856 diambil sebagai karakter pencarian dan 487 diambil sebagai karakter pengganti dalam output berikut. Dalam hal ini, 8 diganti dengan 4, 5 diganti dengan 8, dan 6 diganti dengan 7 dalam string, '+8801822594878.' Output yang dimodifikasi adalah '+4401422894477.'

Contoh 3: Menggunakan maketrans() untuk Menerjemahkan dan Menghapus Karakter dalam String

Contoh berikut menunjukkan penggunaan tiga argumen dengan metode maketrans(). Di sini, tali adalah string utama, di mana karakter dari str1 akan dicari. Jika ada karakter yang cocok dengan karakter yang dipilih, maka karakter tersebut akan diganti dengan karakter yang sesuai dari str2. Jika ada karakter dari str3 cocok dengan karakter apa pun dari tali variabel, maka karakter itu akan dihapus dari tali variabel. Metode maketrans() dipanggil dengan dua argumen untuk satu waktu dan metode maketrans() dipanggil dengan tiga argumen untuk waktu 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
print("Teks asli: ",string)
 
# Buat tabel terjemahan
dict1 = string.maketrans(str1, str2)
print("\nTabel terjemahan: \n" ,dict1)
print("String yang dimodifikasi: " ,string.terjemahkan(dict1))
 
# Buat tabel terjemahan setelah menghapus karakter
dict2 = string.maketrans(str1, str2, str3)
print("\nTabel terjemahan setelah karakter dihapus: \n", dict2)
# cetak string yang dimodifikasi setelah diterjemahkan
print("\nString yang dimodifikasi setelah dihapus: ", 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 outputnya 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.

Port Sumber Terbuka dari Mesin Game Komersial
Rekreasi mesin game gratis, open source, dan lintas platform dapat digunakan untuk bermain lama serta beberapa judul game yang cukup baru. Artikel ini...
Game Baris Perintah Terbaik untuk Linux
Baris perintah bukan hanya sekutu terbesar Anda saat menggunakan Linux-ini juga dapat menjadi sumber hiburan karena Anda dapat menggunakannya untuk me...
Aplikasi Pemetaan Gamepad Terbaik untuk Linux
Jika Anda suka bermain game di Linux dengan gamepad alih-alih sistem input keyboard dan mouse biasa, ada beberapa aplikasi yang berguna untuk Anda. Ba...