String formatting pada python adalah satu proses memasukkan atau menyisipkan variabel atau nilai ke dalam template string yang telah ditentukan [1].
Terdapat setidaknya 3 cara untuk melakukan hal ini. Beberapa di antaranya adalah cara jadul, dan beberapa di antaranya adalah cara yang lebih baru dan modern.
Kita akan coba satu-persatu.
Memformat String dengan Format Specifiers
Cara yang pertama [dan ini adalah cara yang cukup lama], adalah menggunakan format specifiers.
Format specifiers adalah simbol
nama = 'Lendis Fabri'
asal = 'Indonesia'
print[f'Perkenalkan saya {nama} dari {asal} 😎']
3 yang berarti string.Contoh:
template = 'Halo, saya %s dari %s'
print[template % ['Lendis Fabri', 'Indonesia']]
# output: Halo, saya Lendis Fabri dari Indonesia
Model cara seperti ini akan terlihat sangat “old-style” jika kita bandingkan dengan fungsi
nama = 'Lendis Fabri'
asal = 'Indonesia'
print[f'Perkenalkan saya {nama} dari {asal} 😎']
4 pada python 3.Memformat String dengan Fungsi format[]
Untuk cara yang kedua adalah menggunakan fungsi
nama = 'Lendis Fabri'
asal = 'Indonesia'
print[f'Perkenalkan saya {nama} dari {asal} 😎']
4 yang baru diperkenalkan pada python versi 3 [2].Fungsi ini juga pernah kita pelajari pada pembahasan Macam-Macam Output Python.
Berikut ini contoh penggunaannya:
template = 'Halo, saya {nama} dari {asal}'
template_2 = 'Saya suka makan {} dan minum {}'
print[template.format[nama = 'Lendis Fabri', asal = 'Indonesia']]
# Halo, saya Lendis Fabri dari Indonesia
print[template_2.format['Nasi Goreng', 'air putih']]
# Saya suka makan Nasi Goreng dan minum air putih
Memformat String dengan String Interpolation / F-Strings
String interpolation atau F-Strings adalah fitur terbaru dari python 3.6 [3].
Fungsi ini memiliki tujuan yang sama dengan 2 cara sebelumnya. Hanya saja, ia memiliki sintaks yang jauh lebih modern dan lebih sederhana.
Hal ini akan terlihat sangat familiar bagi kalian yang pernah belajar javascript mau pun kotlin, karena secara sintaks penulisannya hampir sama dengan string template literal pada dua bahasa tersebut.
Berikut ini contohnya:
nama = 'Lendis Fabri'
asal = 'Indonesia'
print[f'Perkenalkan saya {nama} dari {asal} 😎']
Output:
Perkenalkan saya Lendis Fabri dari Indonesia 😎
Bagaimana? Jauh lebih manusiawi bukan sintaksnya? 😎
Memecah String Menjadi List dan Sebaliknya
Fungsi selanjutnya adalah memecah string menjadi list.
Hal ini bisa kita lakukan menggunakan fungsi
nama = 'Lendis Fabri'
asal = 'Indonesia'
print[f'Perkenalkan saya {nama} dari {asal} 😎']
6 dan nama = 'Lendis Fabri'
asal = 'Indonesia'
print[f'Perkenalkan saya {nama} dari {asal} 😎']
7.alamat = 'Surabaya, Jawa Timur, Indonesia'
print[alamat.split[]]
# ['Surabaya,', 'Jawa', 'Timur,', 'Indonesia']
print[alamat.split[',']]
# ['Surabaya', ' Jawa Timur', ' Indonesia']
print[alamat.split[', ']]
# ['Surabaya', 'Jawa Timur', 'Indonesia']
print['❤️'.join[['aku', 'suka', 'python']]]
# aku❤️suka❤️python
print['🦖'.join[alamat.split[', ']]]
# Surabaya🦖Jawa Timur🦖Indonesia
Penjelasan
- Fungsi
6 menerima satu parameter optional. Parameter ini akan dijadikan sebagai pembatas atau separator yang kemudian string akan dibagi menjadi list berdasarkan pembatas tersebut.nama = 'Lendis Fabri' asal = 'Indonesia' print[f'Perkenalkan saya {nama} dari {asal} 😎']
- Jika fungsi
6 tidak diberi parameter, maka defaultnya adalah spasi [].nama = 'Lendis Fabri' asal = 'Indonesia' print[f'Perkenalkan saya {nama} dari {asal} 😎']
- Fungsi
7 berfungsi untuk menggabungkan item list menjadi string utuh, dengan string awal sebagai glue atau perekat antar masing-masing item.nama = 'Lendis Fabri' asal = 'Indonesia' print[f'Perkenalkan saya {nama} dari {asal} 😎']
Mengubah String Menjadi Upper Case
Selanjutnya kita bisa memodifikasi string menjadi uppercase alias huruf besar semua dengan fungsi
Perkenalkan saya Lendis Fabri dari Indonesia 😎
1.print['halo selamat pagi!'.upper[]]
print['Halo Selamat Siang!'.upper[]]
Output:
HALO SELAMAT PAGI!
HALO SELAMAT SIANG!
Ini hanya working untuk abjad yang memiliki variasi huruf besar.
salam = "السلام عليكم"
print[salam]
print[salam.uppercase[]]
Output:
السلام عليكم
السلام عليكم
NB: bisa jadi teks arabnya kacau untuk di CLI
Mengubah String Menjadi Lower Case
Kebalikannya, kita bisa menggunakan fungsi
Perkenalkan saya Lendis Fabri dari Indonesia 😎
2 untuk mengubah string menjadi huruf kecil semua.Contoh:
print['APA KABAR?'.lower[]]
print['Lagi Dimana?'.lower[]]
Output:
template = 'Halo, saya {nama} dari {asal}'
template_2 = 'Saya suka makan {} dan minum {}'
print[template.format[nama = 'Lendis Fabri', asal = 'Indonesia']]
# Halo, saya Lendis Fabri dari Indonesia
print[template_2.format['Nasi Goreng', 'air putih']]
# Saya suka makan Nasi Goreng dan minum air putih
0apa kabar? lagi dimana?
template = 'Halo, saya {nama} dari {asal}'
template_2 = 'Saya suka makan {} dan minum {}'
print[template.format[nama = 'Lendis Fabri', asal = 'Indonesia']]
# Halo, saya Lendis Fabri dari Indonesia
print[template_2.format['Nasi Goreng', 'air putih']]
# Saya suka makan Nasi Goreng dan minum air putih
1Output:
template = 'Halo, saya {nama} dari {asal}'
template_2 = 'Saya suka makan {} dan minum {}'
print[template.format[nama = 'Lendis Fabri', asal = 'Indonesia']]
# Halo, saya Lendis Fabri dari Indonesia
print[template_2.format['Nasi Goreng', 'air putih']]
# Saya suka makan Nasi Goreng dan minum air putih
2Mengubah String Menjadi Reverse Case
Yang terakhir, kita bisa membalikkan huruf kecil menjadi huruf besar, dan huruf besar menjadi huruf kecil dengan perintah
Perkenalkan saya Lendis Fabri dari Indonesia 😎
3.Perhatikan contoh:
template = 'Halo, saya {nama} dari {asal}'
template_2 = 'Saya suka makan {} dan minum {}'
print[template.format[nama = 'Lendis Fabri', asal = 'Indonesia']]
# Halo, saya Lendis Fabri dari Indonesia
print[template_2.format['Nasi Goreng', 'air putih']]
# Saya suka makan Nasi Goreng dan minum air putih
3Output:
template = 'Halo, saya {nama} dari {asal}'
template_2 = 'Saya suka makan {} dan minum {}'
print[template.format[nama = 'Lendis Fabri', asal = 'Indonesia']]
# Halo, saya Lendis Fabri dari Indonesia
print[template_2.format['Nasi Goreng', 'air putih']]
# Saya suka makan Nasi Goreng dan minum air putih
4Mencari Kata Pada String
Pada python, mencari sebuah kata atau karakter dalam suatu string caranya sangat mudah. Kita bisa menggunakan fungsi
Perkenalkan saya Lendis Fabri dari Indonesia 😎
4.Fungsi tersebut akan mengembalikan indeks dari hasil pertama pencarian, dan akan mengembalikan -1 jika karakter yang dicari tidak ditemukan.
Contoh:
template = 'Halo, saya {nama} dari {asal}'
template_2 = 'Saya suka makan {} dan minum {}'
print[template.format[nama = 'Lendis Fabri', asal = 'Indonesia']]
# Halo, saya Lendis Fabri dari Indonesia
print[template_2.format['Nasi Goreng', 'air putih']]
# Saya suka makan Nasi Goreng dan minum air putih
5Output:
template = 'Halo, saya {nama} dari {asal}'
template_2 = 'Saya suka makan {} dan minum {}'
print[template.format[nama = 'Lendis Fabri', asal = 'Indonesia']]
# Halo, saya Lendis Fabri dari Indonesia
print[template_2.format['Nasi Goreng', 'air putih']]
# Saya suka makan Nasi Goreng dan minum air putih
6Mereplace Kata Pada String
Dengan memanfaatkan fungsi
Perkenalkan saya Lendis Fabri dari Indonesia 😎
5, kita bisa mencari lalu menimpa sebuah karakter/teks dengan teks baru.Perhatikan contoh berikut:
template = 'Halo, saya {nama} dari {asal}'
template_2 = 'Saya suka makan {} dan minum {}'
print[template.format[nama = 'Lendis Fabri', asal = 'Indonesia']]
# Halo, saya Lendis Fabri dari Indonesia
print[template_2.format['Nasi Goreng', 'air putih']]
# Saya suka makan Nasi Goreng dan minum air putih
7Output:
template = 'Halo, saya {nama} dari {asal}'
template_2 = 'Saya suka makan {} dan minum {}'
print[template.format[nama = 'Lendis Fabri', asal = 'Indonesia']]
# Halo, saya Lendis Fabri dari Indonesia
print[template_2.format['Nasi Goreng', 'air putih']]
# Saya suka makan Nasi Goreng dan minum air putih
8Menghapus Karakter Tertentu Pada String
Tentu saja, jika kita memanggil fungsi
Perkenalkan saya Lendis Fabri dari Indonesia 😎
6 pada suatu string, lalu kita timpa teks lama dengan string kosong [Perkenalkan saya Lendis Fabri dari Indonesia 😎
7], seolah-olah kita telah menghapus karakter tersebut.Contoh:
template = 'Halo, saya {nama} dari {asal}'
template_2 = 'Saya suka makan {} dan minum {}'
print[template.format[nama = 'Lendis Fabri', asal = 'Indonesia']]
# Halo, saya Lendis Fabri dari Indonesia
print[template_2.format['Nasi Goreng', 'air putih']]
# Saya suka makan Nasi Goreng dan minum air putih
9Output:
nama = 'Lendis Fabri'
asal = 'Indonesia'
print[f'Perkenalkan saya {nama} dari {asal} 😎']
0Menghitung Jumlah Karakter Yang Muncul
Terakhir tapi bukan yang paling akhir, kita bisa menghitung berapa kali sebuah teks muncul dalam suatu string.
Misal kita ingin menghitung berapa kali kata
Perkenalkan saya Lendis Fabri dari Indonesia 😎
8 muncul pada sebuah paragraf, kita bisa menggunakan fungsi Perkenalkan saya Lendis Fabri dari Indonesia 😎
9 pada string.Perhatikan contoh berikut:
nama = 'Lendis Fabri'
asal = 'Indonesia'
print[f'Perkenalkan saya {nama} dari {asal} 😎']
1Output:
nama = 'Lendis Fabri'
asal = 'Indonesia'
print[f'Perkenalkan saya {nama} dari {asal} 😎']
2Kesimpulan
Ada banyak sekali hal yang bisa kita lakukan untuk memanipulasi string pada python. Bahkan, cara-cara tersebut umumnya sangat mudah dilakukan. Berbeda dengan jika kita menggunakan bahasa pemrograman lain yang tidak memiliki fungsi manipulasi string sebanyak python.
Kode Program Lengkap
Kalian bisa mendapatkan kode program lengkap untuk seri tutorial ini pada link repository python-menengah.