Modul 7 Pengolahan String
Modul 7 Pengolahan String
Pengolahan String
7.3 Materi
7.3.1 Pengantar String
String adalah untaian karakter-karakter yang menjadi satu kesatuan dan digunakan dalam
program komputer untuk menyimpan kalimat, baik panjang ataupun pendek. String adalah suatu
jenis data yang mampu menyimpan huruf / karakter dan disimpan dalam kode ASCII. Tidak semua
bahasa pemrograman memiliki tipe data String, seperti misalnya bahasa C. Tipe data ini merupakan
jenis tipe data yang bukan tipe data dasar, karena tipe data ini pada dasarnya menyimpan lebih dari
satu nilai tunggal sebagai satu kesatuan. Beberapa bahasa pemrograman ada yang menyebutkan
bahwa String pada dasarnya adalah kumpulan tipe data karakter / array of character / list of
character.
6 print(temansaya3)
7 print(namasaya[0]) #'A'
8 print(namasaya[9]) #'R'
9 print(temansaya1[1]) #'u'
10
11 huruf = temansaya2[0]
12 print(huruf) #'L'
Jadi string pertama kali dibuat dengan deklarasi variabel dan langsung diisi dengan data, string
dapat diakses sebagai satu kesatuan dengan menyebut nama variabelnya, atau per huruf dengan
menyebutkan indeksnya. Indeks pada string dimulai dari 0 seperti layaknya pada list. Indeks string
haruslah berupa bilangan bulat, bukan pecahan.
Pada memory komputer, string disimpan secara urut menggunakan list yang berisi huruf-huruf
dengan indeks yang dimulai dari nol. Gambar 7.1 menunjukkan string berisi "banana" yang
disimpan pada memory komputer.
6 if "dua" == "dua":
7 print("Sama") #Sama
FUNGSI len
Cara untuk mengetahui berapa panjang (berapa jumlah karakter) dari sebuah string adalah
dengan menggunakan operator len(<string>) Untuk menampilkan huruf terakhir dari sebuah string
kita harus menggunakan indeks string yang ke- len(<string>-1), sebab indeks dimulai dari 0.
Contoh program Python adalah:
4 terakhir = kalimat[len(kalimat)-1]
5 print(terakhir) #output 'a'
6
TRAVERSING STRING
Untuk dapat menampilkan string dengan cara ditampilkan huruf demi huruf adalah dengan
menggunakan loop yang dilakukan per huruf dengan 2 cara:
• Dilakukan dengan akses terhadap indeks
# String merupakan data yang bersifat immutable! Immutable adalah bahwa data tersebut tidak
bisa diubah saat program berjalan, hanya bisa diinisialisasi saja. Contoh:
1 kalimat = "satu"
2 kalimat[0] = "batu" #TypeError: 'str' object does not support item assignment
Agar bisa diubah, maka harus disimpan dalam variabel yang berbeda.
1 kalimat = "satu"
2 kalimat_baru = kalimat[0] + "alah" #salah
Dan masih banyak lainnya. Ingat semua fungsi/method di atas yang mengembalikan string,
mengembalikan string baru, tidak mengubah yang aslinya, karena string bersifat immutable. Daftar
lengkap dapat dilihat di https://docs.python.org/library/stdtypes.html#string-methods
Operator * dan + pada String
Pada Python operator + dan * memiliki kemampuan khusus. Operator + yang biasanya
digunakan untuk menjumlahkan bilangan bisa digunakan untuk menggabungkan dua buah string.
Sedangkan operator * yang bisa digunakan untuk mengkalikan bilangan bisa digunakan untuk
menampilkan string sejumlah perkaliannya. Perhatikan kode berikut:
1 kata1 = "saya"
2 kata2 = "makan"
3 kata3 = kata1 + " " + kata2
4 print(kata3) #hasil adalah penggabungan: saya makan
5 kata4 = "ulang"
6 print(kata4 * 4) #hasil adalah ulangulangulangulang
7 kata4 = "ulang "
8 print(kata4 * 2) #hasil adalah ulang ulang
1 a_string = "AnTonIus"
2 lowercase = a_string.lower()
3 total = 0
4 for x in "aiueo":
5 jml = lowercase.count(x)
6 total += jml
7 print(total) #hasil = 4
1 tgl = "2020-12-01"
2 hasil = tgl.split("-")
3 tgl2 = hasil[2]+"-"+hasil[1]+"-"+hasil[0]
4 print(tgl2)
4 satu = ''.join([i for i in satu if i.isalpha()]) #buang semua yang bukan alfabet
5
6 dua = satu[::-1]
7 if dua == satu:
8 print("palindrom")
9 else:
10 print("bukan")
7.4.4 Pembahasan Soal 4
Untuk mengambil beberapa kata dari kalimat, digunakan logika sebagai berikut:
• Ubah kalimat menjadi huruf kecil semua (lowercase)
• Pecah (split), kalimat dipisah berdasarkan spasi
• Untuk setiap kata yang sudah dipisah tersebut, maka ambil indeks kata per n buah, misal 1
buah jika n=1, 2 jika n=2. Indeks yang diambil adalah dimulai dari 0, jika n=2 maka ambil 0
dan 1, lalu ambil 1 dan 2, 2 dan 3, 3 dan 4, dst...dilakukan dalam perulangan.
1 #Kalimat
2 text = 'A quick brown fox jumps over the lazy dog.'
3
14 print(ambil_kata_kalimat(text, 2))
Hasil
Latihan 7.2 Buatlah suatu program yang dapat menghitung frekuensi kemunculan suatu kata
yang ada pada String. Misal terdapat kalimat "Saya mau makan. Makan itu wajib. Mau siang
atau malam saya wajib makan". Ditanyakan kata "makan". Output: makan ada 3 buah
Latihan 7.3 Buatlah suatu program yang dapat menghapus semua spasi yang berlebih pada
sebuah string, dan menjadikannya satu spasi normal! Misal: "saya tidak suka memancing ikan "
Output: "saya tidak suka memancing ikan"
Latihan 7.4 Buatlah suatu program mengetahui kata terpendek dan terpanjang dari suatu
kalimat yang diinputkan! Misal: "red snakes and a black frog in the pool" Output: terpendek: a,
terpanjang: snakes