Fungsi dan Manipulasi Dalam String
Fungsi pemrosesan string merupakan salah satu keunggulan lain dari bahasa pemrograman Python karena sangat handal dan mudah digunakan untuk memproses data teks, khususnya ketika digabungkan dengan kegunaan list. Setiap data string dalam Python (sama juga seperti tipe data lainnya) merupakan suatu objek. Fungsi – fungsi string merupakan bagian dari objek – objek ini yang dapat kita akses menggunakan notasi titik.
Berikut ini dua hal yang harus kalian perhatikan ketika menggunakan fungsi – fungsi string:
• String bersifat tidak dapat diubah (immutable), maka suatu fungsi yang memodifikasi data string, sesungguhnya membuat data string baru hasil modifikasi dari data string sebelumnya.
• Seluruh fungsi string bersifat case sensitive.
String dapat kita potong seperti layaknya list. Hal ini memudahkan kita untuk melakukan ekstraksi terhadap objek substring. Berikut contohnya:
>>> s = "Icha Vinaldi"
>>> s[:4]
'Icha'
>>> "Icha Vinaldi"[-7:]
'Vinaldi'
String dapat kita pecah ke dalam list. Fungsi split akan secara otomatis memecah string menjadi elemen – elemen dalam list begitu terdapat celah antar teks tersebut (baik spasi maupun baris baru).
Berikut contohnya:
>>> "Halo\nGita Hardaningtyas".split()
['Halo', 'Gita', 'Hardaningtyas’]
Kita juga dapat menggunakan fungsi split split untuk memecah string ke dalam list pada bagian substring tertentu:
>>> "Gita Hardaningtyas".split('a')
['Git', ' H', 'rd', 'ningty', 's']
Fungsi yang merupakan kebalikan dari split adalah join yang digunakan untuk menggabungkan elemen – elemen list yang berupa string menjadi string utuh. Berikut contoh – contohnya:
>>> l = ["Riggita", "Putri", "Damayanti"]
>>> " ".join(l)
'Riggita Putri Damayanti'
>>> ", ".join(["Parako", "Sandha", "Gultor"])
'Parako, Sandha, Gultor'
>>> "".join(["Para","komando"])
'Parakomando'
Kita dapat menggunakan fungsi strip untuk membuang celah teks di awal dan akhir suatu data string. Berikut contohnya:
>>> " Iggi ".strip()
'Iggi'
>>> "Iggi\n\n".strip() 'Iggi'
Fungsi replace dapat kita gunakan untuk membentuk string baru yang mana suatu komponen substring baru telah mengganti komponen substring dalam string sebelumnya. Berikut ini contohnya:
>>> "Pak Ridho menguasai Matlab".replace("Matlab","Python") 'Pak Ridho menguasai Python'
Kita juga dapat memeriksa apakah suatu substring terdapat dalam suatu string dengan menggunakan fungsi in dan memeriksa indeks substring tertentu yang pertama kali dituliskan dalam string tersebut. Untuk lebih jelasnya, perhatikanlah contoh berikut ini:
>>> s = "M.Ridho Syahputra,M.Si."
>>> "M.Si." in s
True
>>> s.index("a")
10
>>> s.index("M.T.")
Traceback (most recent call last): File "<pyshell#15>", line 1, in <module>
s.index("M.T.")
ValueError: substring not found
Terkadang kita membutuhkan teks yang rata kiri dan/atau rata kanan dalam string. Berikut cara yang umumnya digunakan oleh para programmer Python:
>>> s = "apple".ljust(10) + "orange".rjust(10) + "\n" \ ... + "grape".ljust(10) + "pear".rjust(10) >>> print s apple orange grape pear |
Terdapat beberapa fungsi yang dapat digunakan untuk memanipulasi penggunaan huruf besar dalam Python. Kalian dapat melihatnya melalui contoh berikut ini:
>>> s = "Buku ini ditulis oleh Wilks." >>> s.lower() 'buku ini ditulis oleh wilks.' >>> s.upper() 'BUKU INI DITULIS OLEH WILKS.' >>> s.capitalize() 'Buku ini ditulis oleh wilks.' >>> s.title() 'Buku Ini Ditulis Oleh Wilks.' |
Beberapa fungsi berikut ini dapat digunakan untuk memeriksa akhiran dan awalan suatu string:
>>> s = "Annisa Indahvinaldi"
>>> s.startswith("An")
True
>>> s.startswith("a")
False
>>> s.endswith("i")
True
Kita juga dapat memeriksa jenis elemen suatu data string. Misalnya, ketika kita ingin memastikan bahwa elemen dari data string kita tersusun seluruhnya dari alfabet:
>>> "Icha".isalpha()
True
>>> "Icha!".isalpha()
False
Hal yang sama juga dapat kita lakukan untuk memeriksa elemen numerik dalam string:
>>> "12014081".isdigit()
True
>>> "65 juta
tahun yang lalu.".isdigit() False