Langsung ke konten

Tipe Data Dasar di Python: int, float, str, dan bool

Python punya empat tipe data dasar: int, float, str, dan bool. Artikel ini menjelaskan perbedaan tiap tipe data dan cara mengeceknya dengan fungsi type().

Belajar Python Level Basic
Belajar Python Level Basic
Advertisement

Artikel ini bagian dari seri Belajar Python Level Basic di hanifmu.com. Di artikel sebelumnya kita sudah membahas variabel dan aturan penamaan. Sekarang kita lihat jenis nilai apa saja yang bisa disimpan.

Setiap nilai di Python punya tipe data. Angka 25 berbeda jenis dengan teks "25", meski terlihat mirip. Memahami tipe data membuat kamu tahu operasi apa yang bisa dilakukan dan menghindari error.

Empat Tipe Data Dasar

Python punya banyak tipe data, tapi untuk pemula ada empat yang paling sering dipakai:

TipeNamaContoh
intBilangan bulat10, -3, 0, 1000
floatBilangan desimal3.14, -0.5, 2.0
strTeks (string)"Halo", 'Python'
boolBenar/salah (boolean)True, False

Empat tipe ini jadi fondasi hampir semua program. Mari bahas satu per satu.

int: Bilangan Bulat

Integer atau int adalah bilangan bulat tanpa koma: positif, negatif, atau nol.

jumlah_buku = 12
suhu = -5
nol = 0

Di Python 3, int tidak punya batas ukuran. Kamu bisa menulis angka sebesar apa pun tanpa khawatir overflow, selama memori komputer cukup.

angka_besar = 123456789012345678901234567890
print(angka_besar)

Angka bisa ditulis dengan garis bawah agar lebih mudah dibaca. Python mengabaikan garis bawahnya:

penduduk = 1_000_000
print(penduduk)   # 1000000

float: Bilangan Desimal

Float adalah bilangan yang punya titik desimal. Python memakai titik (.), bukan koma.

tinggi = 170.5
pi = 3.14
suhu = -0.5

Angka tanpa titik desimal tetap dianggap int, meski nilainya bulat:

a = 10      # int
b = 10.0    # float

Float juga bisa ditulis dalam notasi ilmiah untuk angka sangat besar atau kecil:

jarak = 1.5e8     # 150000000.0
ukuran = 2.5e-3   # 0.0025

Catatan soal Presisi Float

Float punya keterbatasan presisi karena cara komputer menyimpan angka desimal. Contoh klasik:

print(0.1 + 0.2)   # 0.30000000000000004

Hasilnya bukan 0.3 persis, melainkan 0.30000000000000004. Ini bukan bug, tapi perilaku normal di hampir semua bahasa pemrograman. Untuk kebutuhan yang butuh presisi tinggi seperti uang, biasanya dipakai modul decimal.

str: Teks (String)

String adalah rangkaian karakter, dipakai untuk teks. Ditulis dengan tanda kutip tunggal atau ganda.

nama = "Budi"
kota = 'Jakarta'
kalimat = "Saya sedang belajar Python"

Kutip tunggal dan ganda sama saja. Pilih salah satu dan konsisten. Kutip ganda berguna kalau teksmu mengandung tanda petik:

# Pakai kutip ganda supaya apostrof di dalam tidak bentrok
pesan = "It's a beautiful day"

# Atau pakai escape character
pesan = 'It\'s a beautiful day'

String kosong juga valid:

teks_kosong = ""

Menggabungkan String

Dua string bisa disambung dengan tanda +:

nama_depan = "Budi"
nama_belakang = "Santoso"
nama_lengkap = nama_depan + " " + nama_belakang
print(nama_lengkap)   # Budi Santoso

String juga bisa diulang dengan tanda *:

print("ha" * 3)   # hahaha

Perlu diingat, angka dan teks tidak bisa digabung langsung:

# Salah
umur = 25
print("Umur: " + umur)   # TypeError

# Benar — ubah dulu ke string
print("Umur: " + str(umur))

Kita bahas konversi ini lebih dalam di artikel berikutnya.

bool: Boolean

Boolean hanya punya dua nilai: True dan False. Perhatikan huruf depannya kapital.

sudah_login = True
is_admin = False

Boolean dipakai untuk mewakili kondisi: ya/tidak, hidup/mati, aktif/nonaktif. Tipe ini akan sangat sering muncul saat kita masuk ke percabangan dan perulangan nanti.

Boolean sebenarnya turunan dari int. True bernilai 1 dan False bernilai 0:

print(True + True)    # 2
print(False + 1)      # 1

Ini jarang dipakai langsung, tapi bagus untuk diketahui.

Mengecek Tipe dengan type()

Python punya function bawaan type() untuk mengecek tipe sebuah nilai:

print(type(10))       # <class 'int'>
print(type(3.14))     # <class 'float'>
print(type("Halo"))   # <class 'str'>
print(type(True))     # <class 'bool'>

type() juga bisa dipakai pada variabel:

umur = 25
print(type(umur))     # <class 'int'>

Berguna saat kamu tidak yakin sebuah nilai bertipe apa, misalnya hasil dari perhitungan atau input pengguna.

Kapan Tipe Data Penting?

Tipe data menentukan operasi apa yang bisa dilakukan:

# int dan float bisa dihitung
print(10 + 5)         # 15
print(3.5 * 2)        # 7.0

# string dengan + berarti menyambung
print("10" + "5")     # 105, bukan 15!

Perhatikan contoh terakhir. "10" + "5" menghasilkan "105" karena keduanya string, bukan angka. Kesalahan seperti ini sering terjadi saat menerima input dari pengguna, yang selalu berbentuk string.

Tipe data juga menentukan hasil operasi campuran:

print(10 + 3.5)   # 13.5, int otomatis jadi float
print(10 / 2)     # 5.0, pembagian selalu menghasilkan float

Ringkasan

  • int untuk bilangan bulat, float untuk bilangan desimal
  • str untuk teks, ditulis dengan kutip tunggal atau ganda
  • bool hanya bernilai True atau False
  • type() untuk mengecek tipe sebuah nilai
  • Tipe menentukan operasi yang bisa dilakukan: "10" + "5" menghasilkan "105", bukan 15
  • Float punya keterbatasan presisi, 0.1 + 0.2 tidak persis 0.3

Langkah Selanjutnya

Sekarang kamu tahu empat tipe data dasar dan bedanya. Kadang sebuah nilai perlu diubah dari satu tipe ke tipe lain, misalnya teks "25" jadi angka 25.

Artikel selanjutnya membahas Konversi Tipe Data di Python, cara mengubah antar tipe dengan int(), float(), str(), dan bool().