Panduan Lengkap untuk Pemula dalam Pengformatan String Python

Hai di sana, pemrogram Python yang berhasrat! Saya sangat gembira untuk menjadi pemandu anda dalam perjalanan yang menarik ini ke dunia pengformatan string. Sebagai seseorang yang telah mengajar Python untuk beberapa tahun, saya bisa memberikan jaminan kepada anda bahawa menguasai pengformatan string adalah seperti belajar untuk melukis dengan kata-kata - ia praktis dan kreatif. Jadi, mari kita melompat ke dalam dan menjelajahi teknik pengformatan string Python yang berwarna-warni!

Python - String Formatting

Mengapa Pengformatan String Penting

Sebelum kita melompat ke detilnya, izinkan saya untuk berbagi cerita singkat. saya sekalipun memiliki pelajar yang berjuang untuk menampilkan data dalam format yang dapat dibaca. Dia sedang membina aplikasi cuaca tetapi tidak bisa menemukan cara untuk menampilkan suhu dan kelembaban secara rapi. Itulah saat pengformatan string menyelamatkan dia! Pada akhir tutorial ini, anda akan diperlengkap untuk menghadapi tantangan serupa dengan mudah.

Sekarang, mari kita jelajahi berbagai metode pengformatan string di Python, dimulai dari dasar-dasar dan secara perlahan bergerak ke teknik-teknik yang lebih maju.

Menggunakan Operator %

Operator % adalah metode pengformatan string tertua di Python. Walaupun ia tidak begitu populer di Python modern, memahami itu adalah penting karena anda mungkin akan menjumpai itu di atas kode lama.

Sintaks Dasar

print("Hello, %s!" % "World")

Dalam contoh ini, %s adalah wadah bagi string, dan "World" adalah nilai yang menggantikannya. Outputnya akan adalah:

Hello, World!

Nilai Berbilang

Anda dapat menggunakan wadah berbilang:

nama = "Alice"
umur = 25
print("Nama saya adalah %s dan saya berumur %d tahun." % (nama, umur))

Output:

Nama saya adalah Alice dan saya berumur 25 tahun.

Di sini, %s untuk strings dan %d untuk integers. Nilai-nilai tersebut disediakan sebagai tuple.

Spesifikator Pengformatan

Anda dapat mengontrol pengformatan lebih presisi:

pi = 3.14159
print("Pi adalah kira-kira %.2f" % pi)

Output:

Pi adalah kira-kira 3.14

.2f menentukan bahwa kita ingin dua tempat desimal untuk angka pecahan kita.

Menggunakan Metode format()

Metode format() adalah pendekatan yang lebih modern dan fleksibel ke pengformatan string. Ini adalah pilihan pribadi saya karena kesederhanaannya dan keversianya.

Sintaks Dasar

print("Hello, {}!".format("World"))

Output:

Hello, World!

Nilai Berbilang

nama = "Bob"
umur = 30
print("Nama saya adalah {} dan saya berumur {} tahun.".format(nama, umur))

Output:

Nama saya adalah Bob dan saya berumur 30 tahun.

Argumen Posisi

Anda dapat menentukan urutan argumen:

print("{1} adalah {0} tahun tua.".format(25, "Charlie"))

Output:

Charlie adalah 25 tahun tua.

Argumen Bernama

Untuk pembacaan yang lebih baik:

print("The {hewan} melompat atas {barang}.".format(hewan="sapi", barang="bulan"))

Output:

The sapi melompat atas bulan.

Menggunakan f-strings (String literals yang diformat)

F-strings, diperkenalkan di Python 3.6, adalah metode pilihan saya untuk pengformatan string. Mereka ringkas, dapat dibaca, dan kuat.

Sintaks Dasar

nama = "David"
umur = 35
print(f"Nama saya adalah {nama} dan saya berumur {umur} tahun.")

Output:

Nama saya adalah David dan saya berumur 35 tahun.

Ekspresi Di Dalam f-strings

Anda dapat meletakkan ekspresi Python yang sah di dalam kurung kurawal:

x = 10
y = 20
print(f"Jumlah dari {x} dan {y} adalah {x + y}")

Output:

Jumlah dari 10 dan 20 adalah 30

Spesifikator Pengformatan

F-strings juga mendukung spesifikator pengformatan:

import math
print(f"Nilai pi adalah kira-kira {math.pi:.2f}")

Output:

Nilai pi adalah kira-kira 3.14

Menggunakan Kelas String Template

Kelas String Template menawarkan sintaks yang lebih sederhana, khususnya berguna ketika bekerja dengan string yang diberikan pengguna.

Penggunaan Dasar

from string import Template

t = Template("Hello, $nama!")
print(t.substitute(nama="Eve"))

Output:

Hello, Eve!

Substitusi Berbilang

t = Template("$siapa menyukai $apa")
d = {"siapa": "Semua orang", "apa": "Python"}
print(t.substitute(d))

Output:

Semua orang menyukai Python

Perbandingan Metode

Berikut adalah perbandingan singkat dari metode pengformatan string yang berbeda:

Metode Kelebihan Kekurangan
Operator % Simple untuk penggunaan dasar Kurang dapat dibaca untuk pengformatan kompleks
format() Fleksibel, dapat dibaca Sedikit lebih verbose daripada f-strings
f-strings Ringkas, membolehkan ekspresi Hanya tersedia di Python 3.6+
Template Aman untuk input pengguna Pilihan pengformatan terbatas

Kesimpulan

Selamat! Anda baru saja mengambil tur besar dari metode pengformatan string Python. Dari operator klasik % ke f-strings yang modern, anda sekarang memiliki toolkit untuk membuat string anda bersinar. Ingat, seperti setiap keterampilan dalam pemrograman, kesusahan datang dengan praktek. Jadi, jangan ragu untuk bereksperimen dengan metode ini di atas projek anda sendiri.

Sebagai penutup, ini adalah tantangan kecil untuk anda: Cobalah membuat program sederhana yang mengformat dan menampilkan informasi tentang buku atau film kesukaan anda menggunakan setiap metode yang kita diskusikan. Ini adalah cara yang menyenangkan untuk menyempurnakan pemahaman anda dan melihat metode mana yang anda sukai.

Selamat coding, dan semoga string anda selalu diformat dengan sempurna!

Credits: Image by storyset