Kursus
Jika Anda baru memulai Python dan ingin mempelajari lebih lanjut, ikuti kursus Introduction to Data Science in Python dari DataCamp.

Banyak dari Anda, saat membaca tutorial ini, mungkin berpikir tidak ada yang baru dari fungsi Print Python yang sederhana karena Anda semua mungkin mulai belajar Python dengan contoh klasik mencetak Hello, World!. Benar juga bahwa di Python atau bahasa pemrograman apa pun, fungsi Print adalah yang paling dasar dan langkah awal saat Anda belajar suatu bahasa. Namun, saat mempelajari bahasa pemrograman, kadang Anda cenderung fokus pada topik yang lebih lanjut dan sering kali melupakan detail atau kemampuan dari fungsi sederhana yang hampir selalu Anda gunakan.
Fokus tutorial hari ini sepenuhnya pada fungsi Print di Python; Anda akan mempelajari fungsi yang paling diremehkan ini.
Mari mulai tutorial ini dengan mencetak contoh Hello, World!.
print("Hello, World!")
Hello, World!
Tidak seperti Python2, yang tidak mengharuskan Anda menggunakan tanda kurung, di Python3, tanda kurung wajib, jika tidak akan memunculkan syntax error seperti di bawah ini.
print "Hello, World!"
File "<ipython-input-6-a1fcabcd869c>", line 1
print "Hello, World!"
^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print("Hello, World!")?
Dari keluaran di atas, Anda dapat menyimpulkan bahwa di Python3, print() bukan pernyataan melainkan sebuah fungsi.
Setelah itu, mari cek type/class dari fungsi print().
type(print)
builtin_function_or_method
Ia mengembalikan builtin_function_or_method, yang berarti ini adalah Fungsi Python yang sudah terdefinisi atau bawaan.
Sekarang misalkan Anda ingin menambahkan baris baru atau spasi vertikal di antara dua keluaran di bawah ini, untuk mencapainya Anda cukup memanggil fungsi print() tanpa meneruskan argumen apa pun.
print("Hello, World!");print("Hello, World!")
Hello, World!
Hello, World!
print("Hello, World!")
print()
print("Hello, World!")
Hello, World!
Hello, World!
Mari lihat sintaks fungsi print(). print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False) Seperti yang Anda ketahui sekarang, fungsi print mencetak nilai ke suatu stream, atau ke sys.stdout secara default. sys.stdout atau keluaran standar sistem berarti fungsi print akan menampilkan keluaran di layar, dan ini bahkan bisa diubah ke stdin atau stderr.
Argumen kata kunci opsional:
-
sep: Dapat berupa string yang ingin Anda sisipkan di antara nilai, defaultnya adalah spasi.Mari masukkan daftar kata ke dalam fungsi print dan pisahkan dengan baris baru. Ingat, secara default pemisah menambahkan spasi kosong di antara setiap kata.
print('datacamp','tutorial','on','python','print','function')
datacamp tutorial on python print function
print('datacamp','tutorial','on','python','print','function',sep='\n') #`\n` akan menempatkan tiap kata di baris baru
datacamp
tutorial
on
python
print
function
Serupa, Anda dapat memisahkannya dengan koma, atau menambahkan dua \n yang akan menambahkan satu baris kosong di antaranya, atau bahkan menambahkan tanda plus $(+)$.
print('datacamp','tutorial','on','python','print','function',sep=',')
datacamp,tutorial,on,python,print,function
print('datacamp','tutorial','on','python','print','function',sep='\n\n')
datacamp
tutorial
on
python
print
function
print('datacamp','tutorial','on','python','print','function',sep=',+')
datacamp,+tutorial,+on,+python,+print,+function
Sebelum Anda lanjut ke argumen berikutnya, yaitu end, ingat bahwa Anda juga bisa meneruskan variabel ke fungsi print. Untuk memahaminya, mari ambil contoh dengan mendefinisikan daftar bilangan bulat dan meneruskannya ke fungsi print. Anda akan mengharapkan daftar bilangan bulat tersebut dicetak.
int_list = [1,2,3,4,5,6]
print(int_list)
[1, 2, 3, 4, 5, 6]
-
end: String yang ditambahkan setelah nilai terakhir, defaultnya baris baru. Ini memungkinkan pemrogram menentukan karakter penutup kustom untuk setiap pemanggilan print selain baris baru default atau\n.Misalkan Anda memiliki dua string dan ingin menggabungkannya dengan spasi, yang perlu Anda lakukan adalah pada fungsi print dari string pertama
str1tambahkan argumenenddengan tanda kutip, dan Anda dapat mengharapkan kedua string digabung dengan spasi.
str1 = 'datacamp tutorial on'
str2 = 'python print function'
print(str1)
print(str2)
datacamp tutorial on
python print function
print(str1,end=' ')
print(str2)
datacamp tutorial on python print function
Mari ambil contoh lain di mana Anda memiliki sebuah fungsi yang tugasnya mencetak semua nilai dalam sebuah daftar pada baris yang sama. Anda dapat mencapainya dengan argumen end, seperti di bawah ini:
def value(items):
for item in items:
print(item, end=' ')
value([1,2,3,4])
1 2 3 4
-
file: Objek mirip berkas (stream); defaultnya sys.stdout saat ini. Di sini Anda dapat menyebutkan berkas tempat Anda ingin menulis atau menambahkan keluaran fungsi print.Dengan menggunakan argumen file, Anda dapat menyimpan keluaran fungsi print ke sebuah berkas dalam berbagai format seperti
.csv,.txt, dll. Mari pahami ini dengan contoh di mana Anda melakukan iterasi pada setiap elemen daftar. Keluaran disimpan dalam berkas teks. Untuk melakukannya, pertama-tama Anda akan membuka berkas teks dalam keadaanappenddi mana Anda akan menyimpan keluaran pernyataan print. Selanjutnya, Anda akan mendefinisikan fungsi yang keluarannya akan ditambahkan ke berkas teks.
file = open('print.txt','a+')
def value(items):
for item in items:
print(item, file=file)
file.close() # tutup berkas setelah eksekusi fungsi selesai.
value([1,2,3,4,5,6,7,8,9,10])
Setelah eksekusi fungsi di atas selesai, Anda akan melihat berkas bernama print.txt di direktori saat ini. Mari buka dan lihat isinya.

Dari keluaran di atas, jelas bahwa Anda bahkan dapat menyimpan keluaran ke berkas dan tidak hanya mencetaknya di terminal atau di dalam notebook.
-
flush: Menentukan apakah stream harus dipaksa untuk dibersihkan (flush). Secara default disetel ke False.Biasanya, keluaran ke berkas atau konsol dibuffer, setidaknya hingga Anda mencetak baris baru (Sumber). Buffer berarti keluaran disimpan di semacam register tempat keluaran berada sebelum siap disimpan atau berkas akhirnya ditutup. Tugas flush adalah memastikan bahwa keluaran yang sedang dibuffer dikirim ke tujuan dengan aman.
import time
print('Please enter your email-id : ', end=' ')
#print('Please enter your email-id : ', end=' ', flush=True) #jalankan ini untuk melihat perbedaannya dan komentari baris kode di atas.
time.sleep(5)
Please enter your email-id :
Jika Anda menjalankan baris-baris kode di atas di terminal, Anda akan melihat bahwa string prompt tidak muncul hingga timer sleep berakhir dan program keluar (Sumber). Namun, jika Anda menambahkan flush=True pada fungsi print, Anda akan melihat prompt, lalu Anda harus menunggu 5 detik hingga program selesai.
Entah bagaimana Jupyter Notebook atau Jupyter Lab menangani hal ini dan menampilkan prompt sebelum timer 5 detik, jadi jika Anda ingin menguji fungsionalitas print ini, pastikan menjalankannya di terminal command line dan bukan di jupyter notebook.
Sekarang mari lihat bagaimana Anda dapat memanfaatkan fungsi print untuk mengambil input dari pengguna di jupyter notebook. Untuk ini, Anda akan menggunakan fungsi bawaan Python input().
tutorial_topic = input()
print("The topic of today's tutorial is: ", end='')
print(tutorial_topic)
Print Function
The topic of today's tutorial is: Print Function
Begitu Anda menjalankan sel di atas, Anda akan melihat keluaran seperti di bawah ini:

Di sini Anda mendefinisikan argumen bernama opsional end yang Anda pelajari sebelumnya, yang menggabungkan pernyataan statis di dalam pernyataan print dengan input pengguna.
Mari lihat beberapa cara yang lebih menarik untuk mencetak nilai variabel di dalam fungsi print.
- Untuk menampilkan nilai variabel bersama string yang sudah ditentukan, yang perlu Anda lakukan hanyalah menambahkan koma di antara keduanya. Di sini posisi string yang sudah ditentukan dan variabel tidak masalah.
a = 2
b = "Datacamp"
print(a,"is an integer while",b,"is a string.")
2 is an integer while Datacamp is a string.
-
Anda dapat menggunakan argumen
formatdi mana Anda dapat meneruskan sebanyak mungkin variabel yang ingin dicetak. Saat meneruskan variabel ke fungsi format, Anda perlu menentukan nomor indeks (urutan penempatannya di dalam argumen format) pada string yang sudah ditentukan. Jadi fungsi print ini sekarang akan bertindak sebagai templat untuk Anda.Hal lain yang perlu diingat adalah di sini nomor indeks diwakili dengan kurung kurawal
{}yang menjadi placeholder.Mari pahami dengan contoh di bawah ini:
a = 2
b = "Datacamp"
print("{0} is an integer while {1} is a string.".format(a,b))
2 is an integer while Datacamp is a string.
Jika Anda menempatkan nomor indeks dari variabel kedua di kedua tempat, seperti yang diharapkan, ini akan mencetak nilai yang sama, dalam hal ini variabel b untuk keduanya.
print("{1} is an integer while {1} is a string.".format(a,b))
Datacamp is an integer while Datacamp is a string.
-
Mirip dengan argumen
formatdi mana fungsi print Anda bertindak sebagai templat, Anda memiliki tanda persen (%) yang dapat digunakan untuk mencetak nilai variabel.Seperti argumen format, ini juga memiliki konsep placeholder. Namun, berbeda dengan fungsi
formatdi mana Anda hanya meneruskan nomor indeks, di sini Anda juga perlu menentukan tipe data yang diharapkan placeholder.- %d digunakan sebagai placeholder untuk nilai numerik atau desimal.
- %s digunakan sebagai placeholder untuk string.
a = 2
b = "Datacamp"
print("%d is an integer while %s is a string."%(a,b))
2 is an integer while Datacamp is a string.
Mari lihat apa yang terjadi jika Anda menentukan %s untuk variabel a yang merupakan integer.
print("%s is an integer while %s is a string."%(a,b))
2 is an integer while Datacamp is a string.
Seperti yang terlihat dari contoh di atas, ini tetap berfungsi. Alasannya adalah fungsi Print secara implisit melakukan typecasting dan mengonversi integer menjadi string. Namun, sebaliknya tidak berlaku. Ia akan gagal mengonversi string menjadi integer dan akan menghasilkan TypeError.
Mari kita buktikan.
print("%d is an integer while %d is a string."%(a,b))
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-121-68c55041ecfe> in <module>
----> 1 print("%d is an integer while %d is a string."%(a,b))
TypeError: %d format: a number is required, not str
Kesimpulan
Selamat telah menyelesaikan tutorial.
Tutorial ini adalah titik awal yang baik bagi pemula yang ingin mahir dalam Python. Anda mungkin ingin bereksperimen lagi dengan fungsi Print dan mengeksplorasi beberapa fungsionalitas lain yang mungkin terlewat dalam tutorial ini.
Jangan ragu untuk mengajukan pertanyaan terkait tutorial ini di kolom komentar di bawah.
Jika Anda baru memulai Python dan ingin mempelajari lebih lanjut, lihat kursus Introduction to Data Science in Python dari DataCamp dan Python Functions Tutorial.
