Berbagai Cara pemformatan String dengan Python: 3 Metode Teratas

Diterbitkan: 2021-02-23

Pemformatan string adalah fitur penting dalam bahasa pemrograman untuk memformat atau menyisipkan nilai dan posisi yang ditentukan pengguna dalam string. Bahasa C memiliki satu cara untuk melakukan ini yang mungkin Anda kenal jika Anda memiliki pengalaman dengan bahasa C. Python, bagaimanapun, mendukung bukan 1, bukan 2, tetapi 3 cara berbeda untuk melakukan pemformatan string. Setiap cara memiliki kelebihan dan kekurangan yang akan kita lihat dalam tutorial ini. Kita juga akan melihat mana dari 3 metode tersebut yang paling banyak digunakan dan efisien.

Pelajari kursus ilmu data online dari Universitas top dunia. Dapatkan Program PG Eksekutif, Program Sertifikat Tingkat Lanjut, atau Program Magister untuk mempercepat karier Anda.

Pada akhir tutorial ini, Anda akan mengetahui hal berikut:

  • Berbagai cara pemformatan string
  • Penggunaannya dengan contoh
  • Cara mana yang paling disukai

Daftar isi

Berbagai Cara Memformat String

Python telah mendapatkan beberapa pembaruan untuk meningkatkan pemformatan string. Mari kita bahas satu per satu.

Metode 1: Pemformatan String Gaya C

Python menyertakan cara lama pemformatan string dengan menggunakan karakter khusus untuk setiap tipe data. Metode pemformatan string lama yang bagus ini diadopsi dari bahasa C dan masih sangat efektif. Penentu format string “%” diikuti oleh karakter khusus untuk setiap tipe data digunakan untuk memformat string.

Mari kita lihat contoh kecil untuk memahami ini:

bilangan = 8
nama = "pria merah muda"
print(“Nama adalah %s dan nomor adalah %d” %( nama, angka))

#Keluaran
>> “Namanya pinkman dan nomornya 8”

Seperti yang Anda lihat, penentu format %s digunakan untuk memformat nama string dan %d digunakan untuk memformat bilangan bulat. Demikian pula, ada penentu format untuk float juga. Mari kita periksa juga.

bilangan = 4.32
lis = [ 1 , 3 , 5 ]
print( "daftar adalah %s dan float adalah %f" %(lis, angka))

#Keluaran
>> list adalah [ 1 , 3 , 5 ] dan float adalah 4.320000

Dalam contoh di atas, saya menggunakan penentu format %f untuk memformat nilai float. Dua hal yang perlu diperhatikan di sini. Satu, nilai float dicetak sebagai 4,320000 dan bukan hanya 4,32. Kenapa begitu? Ini karena Python secara default menggunakan akurasi 6 titik desimal untuk float. Kedua, saya mencetak daftar menggunakan penentu format string. Ini tidak berarti bahwa penentu format %s dapat menerima tipe data apa pun. Itu hanya mengubahnya menjadi string dan mencetaknya. Jadi daftar yang dicetak pada dasarnya adalah string dan bukan daftar.

Baiklah, jadi bagaimana cara menentukan berapa banyak akurasi titik desimal yang diperlukan?

print(“daftar adalah %s dan float dengan akurasi 2 poin adalah %.2f” %(lis, angka))

#Keluaran
>> list adalah [ 1 , 3 , 5 ] dan float adalah 4.32

Hal lain yang perlu diperhatikan di sini adalah bahwa kita perlu memberikan variabel dalam urutan penggunaannya dalam string. Jika urutan diubah maka output diatur untuk terpengaruh sesuai. Alternatif untuk tidak mengharuskan kita memberikan variabel dalam urutan yang benar setiap saat adalah dengan menggunakan pemformatan string dengan cara yang sedikit berbeda.

print(“daftar adalah %(a)s dan float adalah %(b)f” %{“b”: num, “a”: lis})

#Keluaran
>> list adalah [ 1 , 3 , 5 ] dan float adalah 4.320000

Dan seperti yang Anda lihat, ini sangat rumit untuk ditulis.

Jadi untuk meringkas, 3 penentu format yang paling sering digunakan adalah:

  1. %s untuk string
  2. %d untuk bilangan bulat
  3. %.<akurasi desimal>f untuk float

Metode 2: Pemformatan String Gaya Baru

Python 3 memperkenalkan cara yang lebih baik untuk melakukan pemformatan string dengan menggunakan metode format() pada string. Placeholder digunakan dengan menempatkan kurung kurawal dan metode format berisi variabel yang perlu ditempatkan pada posisi tersebut dalam string. Mari kita lihat contoh kecil untuk memahami hal ini.

nama = "pendaki langit"
print(“Hai, nama saya {}”.format(nama))

#Keluaran
>> Hai, nama saya skyler

Ini jauh lebih baik daripada pemformatan gaya lama yang kita lihat di atas. Kurung kurawal bertindak sebagai pengganti nama variabel yang berisi string. Perhatikan, bahwa dengan metode format kita tidak perlu menentukan tipe data variabel seperti yang kita lakukan pada pemformatan gaya lama.

Contoh dengan angka juga:

bilangan = 3
int = 4.34
nama = “jessy”

print( “Hai, nama saya {}, nomor {} dan float adalah {}” .format(name, num, int))

#Keluaran
>> Hai, nama saya jessy , nomor 3 dan float adalah 4.34

Rapi! Seperti yang Anda lihat, variabel perlu diteruskan ke metode format sesuai urutan penggunaannya dalam string. Cara lain untuk menggunakan metode format dengan tidak mengharuskan kita untuk melewatkan semua variabel dalam urutan yang benar:

print(“Hai, nama saya {name}, nomor {num} dan float {int}”.format(int=int, num=num , name=name))

#Keluaran
>> Hai, nama saya jessy , nomor 3 dan float adalah 4.34

Dalam contoh di atas, kita melihat bahwa ketika variabel disebutkan secara eksplisit di placeholder, maka kebutuhan untuk meneruskannya ke metode format dalam urutan yang benar tidak lagi diperlukan.

Kami juga dapat melewatkan posisi variabel di placeholder untuk melacaknya dengan lebih baik.

print(“Hai, nama saya {0}, nomor {1} dan float adalah {2}”.format(name, num, int))

#Keluaran
>> Hai, nama saya jessy , nomor 3 dan float adalah 4.34

Metode 3: Menggunakan F-String

Diperkenalkan di Python 3.6, f-string adalah cara termudah dan paling efisien untuk melakukan pemformatan string. Ini juga disebut literal string yang diformat. Mereka menggunakan f literal di awal string untuk memberi tahu python agar memperlakukannya sebagai string yang diformat. Placeholder berisi variabel aktual yang perlu ditempatkan di posisi itu.

Mari kita lihat sebuah contoh.

nama = “heisenberg”
tagihan = 100.43print(f”Namanya {name} dan tagihannya {bill}”)

#Keluaran
>> Namanya heisenberg dan tagihannya 100,43 _

Ini cukup mudah. Selain itu, kita juga dapat menempatkan ekspresi secara langsung sebagai ganti variabel.

a = 5
b = 8

print( f”Jumlahnya adalah {a+b} )

#Keluaran
>> Jumlahnya 13

Kita juga dapat memanggil fungsi secara langsung dan mendapatkan outputnya dalam literal string.

print( f”Namanya {name.upper()} )

#Keluaran
>> Namanya HEISENBERG

Selain itu, kita juga dapat menggunakan string f untuk mengembalikan nilai dari fungsi secara langsung.

def combiner (nama, usia, uang):
return f”{name} berumur {age} dan memiliki gaji {money}”

Saul Goodman berusia 45 tahun dan memiliki gaji 2000000

Seperti yang kita lihat, ketika kita meneruskan fungsi secara langsung ke placeholder, ia memanggil fungsi dan langsung menempatkan output dalam kurung kurawal. Jelas, metode Pemformatan String ini adalah yang paling efisien dan mudah untuk ditulis.

Checkout: Pertanyaan & Jawaban Wawancara Python

Sebelum kamu pergi

Pemformatan string adalah tugas biasa dan cara Python memperkenalkan metode format dan string f membuatnya sangat mudah bagi orang yang bekerja dengan Python. F-string adalah cara yang paling banyak digunakan dan disukai untuk bekerja dengan pemformatan string karena membuatnya sangat mudah untuk ditulis dan dipelihara. Plus, itu membuat kode lebih Pythonic juga! Di bawah tenda, string f menggunakan protokol __format__. F literal hanyalah gula sintaksis yang ditawarkan python kepada penggunanya untuk memudahkan kita menulis pemformatan string.

Jika Anda penasaran untuk belajar tentang ilmu data, lihat Program PG Eksekutif IIIT-B & upGrad dalam Ilmu Data yang dibuat untuk para profesional yang bekerja dan menawarkan 10+ studi kasus & proyek, lokakarya praktis, bimbingan dengan pakar industri, 1 -on-1 dengan mentor industri, 400+ jam pembelajaran dan bantuan pekerjaan dengan perusahaan-perusahaan top.

Metode pemformatan mana dalam Python 3 yang memungkinkan banyak penggantian dan pemformatan nilai?

1. Metode built-in string format() Python mengubah string yang disediakan menjadi output yang lebih berguna. Fungsi format() dalam Python3 adalah salah satu metode pemformatan string yang memungkinkan banyak penggantian serta pemformatan nilai. Metode format() menggunakan pemformatan posisi untuk menggabungkan item dalam string.
2. String dapat diformat menggunakan banyak pasang kurung kurawal. Jika penggantian variabel lain diperlukan dalam string panjang, set kedua kurung kurawal dapat ditambahkan dan nilai kedua diteruskan ke prosedur.
3. Fungsi format() dalam Python menerima sejumlah parameter. Namun, itu terutama dipisahkan menjadi dua jenis parameter berikut.
Sebuah. Parameter posisi adalah daftar parameter yang dapat diambil dengan meletakkan indeks parameter di dalam tanda kurung kurawal (indeks).
B. Parameter kata kunci – Ini adalah daftar parameter key=value yang dapat diakses menggunakan kunci parameter di dalam kurung kurawal.
4. Metode format() mengembalikan string yang telah diformat. Fungsi format() membaca tipe argumen yang diberikan padanya dan memformatnya sesuai dengan kode format dalam string.

Bagaimana Anda mencetak tanpa baris baru di Python 3?

Tambahkan argumen tambahan ke metode cetak Anda di Python 3 untuk memberi tahu komputer bahwa Anda tidak ingin string berikutnya berada di baris baru. Pertimbangkan skenario berikut.
print('Selamat datang!', akhir = ')
Dalam hal ini, fungsi cetak selanjutnya akan muncul pada baris yang sama.

Bisakah kita mengonversi string menjadi float dengan Python?

1. Mereka adalah objek string jika kita memperoleh nilai float melalui input pengguna melalui terminal serta membacanya dari file. Akibatnya, kita harus secara eksplisit mengubahnya menjadi float untuk melakukan operasi yang diperlukan seperti penambahan, perkalian, dan sebagainya.
2. Metode float() dalam Python dapat digunakan untuk mengonversi string menjadi float. Ini adalah fungsi bawaan untuk mengonversi angka floating-point menjadi objek. Secara internal, fungsi float() memanggil fungsi __float__() dari objek yang disediakan.