For AI agents: use /llms.txt for the Nakafa content index.
Fungsi bawaan print() menulis representasi teks suatu nilai ke stream. Secara default stream tersebut adalah sys.stdout, yang biasanya ditampilkan terminal di layar. Output juga dapat dialihkan ke file atau tujuan lain.
Fungsi print termasuk dalam kategori built-in function, sama seperti len(), abs(), dan round(). Artinya kamu tidak perlu mengimpor modul tambahan untuk menggunakannya.
Sintaks lengkap fungsi print memiliki beberapa parameter yang dapat dikustomisasi untuk mengontrol cara output ditampilkan.
# Sintaks lengkap fungsi print
# print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)
# Contoh penggunaan dasar
print("Hello, World!")
# Print dengan multiple objects
print("Nama:", "Ahmad", "Umur:", 25)
# Menampilkan hasil perhitungan
x = 10
y = 5
print("Hasil penjumlahan", x, "+", y, "=", x + y)Notasi *objects berarti print() menerima nol atau lebih objek posisional. Separator yang ditentukan oleh sep ditulis di antara dua objek yang berdekatan.
Parameter sep menentukan karakter atau string yang digunakan untuk memisahkan multiple objects dalam satu pemanggilan print. Default value dari sep adalah spasi tunggal.
# Contoh penggunaan parameter sep
x = 8
# Default separator (spasi)
print("Solve", 2, "x =", x, "for x")
# Custom separator dengan string kosong
print("Solve", 2, "x =", x, "for x", sep="")
# Custom separator dengan tanda hubung
print("Solve", 2, "x =", x, "for x", sep="-")
# Custom separator dengan koma dan spasi
print("Ahmad", "Budi", "Citra", sep=", ")
# Multiple separator characters
print("Python", "Java", "JavaScript", sep=" | ")
# Separator dengan karakter khusus
print("Data", "Science", "Machine", "Learning", sep="\t") # tab
print("Baris", "Pertama", "Baris", "Kedua", sep="\n") # newlinePenggunaan separator yang tepat dapat membuat output lebih mudah dibaca dan sesuai dengan format yang diinginkan.
Parameter end menentukan karakter atau string yang ditambahkan di akhir output. Default value dari end adalah newline (\n), yang menyebabkan setiap pemanggilan print membuat baris baru.
# Contoh penggunaan parameter end
# Default end (newline)
print("Baris pertama")
print("Baris kedua")
print() # Print baris kosong untuk pemisah
# Custom end dengan string kosong
print("Kata pertama", end="")
print("Kata kedua")
print() # Print baris kosong untuk pemisah
# Custom end dengan spasi
print("Angka:", end=" ")
print(42)
print() # Print baris kosong untuk pemisah
# Custom end dengan karakter khusus
print("Loading", end="")
for i in range(5):
print(".", end="")
print(" Selesai!")
print() # Print baris kosong untuk pemisah
# Kombinasi sep dan end
print("A", "B", "C", sep="-", end=" | ")
print("D", "E", "F", sep="-", end="\n")Mengubah end memungkinkan beberapa pemanggilan melanjutkan output pada baris yang sama. Jika output harus langsung terlihat tanpa menunggu buffer, gunakan juga flush=True.
print() menerima objek dari berbagai tipe dan mengambil representasi string yang mudah dibaca sebelum menulisnya. Class buatan sendiri dapat mengatur representasi tersebut melalui __str__().
# Print berbagai tipe data
angka_bulat = 42
angka_desimal = 3.14159
string_text = "Python Programming"
boolean_value = True
list_data = [1, 2, 3, 4, 5]
dict_data = {"nama": "Ahmad", "umur": 25}
print("Integer:", angka_bulat)
print("Float:", angka_desimal)
print("String:", string_text)
print("Boolean:", boolean_value)
print("List:", list_data)
print("Dictionary:", dict_data)
# Print dengan format yang lebih rapi
print("\nFormat yang lebih rapi:")
print(f"Nama: {dict_data['nama']}")
print(f"Umur: {dict_data['umur']} tahun")
print(f"Pi: {angka_desimal:.2f}")
# Print multiple types dalam satu baris
print("Hasil:", angka_bulat, "+", angka_desimal, "=", angka_bulat + angka_desimal)Kemampuan print untuk menangani berbagai tipe data membuatnya sangat fleksibel untuk debugging dan menampilkan informasi program.
F-string mengevaluasi ekspresi di dalam kurung kurawal dan dapat menerapkan format specification. Nilai dan teks yang mengelilinginya tetap berada dalam satu ekspresi yang mudah dibaca.
# Contoh formatting dengan f-string
nama = "Sari"
umur = 23
nilai = 87.5
# Basic f-string formatting
print(f"Nama: {nama}")
print(f"Umur: {umur} tahun")
print(f"Nilai: {nilai}")
# F-string dengan operasi matematika
x = 10
y = 3
print(f"{x} + {y} = {x + y}")
print(f"{x} / {y} = {x / y:.2f}")
# F-string dengan method calls
text = "python programming"
print(f"Original: {text}")
print(f"Title case: {text.title()}")
print(f"Length: {len(text)} characters")
# F-string dengan conditional
score = 85
status = "Lulus" if score >= 70 else "Tidak Lulus"
print(f"Nilai: {score}, Status: {status}")
# F-string dengan formatting angka
pi = 3.14159265359
print(f"Pi dengan 2 desimal: {pi:.2f}")
print(f"Pi dengan 4 desimal: {pi:.4f}")
completion = 0.875
print(f"Penyelesaian: {completion:.1%}") # 87.5%F-string memberikan cara yang sangat readable dan efisien untuk menggabungkan teks dengan variabel atau hasil perhitungan.
Ketika kamu ingin menampilkan output dalam satu baris secara bertahap, parameter end dapat diubah untuk menghindari newline otomatis.
# Contoh print tanpa newline
import time
# Simulasi loading dengan dots
print("Memproses", end="")
for i in range(5):
time.sleep(0.5) # Delay setengah detik
print(".", end="", flush=True)
print(" Selesai!")
# Membuat progress bar sederhana
print("\nProgress: [", end="")
for i in range(10):
time.sleep(0.2)
print("#", end="", flush=True)
print("] 100%")
# Print counter dalam satu baris
print("\nCountdown: ", end="")
for i in range(5, 0, -1):
print(i, end=" ", flush=True)
time.sleep(1)
print("Start!")
# Menampilkan data dalam format tabel
print("\nTabel Data:")
print("Nama", "Umur", "Kota", sep="\t")
print("-" * 30)
print("Ahmad", 25, "Jakarta", sep="\t")
print("Budi", 30, "Bandung", sep="\t")
print("Citra", 28, "Surabaya", sep="\t")Argumen end menahan setiap pembaruan pada baris yang sama, sedangkan flush=True meminta Python segera menulis output yang masih berada di buffer. Untuk progress display sungguhan, perhatikan juga kemampuan terminal dan jangan menganggap tab atau lebar karakter selalu dirender sama.