Format Python ()

Metode built-in format () mengembalikan representasi berformat dari nilai yang diberikan yang dikontrol oleh penentu format.

The format()fungsinya hampir sama dengan format metode String. Secara internal, kedua metode memanggil __format__()metode suatu objek.

Sementara format()fungsi bawaan adalah implementasi tingkat rendah untuk memformat objek menggunakan secara __format__()internal, string format()adalah implementasi tingkat yang lebih tinggi yang mampu melakukan operasi pemformatan kompleks pada beberapa string objek juga.

Sintaks dari format () adalah:

 format (nilai (, format_spec))

format () Parameter

The format()Fungsi membutuhkan dua parameter:

  • nilai - nilai yang perlu diformat
  • format_spec - Spesifikasi tentang bagaimana nilai harus diformat.

Penentu format bisa dalam format:

((isi) sejajarkan) (tanda) (#) (0) (lebar) (,) (. presisi) (jenis) di mana, opsinya adalah isi :: = sembarang karakter perataan :: = "" | "=" | "^" tanda :: = "+" | "-" | "" width :: = presisi integer :: = tipe integer :: = "b" | "c" | "d" | "e" | "E" | "f" | "F" | "g" | "G" | "n" | "o" | "s" | "x" | "X" | "%"

Kunjungi tautan ini untuk mempelajari lebih lanjut tentang tipe format dan perataan.

Kembalikan nilai dari format ()

The format()mengembalikan fungsi representasi diformat dari nilai yang diberikan ditentukan oleh format specifier.

Contoh 1: Pemformatan angka dengan format ()

 # d, f and b are type # integer print(format(123, "d")) # float arguments print(format(123.4567898, "f")) # binary format print(format(12, "b"))

Keluaran

 123 123.456790 1100

Contoh 2: Pemformatan angka dengan isian, ratakan, tanda, lebar, presisi, dan jenis

 # integer print(format(1234, "*>+7,d")) # float number print(format(123.4567, "^-09.3f"))

Keluaran

 * + 1.234 0123.4570

Di sini, saat memformat integer 1234, kami telah menetapkan penentu pemformatan *>+7,d. Mari kita pahami setiap opsi:

  • * - Ini adalah karakter isian yang mengisi ruang kosong setelah pemformatan
  • > - Ini adalah opsi perataan kanan yang menyelaraskan string keluaran ke kanan
  • + - Ini adalah opsi tanda yang memaksa nomor yang akan ditandatangani (memiliki tanda di sebelah kiri)
  • 7 - Ini adalah opsi lebar yang memaksa angka untuk mengambil lebar minimum 7, spasi lain akan diisi oleh karakter isian
  • , - Ini adalah ribuan operator yang menempatkan koma di antara ribuan.
  • d - Ini adalah opsi tipe yang menentukan nomor tersebut adalah integer.

Saat memformat angka floating point 123.4567, kami telah menentukan format specifier ^-09.3f. Ini adalah:

  • ^ - Ini adalah opsi perataan tengah yang menyelaraskan string keluaran ke tengah ruang yang tersisa
  • - - Ini adalah opsi tanda yang memaksa hanya angka negatif untuk menunjukkan tanda
  • 0 - Ini adalah karakter yang ditempatkan di tempat kosong.
  • 9 - Ini adalah opsi lebar yang menetapkan lebar minimum angka menjadi 9 (termasuk titik desimal, ribuan koma dan tanda)
  • .3 - Ini adalah operator presisi yang menetapkan presisi bilangan mengambang yang diberikan ke 3 tempat
  • f - Ini adalah opsi tipe yang menentukan nomor float.

Contoh 3: Menggunakan format () dengan mengganti __format __ ()

 # custom __format__() method class Person: def __format__(self, format): if(format == 'age'): return '23' return 'None' print(format(Person(), "age"))

Keluaran

 23

Di sini, kami telah mengganti __format__()metode kelas Person.

Sekarang menerima formatparameter dan mengembalikan 23 jika sama dengan 'age'. Jika tidak ada format yang ditentukan, Nonedikembalikan.

The format()fungsi internal berjalan Person().__format__("age")untuk kembali 23.

Artikel yang menarik...