BAB 6: Variabel

Simpan data ke dalam variabel, pahami aturan penamaan, dan lihat bagaimana Python menangani variabel secara dinamis.

Di bab sebelumnya kita menemukan batas dari print() — semua teks yang dicetak sudah harus ditentukan sejak kode ditulis. Program tidak bisa mengingat apa pun, tidak bisa mengubah data saat berjalan. Variabel adalah jawabannya.

Apa Itu Variabel?

Bayangkan variabel seperti label yang ditempelkan ke sebuah kotak. Kotaknya berisi data — bisa angka, teks, atau nilai lainnya — dan label itu yang kamu pakai untuk mengambil isi kotak kapan pun dibutuhkan.

Di Python, membuat variabel sangat langsung: tulis nama, tanda sama dengan, lalu nilainya.

# biodata.py
nama = "Rina"
kota = "Bandung"
umur = 22
aktif = True

Empat baris di atas membuat empat variabel. Setiap variabel menyimpan satu nilai, dan nilai itu bisa diakses nanti menggunakan namanya.

Tidak seperti beberapa bahasa lain, Python tidak membutuhkan kata kunci seperti var, let, atau int sebelum nama variabel. Cukup tulis nama dan nilai — Python yang mengurus sisanya.

Menggunakan Variabel di print()

Variabel yang sudah dibuat bisa langsung dipakai di mana pun, termasuk di dalam print():

# biodata.py
nama = "Rina"
kota = "Bandung"
umur = 22
aktif = True

print(nama)
print(kota)
print(umur)
print(aktif)
Rina
Bandung
22
True

Perhatikan perbedaannya dengan print("Rina") — di sini kita tidak mencetak teks “nama”, tapi nilai yang disimpan di variabel nama. Python membaca nama variabelnya, mencari nilainya, lalu menampilkan nilai itu.

Menggabungkan Variabel dan Teks

Cara yang lebih umum adalah menggabungkan variabel dengan teks lain menggunakan f-string — cara modern Python untuk menyisipkan variabel langsung ke dalam string:

# biodata.py
nama = "Rina"
kota = "Bandung"
umur = 22

print(f"Nama: {nama}")
print(f"Kota: {kota}")
print(f"Umur: {umur} tahun")
Nama: Rina
Kota: Bandung
Umur: 22 tahun

F-string dimulai dengan huruf f sebelum tanda kutip, lalu variabel ditulis di dalam kurung kurawal {}. Python akan mengganti {nama} dengan nilai aktual variabel nama saat program dijalankan.

F-string adalah cara yang direkomendasikan untuk menggabungkan variabel dan teks di Python modern (Python 3.6 ke atas). Lebih mudah dibaca dibanding teknik lama seperti %s atau .format().

Mengubah Nilai Variabel

Nilai variabel bisa diubah kapan saja — itulah kenapa ia disebut variabel, bukan konstanta.

# biodata.py
nama = "Rina"
print(f"Nama awal: {nama}")

nama = "Rina Kartika"
print(f"Nama diperbarui: {nama}")
Nama awal: Rina
Nama diperbarui: Rina Kartika

Setiap kali kamu menulis nama = ..., nilai lama digantikan dengan nilai baru. Nilai lama hilang — Python tidak menyimpan riwayatnya.

Penamaan Variabel

Python punya aturan penamaan yang perlu diikuti, dan konvensi yang sebaiknya diikuti.

Aturan wajib — jika dilanggar, program error:

  • Nama hanya boleh berisi huruf, angka, dan garis bawah (_)
  • Nama tidak boleh dimulai dengan angka
  • Nama tidak boleh sama dengan kata kunci Python seperti if, for, while, print, dll.

Konvensi snake_case — ini bukan aturan teknis, tapi standar komunitas Python sesuai PEP 8:

# biodata.py

# Benar — snake_case
nama_lengkap = "Rina Kartika"
tanggal_lahir = "1 Maret 2002"
nilai_rata_rata = 88.5

# Tidak direkomendasikan — camelCase (gaya JavaScript)
namaLengkap = "Rina Kartika"

Snake_case menggunakan huruf kecil semua dengan garis bawah sebagai pemisah kata. Ini yang dipakai di hampir semua kode Python yang kamu temui di internet, library, dan dokumentasi resmi.

Python membedakan huruf besar dan kecil. nama, Nama, dan NAMA adalah tiga variabel yang berbeda. Konsisten dengan huruf kecil di snake_case menghindari kebingungan ini.

Deklarasi Beberapa Variabel Sekaligus

Python memungkinkan deklarasi beberapa variabel dalam satu baris menggunakan unpacking:

# biodata.py
nilai1, nilai2, nilai3 = 85, 90, 78

total = nilai1 + nilai2 + nilai3
rata_rata = total / 3

print(f"Total: {total}")
print(f"Rata-rata: {rata_rata}")
Total: 253
Rata-rata: 84.33333333333333

Jumlah variabel di kiri harus sama persis dengan jumlah nilai di kanan — jika tidak, Python akan memberi error.

Python Menebak Tipe Data Sendiri

Satu hal yang membedakan Python dari bahasa seperti Java atau Go: kamu tidak perlu mendeklarasikan tipe data variabel. Python menebaknya secara otomatis dari nilai yang diberikan.

# biodata.py
nama = "Rina"       # Python tahu ini string
umur = 22           # Python tahu ini integer
tinggi = 162.5      # Python tahu ini float
aktif = True        # Python tahu ini boolean

Ini yang disebut dynamically typed — tipe data ditentukan saat runtime, bukan saat penulisan kode. Kamu bisa memverifikasi tipe data variabel menggunakan fungsi type():

# biodata.py
nama = "Rina"
umur = 22

print(type(nama))
print(type(umur))
<class 'str'>
<class 'int'>

Tipe data ini akan dibahas lebih mendalam di bab berikutnya. Untuk sekarang, cukup pahami bahwa Python menanganinya untukmu secara otomatis.

Latihan

Gunakan file baru bernama biodata.py untuk tiga latihan ini:

  1. Buat variabel untuk menyimpan nama lengkapmu, kota asalmu, umurmu, dan satu hobi. Tampilkan semua nilai menggunakan f-string dalam format yang rapi.
  2. Ubah nilai variabel umur menjadi umur kamu lima tahun dari sekarang. Cetak pesan sebelum dan sesudah perubahan untuk membuktikan nilainya berubah.
  3. Buat tiga variabel nilai_a, nilai_b, nilai_c menggunakan unpacking dalam satu baris, lalu hitung dan tampilkan rata-ratanya.

Setelah menjalankan setiap latihan, perhatikan bagaimana program kamu sekarang jauh lebih fleksibel — data tidak lagi terkunci dalam teks, tapi bisa diubah dan diolah.

Variabel menyimpan data, tapi belum semua data punya perilaku yang sama. Angka 22 dan teks "Rina" bisa disimpan di variabel, tapi kamu tidak bisa menjumlahkan keduanya begitu saja. Di bab selanjutnya, kita akan memahami mengapa — dengan mendalami tipe data yang menjadi fondasi dari setiap nilai di Python.

Referensi

  1. 1Python Docs — Assignment Statements
  2. 2PEP 8 — Function and Variable Names
  3. 3Python Docs — Built-in Types