Menu
CoddyTech

Apa Itu Variabel?

Dalam pemrograman, variabel adalah tempat bernama di memori yang menyimpan sebuah nilai yang bisa dibaca dan diubah programmu selama program berjalan. Namanya, seperti score atau user_name, membuat kode bisa merujuk ke nilai itu tanpa perlu tahu di mana nilai itu disimpan.

Oleh Kevin Spektor, Co-founder & CTO

Diperbarui 24 September 2026

Game yang mencatat skor perlu mengingat sebuah angka, menambahkannya, lalu menampilkannya di akhir. Angka itu tidak bisa ditulis langsung di kode, karena nilainya berbeda setiap kali seseorang bermain. Jadi program menyisihkan satu tempat di memori, memberinya nama seperti score, dan memakai nama itu setiap kali butuh nilainya saat ini.

Cara kerja variabel

Ada tiga hal yang terjadi pada sebuah variabel selama program berjalan:

  1. Pembuatan. Program memesan memori untuk sebuah nilai dan memasangkan nama padanya. Di Python, ini terjadi saat pertama kali kamu memberi nilai pada nama itu. Di Java dan C, kamu mendeklarasikan variabelnya lebih dulu, beserta tipenya, seperti int score;.
  2. Assignment. Sebuah nilai disimpan di bawah nama itu dengan =. Memberi nilai lagi akan mengganti nilai yang lama.
  3. Pemakaian. Di mana pun nama itu muncul dalam sebuah ekspresi, program membaca nilai yang disimpannya pada saat itu.
Start: 0
After one point: 10
Doubled: 20

Di setiap baris assignment, sisi kanan dihitung lebih dulu, memakai nilai score pada saat itu. Lalu hasilnya disimpan kembali di bawah nama yang sama. Namanya tetap, sementara nilai yang disimpannya berubah-ubah.

Tanda sama dengan berarti "simpan"

Dalam matematika, x = x + 1 tidak punya penyelesaian. Dalam program, itu instruksi biasa: ambil nilai x saat ini, tambahkan 1, lalu simpan hasilnya di x. Tanda = adalah operator assignment, dan selalu memindahkan nilai dari sisi kanan ke nama di sisi kiri.

Untuk menanyakan apakah dua nilai sama, bahasa pemrograman memakai operator lain, ==. Ekspresi x == 5 tidak mengubah apa pun; hasilnya True atau False, sebuah boolean.

Makna dalam matematika memang berkaitan, tetapi tidak sama. Dalam aljabar, x pada 2x + 3 = 7 mewakili satu bilangan yang tidak diketahui dan harus kamu cari. Dalam program, variabel menyimpan nilai yang diketahui dan bisa berubah selama program berjalan.

Variabel dan tipe data

Setiap nilai punya tipe: bilangan bulat, bilangan desimal, sepotong teks, boolean, list. Bahasa-bahasa berbeda dalam hal apakah variabelnya sendiri punya tipe.

Di Python dan JavaScript, nilainyalah yang membawa tipe, dan satu variabel bisa menyimpan nilai dengan tipe berbeda dari waktu ke waktu. Ini disebut dynamic typing:

42 <class 'int'>
forty-two <class 'str'>

Di Java, C, dan C++, variabel punya tipe tetap yang dipilih saat kamu mendeklarasikannya. Ini disebut static typing: compiler menolak kode yang mencoba menyimpan teks di variabel int, bahkan sebelum program dijalankan.

int age = 30;          // Java: type, name, value
String name = "Rosa";
let age = 30;          // JavaScript: can be reassigned
const PI = 3.14159;    // cannot be reassigned

Di C, tipe juga menentukan berapa banyak memori yang dipakai variabel. Sebuah int berukuran 4 byte di hampir semua sistem saat ini, double 8 byte, dan char tepat 1 byte. Untuk menyimpan banyak nilai di bawah satu nama, seperti semua skor dalam sebuah game, kamu memakai array atau list dan mengakses setiap nilai lewat posisinya, seperti scores[0].

Kotak dan label

Gambaran yang umum tentang variabel adalah sebuah kotak yang menyimpan nilai. Gambaran itu cocok untuk C: int x; memang sebuah area memori yang tetap, dan y = x; menyalin nilainya ke area kedua.

Python lebih mirip label. Setiap nilai adalah objek, dan variabel adalah nama yang ditempelkan pada objek itu. Perbedaannya terlihat saat dua nama merujuk ke list yang sama:

5 6
[1, 2, 3, 4]

Pada angka, y = y + 1 membuat angka baru dan memindahkan label y ke angka itu, jadi x tetap merujuk ke 5. Pada list, b = a tidak menyalin apa pun: kedua nama merujuk ke satu list, jadi perubahan lewat b juga terlihat lewat a. Tulis b = a.copy() kalau kamu ingin list yang terpisah. Objek dan array di Java dan JavaScript berperilaku dengan cara yang sama.

Scope: di mana variabel ada

Sebuah variabel hanya terlihat di sebagian program, yang disebut scope-nya. Variabel yang dibuat di dalam fungsi bersifat lokal: ia ada selama fungsi berjalan dan hilang saat fungsi selesai. Variabel yang dibuat di tingkat teratas sebuah file bersifat global dan bisa dibaca di mana saja dalam file itu.

Variabel lokal lebih mudah dipahami, karena setiap baris yang bisa mengubahnya ada di dalam satu fungsi. Program yang bergantung pada banyak variabel global lebih sulit di-debug karena alasan yang sebaliknya.

Menamai variabel

Nama yang baik menjelaskan arti nilainya: total_price, is_logged_in, retries_left. Sebagian besar bahasa punya aturan yang sama:

  • nama terdiri dari huruf, angka, dan garis bawah, dan tidak boleh diawali angka;
  • nama tidak boleh berupa kata kunci bahasa itu, seperti if, for, atau class;
  • nama membedakan huruf besar dan kecil, jadi total dan Total adalah dua variabel yang berbeda.

Gayanya berbeda di tiap bahasa. Python memakai snake_case (user_name), sedangkan Java dan JavaScript memakai camelCase (userName). Nilai yang tidak boleh berubah sering dinamai dengan huruf kapital, seperti MAX_SIZE.

Kesalahan yang umum

Memakai variabel sebelum punya nilai. Python berhenti dengan NameError:

NameError: name 'total' is not defined

Error yang sama muncul saat sebuah nama salah ketik, karena bagi komputer totla dan total adalah dua nama yang berbeda.

Menulis = padahal maksudnya ==. Di Python, if x = 5: adalah syntax error, jadi kamu langsung tahu. Di C dan JavaScript, if (x = 5) adalah kode yang valid: kode itu menyimpan 5 di x, dan kondisinya selalu bernilai benar. Program tetap berjalan dan memberi hasil yang salah, sebuah logic error yang bisa lama sekali ditemukan.

Memberi satu variabel dua tugas. Variabel yang menyimpan harga di awal fungsi dan jumlah barang di akhirnya memang tetap berjalan, tetapi setiap pembaca harus melacak arti mana yang sedang berlaku. Beri setiap arti namanya sendiri.

Lanjut ke mana

Variabel menyimpan nilai, dan langkah berikutnya adalah mengenal jenis-jenis nilai yang ada: baca apa itu boolean untuk benar dan salah, dan apa itu array untuk banyak nilai di bawah satu nama. Panduan variabel Python membahas assignment, aturan penamaan, dan multiple assignment lebih detail, dan di kursus Python kamu menulis dan mengubah variabel sejak pelajaran pertama.

Pertanyaan yang sering diajukan

Apa itu variabel di Python?
Variabel di Python adalah nama yang merujuk ke sebuah nilai. Kamu membuatnya dengan memberinya nilai, seperti age = 30, tanpa deklarasi tipe, dan nama yang sama nantinya bisa merujuk ke nilai dengan tipe lain. Menurut konvensi, nama variabel Python ditulis dalam snake_case.
Apa definisi sederhana dari variabel?

Variabel adalah nama untuk sebuah nilai yang disimpan program dan bisa diubah. Namanya tetap sama, sementara nilai di baliknya bisa diganti, seperti papan skor yang tetap berlabel "Tuan rumah" sementara angka di bawahnya terus bertambah.

Bagaimana menjelaskan variabel kepada anak-anak?
Bandingkan dengan sebuah kotak yang diberi label. Labelnya adalah nama, seperti score, dan kotak itu menyimpan satu barang pada satu waktu. Kamu bisa melihat ke dalam untuk tahu isinya, atau mengeluarkannya lalu memasukkan barang baru, dan labelnya tetap sama.
Apa bedanya variabel dan konstanta?
Nilai variabel bisa diubah setelah diisi, sedangkan nilai konstanta tetap setelah diberikan. Java menandai konstanta dengan final, sementara JavaScript dan C memakai const. Python tidak punya konstanta yang dipaksakan, jadi programmer menulis namanya dengan huruf kapital, seperti MAX_USERS, sebagai tanda bahwa nilainya tidak boleh berubah.
Apa saja jenis variabel dalam pemrograman?

Variabel biasanya dikelompokkan berdasarkan di mana ia terlihat: variabel lokal ada di dalam satu fungsi, variabel global terlihat di seluruh file atau program, dan variabel instance milik satu objek dari sebuah class. Variabel juga dijelaskan berdasarkan tipe nilai yang disimpannya, seperti integer, bilangan floating point, string, atau boolean.

Ilustrasi bahasa pemrograman di Coddy

Belajar coding dengan Coddy

Mulai