Kursus
1. Pendahuluan
Apa itu pemformatan string?
Pemformatan string adalah merancang string Anda dengan menarik menggunakan teknik pemformatan yang disediakan oleh bahasa pemrograman tertentu. Kita memiliki berbagai teknik pemformatan string di Python. Sekarang kita akan mengeksplorasi teknik pemformatan baru bernama f-string.
f-string dievaluasi saat runtime program. Ini lebih cepat dibandingkan metode sebelumnya.
f-string memiliki sintaks yang mudah dibandingkan teknik pemformatan string Python sebelumnya. Kita akan mengupas setiap bagian dari pemformatan ini menggunakan berbagai contoh.
Jalankan dan edit kode dari Tutorial ini secara online
Jalankan kode1.1. Sintaks
Setiap pernyataan f-string terdiri dari dua bagian, yaitu karakter f atau F, dan berikutnya adalah string yang ingin kita format. String tersebut diapit oleh tanda kutip tunggal, ganda, atau tiga.
Mari lihat sintaksnya.
## kita juga bisa menggunakan F, '', ''''', """"""'
f"string"
Pada bagian string, kita harus menempatkan kalimat yang akan diformat.
2. Menampilkan Variabel
Sebelumnya kita paling sering menggunakan metode str.format() untuk memformat string. Namun, waktu telah berubah—kini kita memiliki metode baru yang membuat upaya kita dua kali lebih cepat.
Variabel di dalam kurung kurawal { } akan ditampilkan pada output seperti pernyataan print biasa. Mari lihat contohnya.
## mendeklarasikan variabel
name = "Datacamp"
type_of_company = "Educational"
## apit variabel Anda dalam {} untuk menampilkan nilainya pada output
print(f"{name} is an {type_of_company} company.")
Datacamp is an Educational company.
Kita mendapatkan nilai variabel pada output. Lihat, mudah bukan. Kita juga bisa mengganti f dengan F.
## mendeklarasikan variabel
name = "Datacamp"
type_of_company = "Educational"
## apit variabel Anda dalam {} untuk menampilkan nilainya pada output
print(F"{name} is an {type_of_company} company.")
Datacamp is an Educational company.
f huruf kecil maupun besar akan berfungsi sama.
3. Ekspresi
Bagaimana jika kita bisa mengevaluasi ekspresi seperti aritmatika, pemanggilan fungsi, dan sebagainya, di dalam string? Keren, bukan! Ya! Sangat menyenangkan menggunakan ekspresi di dalam string. f-string memungkinkan kita mengevaluasi ekspresi di dalam string.
Cukup letakkan ekspresi di dalam { } untuk dievaluasi. f-string mengevaluasinya saat runtime program. Ini adalah fitur yang sangat baik karena menghemat waktu dan kode Anda.
Mari lihat contoh berbagai jenis ekspresi.
## ekspresi aritmatika
print(f"{5 * 5}")
25
Kita juga dapat memanggil fungsi di dalam { }. Mari kita definisikan fungsi greet() dan memanggilnya di f-string
def greet(name):
return "Hello, " + name
## memanggil fungsi menggunakan f-string
name = "Datacamp"
print(f"{greet(name)}")
Hello, Datacamp
Dengan cara yang sama, kita juga bisa memanggil metode bawaan. Mari lihat.
## memanggil metode 'title' yang membuat huruf pertama setiap kata menjadi kapital
string = "datacamp is an educational company."
print(f"{string.title()}")
Datacamp Is An Educational Company.
Apa lagi yang bisa kita lakukan dengan f-string? Apakah kita bisa menampilkan objek? Ya, bisa. Caranya sama seperti saat kita menampilkan output variabel.
class Sample:
def __init__(self, name, age):
self.name = name
self.age = age
## metode ini akan dipanggil saat kita mencetak objek
def __str__(self):
return f'{self.name} is {self.age} years old.'
john = Sample("John", 19)
## ini akan memicu metode __str__()
print(f"{john}")
John is 19 years old.
4. Karakter Khusus
Bagaimana jika kita ingin menampilkan karakter khusus seperti {}, \', \"?, yang secara internal digunakan oleh Python untuk makna khusus. Bisakah kita menggunakan karakter escape di dalam f-string? Mari kita lihat jawabannya.
4.1. Tanda Kutip
Kita dapat menggunakan tanda kutip apa pun {tunggal atau ganda atau tiga} di f-string. Kita harus menggunakan karakter escape untuk mencetak tanda kutip. Ekspresi f-string tidak mengizinkan penggunaan backslash. Kita harus meletakkannya di luar { }.
Mari lihat melalui contoh.
name = "Datacamp"
## menampilkan tanda kutip tunggal
print(f"Hello, \'{name}\'")
print()
## menampilkan tanda kutip ganda
print(f"Hello, \"{name}\"")
Hello, 'Datacamp'
Hello, "Datacamp"
Mari lihat jenis tanda kutip lainnya di f-string.
f'{"Hello, Datacamp"}'
'Hello, Datacamp'
f"{'Hello, Datacamp'}"
'Hello, Datacamp'
f"""Hello, Datacamp"""
'Hello, Datacamp'
f'''Hello, Datacamp'''
'Hello, Datacamp'
Kita juga bisa menyertakan { } di dalam tanda kutip tiga.
Anda tidak bisa menggunakan backslash di dalam { } pada f-string. Anda akan mendapatkan error jika backslash disertakan di dalam { }.
print(f"{\"Datacamp\"}")
File "<ipython-input-60-b9a2502d6274>", line 1
print(f"{\"Datacamp\"}")
^
SyntaxError: f-string expression part cannot include a backslash
4.2. Kurung Kurawal
Kita harus menggunakan dua set kurung kurawal untuk mencetak kurung kurawal menggunakan f-string. Mari lihat contohnya.
print(f"{{Datacamp}}")
{Datacamp}
Jika Anda ingin menampilkan dua set kurung kurawal menggunakan f-string, maka Anda harus menggunakan empat set kurung kurawal.
print(f"{{{{Datacamp}}}}")
{{Datacamp}}
5. Dictionary
Kita harus sedikit berhati-hati saat berhadapan dengan key dictionary di dalam f-string. Anda harus menggunakan tanda kutip yang berbeda antara key dictionary dan f-string. Anda tidak diizinkan menggunakan jenis tanda kutip yang sama untuk key dictionary seperti pada f-string.
person = {"name": "John", "age": 19}
print(f"{person['name']} is {person['age']} years old.")
John is 19 years old.
Anda tidak boleh menggunakannya seperti berikut dalam kasus dictionary.
person = {"name": "John", "age": 19}
print(f'{person['name']} is {person['age']} years old.')
File "<ipython-input-65-6849ff0810ae>", line 2
print(f'{person['name']} is {person['age']} years old.')
^
SyntaxError: invalid syntax
Kesimpulan
Saya harap Anda mempelajari sesuatu yang baru di Python melalui tutorial ini. Untuk mempelajari lebih lanjut tentang string dan teknik pemformatan sebelumnya, kunjungi tutorial ini di Datacamp. Juga, lihat kursus DataCamp Regular Expressions in Python.
Selamat ngoding :)
