09. Toolkit print

Sejak Bab 07, print adalah jendela kamu ke dalam program yang sedang berjalan. print bisa melakukan lebih dari sekadar menampilkan satu string. Bab ini mengumpulkan trik-trik yang akan kamu gunakan dari sini: beberapa nilai sekaligus, mengontrol apa yang ada di antara nilai-nilai tersebut, dan baris kosong.

Beberapa nilai, dipisahkan oleh spasi

Pisahkan nilai dengan koma untuk memberikan print lebih dari satu. print akan mencetaknya dalam satu baris dengan spasi di antara masing-masing:

print("Name", "Level", "HP")
print("Keiko", 7, 95)

Output:

Name Level HP
Keiko 7 95

Dua hal yang perlu diperhatikan. Nilai bisa berbeda tipe — string dan angka dicampur dengan bebas. Dan angka tidak perlu tanda kutip; 7 adalah angka, "7" adalah string.

Mengontrol pemisah

Secara default print menggunakan satu spasi di antara nilai. Kamu bisa mengubahnya dengan keyword argument sep:

print("Name", "Level", "HP", sep=", ")
print("Keiko", 7, 95, sep=", ")

Output:

Name, Level, HP
Keiko, 7, 95

Set sep="" (string kosong) untuk tidak menaruh apa pun di antara nilai-nilai.

Mengontrol akhiran

Secara default print menaruh baris baru di akhir. Kamu bisa mengubahnya dengan keyword argument end:

print("Loading", end="")
print("... done")

Output:

Loading... done

Kedua panggilan berada di baris yang sama karena yang pertama tidak diakhiri dengan baris baru.

F-string: membangun baris dengan tepat

Untuk kontrol penuh atas spasi dan tata letak, gunakan f-string. Taruh f sebelum tanda kutip pembuka dan gunakan kurung kurawal {} untuk memasukkan nilai ke dalam teks:

name = "Keiko"
hp = 95
level = 7
print(f"{name} has {hp} HP at level {level}")

Output:

Keiko has 95 HP at level 7

Dengan f-string tidak ada pemisah otomatis — kamu yang menentukan apa yang ada di antara bagian-bagian, termasuk spasi. F-string juga menangani angka secara langsung; tidak perlu konversi.

Buka exercises/09/01-comma-vs-fstring.py. Program ini mencetak tiga nilai dua kali: sekali dengan koma, sekali dengan f-string. Jalankan dan bandingkan dua outputnya.

Koma atau f-string: mana yang digunakan?

Keduanya boleh. Panduan kasar:

  • Koma: paling cepat ketika output yang dipisahkan spasi sudah cukup (debugging, pengecekan cepat).
  • F-string: untuk kalimat yang rapi dengan spasi dan tanda baca yang tepat, seperti "Keiko has 95 HP".
name = "Keiko"
hp = 95
print(name, "has", hp, "HP")           # Keiko has 95 HP
print(f"{name} has {hp} HP")           # Keiko has 95 HP

Yang kedua lebih mudah dibaca ketika output perlu terlihat seperti sebuah kalimat.

Baris kosong

print() tanpa apa pun di dalamnya mencetak baris kosong. Gunakan untuk memberi jarak pada output agar lebih mudah dibaca:

print("Chapter 1")
print()
print("Chapter 2")

Output:

Chapter 1

Chapter 2

Angka bukan teks angkanya

Satu hal terakhir. Keduanya terlihat sama tapi adalah tipe yang berbeda:

print(7)        # the number seven
print("7")      # a string containing the character 7

Keduanya menampilkan 7, tapi yang satu adalah angka dan yang lain teks — tipe yang berbeda. Python kadang bisa menjembatani perbedaan ini, tapi jangan andalkan itu. Kamu akan mengenal tipe di bagian berikutnya. Untuk sekarang, ketahui saja bahwa angka dan versi teksnya berbeda meskipun terlihat sama. Ini penting di bab input, di mana apa yang diketik pengguna tiba sebagai teks.

Pekerjaan Rumah

File pekerjaan rumah ada di exercises/09/homework/.

Soal 1 — Baris stat

Buka exercises/09/homework/01-stat-row.py. Menggunakan satu print dengan koma, cetak ini dalam satu baris: string Keiko, angka 7, dan angka 95. Jalankan dan perhatikan spasi di antara nilai-nilai.

Soal 2 — Baris yang rapi

Buka exercises/09/homework/02-polished-line.py. Cetak baris ini dengan tepat:

Keiko has 95 HP at level 7

menggunakan f-string, dengan name, hp, dan level dari variable di bagian atas. Spasinya harus cocok persis.

Soal 3 — Berikan jarak

Buka exercises/09/homework/03-spaced-out.py. Cetak tiga baris teks dengan satu baris kosong di antara masing-masing, menggunakan print() untuk baris kosong. Lima panggilan total.

Tantangan — Kwitansi

Buka exercises/09/homework/04-receipt.py. Tiga item dengan harga ada di variable. Cetak kwitansi: setiap item di barisnya sendiri menggunakan f-string sebagai f"{name}: {price}", satu baris kosong, lalu baris total yang juga dibuat dengan f-string. Hitung total dari variable-variable tersebut, jangan ketik sebagai angka.

Stuck atau sudah selesai? Buka halaman solusi pekerjaan rumah.