Langsung ke konten

String Methods di Python: Mengubah, Memecah, dan Menggabungkan Teks

String methods di Python membantu membersihkan dan mengolah teks. Artikel ini membahas upper, lower, strip, split, join, replace, dan cara mencari teks.

Belajar Python Level Basic
Belajar Python Level Basic
Advertisement

Artikel ini bagian dari seri Belajar Python Level Basic di hanifmu.com. Di artikel sebelumnya kita sudah membahas Operasi Dasar String. Sekarang kita pakai method bawaan Python untuk mengolah teks.

Teks dari pengguna jarang rapi. Ada spasi berlebih, huruf besar-kecil yang campur, atau format yang perlu diseragamkan. String methods menyediakan alat untuk membereskannya.

Cara Memanggil String Method

String method dipanggil dengan tanda titik setelah string:

nama = "budi"
print(nama.upper())   # BUDI

Perhatikan bahwa method tidak mengubah string aslinya. Karena string imutabel, method mengembalikan string baru:

nama = "budi"
nama.upper()

print(nama)   # budi, tidak berubah

Supaya hasilnya tersimpan, tugaskan ke variabel:

nama = "budi"
nama = nama.upper()

print(nama)   # BUDI

Mengubah Besar-Kecil Huruf

Tiga method untuk mengatur huruf:

teks = "halo dunia"

print(teks.upper())      # HALO DUNIA
print(teks.lower())      # halo dunia
print(teks.title())      # Halo Dunia
print(teks.capitalize()) # Halo dunia

Perbedaannya:

  • upper() membuat semua huruf kapital.
  • lower() membuat semua huruf kecil.
  • title() mengkapitalkan huruf pertama setiap kata.
  • capitalize() hanya mengkapitalkan huruf pertama kalimat.

Method ini sering dipakai untuk menyeragamkan input sebelum dibandingkan:

jawaban = input("Lanjut? (ya/tidak): ")

if jawaban.lower() == "ya":
    print("Melanjutkan")

Membersihkan Spasi

strip() membuang spasi di awal dan akhir string:

teks = "   halo   "
print(teks.strip())    # halo
print(teks.lstrip())   # "halo   "
print(teks.rstrip())   # "   halo"
  • strip() membuang dari kedua sisi.
  • lstrip() membuang dari kiri.
  • rstrip() membuang dari kanan.

Method ini sangat berguna untuk membersihkan hasil input() yang mungkin mengandung spasi tak sengaja.

Memecah dan Menggabungkan

split() memecah string menjadi list, sedangkan join() menggabungkan list menjadi string:

kalimat = "apel jeruk mangga"
buah = kalimat.split()

print(buah)   # ['apel', 'jeruk', 'mangga']

split() memakai spasi sebagai pemisah secara default. Kamu bisa menentukan pemisah lain:

data = "Budi,25,Jakarta"
bagian = data.split(",")

print(bagian)   # ['Budi', '25', 'Jakarta']

join() melakukan kebalikannya. Method ini dipanggil pada pemisah, lalu list sebagai argumen:

buah = ["apel", "jeruk", "mangga"]
print(", ".join(buah))   # apel, jeruk, mangga
print("-".join(buah))    # apel-jeruk-mangga

Urutan join() sering membingungkan pemula: pemisahnya di depan, bukan list-nya.

Mengganti Teks

replace() mengganti semua kemunculan teks lama dengan teks baru:

teks = "Saya suka apel, apel itu enak"
print(teks.replace("apel", "jeruk"))

Output:

Saya suka jeruk, jeruk itu enak

Kalau hanya ingin mengganti sejumlah kemunculan, tambahkan argumen ketiga:

print(teks.replace("apel", "jeruk", 1))

Output: Saya suka jeruk, apel itu enak.

Mencari Teks

Beberapa method untuk mencari posisi atau keberadaan teks:

teks = "Belajar Python itu menyenangkan"

print(teks.find("Python"))         # 8
print(teks.find("Java"))           # -1
print(teks.count("a"))             # 4
print("Python" in teks)            # True

find() mengembalikan indeks kemunculan pertama, atau -1 kalau tidak ketemu. count() menghitung jumlah kemunculan. Operator in lebih ringkas kalau hanya ingin tahu ada atau tidak.

Mengecek Awal dan Akhir

startswith() dan endswith() mengecek awalan dan akhiran string:

berkas = "laporan.pdf"

print(berkas.endswith(".pdf"))     # True
print(berkas.startswith("lap"))    # True

Keduanya berguna untuk memvalidasi input, misalnya memastikan pengguna memasukkan alamat email atau nomor telepon dengan format tertentu.

Method String Umum

MethodKegunaan
upper()Semua huruf kapital
lower()Semua huruf kecil
title()Kapital di awal setiap kata
strip()Membuang spasi di kedua ujung
split()Memecah string menjadi list
join()Menggabungkan list menjadi string
replace()Mengganti teks
find()Mencari posisi teks
count()Menghitung kemunculan
startswith()Mengecek awalan
endswith()Mengecek akhiran

Contoh Program: Membersihkan Data Input

Mari bersihkan data yang dimasukkan dengan format tidak rapi:

# bersihkan_data.py

data = input("Masukkan nama dan kota (pisah dengan koma): ")

nama, kota = data.split(",")

nama = nama.strip().title()
kota = kota.strip().title()

print(f"Nama: {nama}")
print(f"Kota: {kota}")

Kalau pengguna mengetik budi , jakarta :

Nama: Budi
Kota: Jakarta

Rantai strip().title() bekerja karena setiap method mengembalikan string baru yang langsung bisa dipanggil method berikutnya.

Kesalahan Umum Pemula

  • Mengira method mengubah string asli — string imutabel, tugaskan hasilnya ke variabel.
  • Tertukar split() dan join() — split() memecah, join() menggabungkan.
  • Salah urutan join() — pemisah dulu, baru list: ", ".join(list).
  • Mengira find() mengembalikan False — ia mengembalikan -1 kalau tidak ketemu.
  • Lupa bahwa split() menghasilkan list — itemnya string, konversi dulu bila butuh angka.

Ringkasan

  • String method dipanggil dengan tanda titik dan tidak mengubah string asli
  • upper(), lower(), title() mengatur besar-kecil huruf
  • strip() membersihkan spasi di ujung string
  • split() memecah string, join() menggabungkannya
  • replace() mengganti teks, find() dan count() mencarinya
  • Method bisa dirantai, misalnya nama.strip().title()

Langkah Selanjutnya

Sekarang kamu bisa membersihkan dan mengolah teks. Langkah terakhir adalah menampilkannya dengan rapi, lengkap dengan angka yang diformat dan teks yang sejajar.

Artikel selanjutnya membahas String Formatting dengan f-string, cara menyusun output yang enak dibaca.