Menu

Variabel di Python: cara mendeklarasikan, mengisi, dan menamainya

Cara kerja variabel di Python: penugasan, aturan penamaan, penugasan ulang, dan model berpikir yang menjauhkanmu dari masalah.

Halaman ini dilengkapi editor yang bisa dijalankan. Edit, jalankan, dan lihat output-nya seketika.

Variabel adalah sebuah nama

Variabel di Python adalah nama yang kamu sematkan pada sebuah nilai. Kamu menulis namanya, tanda sama dengan, lalu nilainya:

Tiga variabel, tiga nilai, tiga tipe. Python dengan senang hati menyimpan ketiganya berdampingan, dan kamu tidak perlu memberitahunya apa pun soal jenis nilainya. Nilai ditulis setelah =; nama ditulis sebelumnya.

Begitu sebuah variabel ada, kamu bisa memakainya di mana pun kamu akan memakai nilainya:

Nama-nama itu membuat baris kedua dari bawah menjelaskan dirinya sendiri. Itulah keuntungan sebenarnya dari nama variabel yang baik: kode yang terbaca seperti penjelasan.

Penugasan bukan matematika

Satu hal yang menjebak orang yang terbiasa dengan pelajaran matematika: = di Python bukan "sama dengan". Artinya "berikan nilai". Maksudnya "ambil nilai setelah =, lalu sematkan pada nama sebelumnya". Python mengevaluasi nilainya lebih dulu, baru melakukan penugasan.

Jadi kode ini sepenuhnya legal:

Baris count = count + 1 tidak mengklaim bahwa count sama dengan count ditambah satu (mustahil secara matematika). Baris itu berkata: hitung count + 1, lalu berikan hasilnya kembali ke count. Python mengevaluasi ekspresinya dulu (0 + 1, menghasilkan 1), baru kemudian memperbarui variabelnya.

Kamu akan cukup sering menulis count = count + 1 sehingga Python menyediakan jalan pintas: count += 1 melakukan hal yang sama.

Penugasan ulang mengubah label, bukan nilai

Sebuah variabel bisa menunjuk ke nilai lain kapan pun kamu mau. Nilai lamanya tidak diubah; variabelnya hanya mulai merujuk ke hal lain:

Perhatikan baris terakhir itu. mood menyimpan string selama dua baris, lalu tiba-tiba menyimpan integer. Python tidak protes. Inilah dynamic typing: variabel tidak punya tipe tetap, hanya nilai yang punya. Fleksibilitas ini membantu saat membuat prototipe, tapi menyusahkan saat arti sebuah variabel bergeser di dalam fungsi tanpa kamu sadari. Kebiasaan yang aman adalah memilih nama yang sesuai dengan apa yang diwakili nilainya, lalu menjaga variabel itu tetap mewakili satu hal tersebut sepanjang hidupnya.

Aturan nama variabel

Python menerima nama yang:

  • Diawali huruf atau garis bawah (_).
  • Berisi huruf, digit, dan garis bawah.
  • Bukan kata kunci yang dicadangkan (if, for, class, return, dan beberapa lusin lainnya).

Jadi nama-nama ini valid:

Dan yang ini tidak:

  • 2nd_user: tidak boleh diawali digit.
  • user-name: tanda hubung tidak diizinkan (Python membacanya sebagai pengurangan).
  • class: kata kunci yang dicadangkan.
  • user name: nama tidak boleh berisi spasi.

Nama membedakan huruf besar dan kecil, seperti yang sudah kamu tahu: total, Total, dan TOTAL adalah tiga variabel berbeda. Python tidak akan menemukan salah ketik itu untukmu.

Konvensi penamaan

Di luar aturan wajib, komunitas Python punya konvensi. Interpreter tidak memaksakannya, tapi konvensi ini berlaku di seluruh ekosistem:

  • lower_snake_case untuk variabel dan fungsi biasa: retry_count, fetch_profile.
  • UPPER_SNAKE_CASE untuk konstanta: MAX_RETRIES = 5.
  • PascalCase untuk nama class (kita akan membahasnya nanti).
  • Garis bawah di depan (_something) adalah petunjuk bahwa sebuah nama dimaksudkan sebagai privat. Tidak dipaksakan, hanya konvensi.
  • Garis bawah di belakang (class_) memungkinkan kamu memakai nama yang kalau tidak begitu akan bentrok dengan kata kunci.

Ikuti konvensi ini, dan kodemu akan terlihat seperti kode Python yang ditulis orang lain.

Nama sebaiknya menjelaskan arti

Nama variabel gratis untuk diketik, tapi mahal untuk dibaca. Meluangkan beberapa karakter tambahan untuk memilih nama yang benar-benar menjelaskan arti nilainya akan menghemat banyak waktu pembaca berikutnya (biasanya dirimu sendiri).

Bandingkan:

Kode yang sama, jawaban yang sama, tapi hanya versi kedua yang memberitahumu apa yang sedang terjadi. Nama pendek (i, n, x) boleh dipakai di cakupan yang sangat kecil seperti penghitung loop, tapi di luar itu, tulis lengkap.

Multiple assignment (pakai seperlunya)

Python memungkinkan kamu memberi nilai yang sama ke beberapa variabel dalam satu baris:

Atau melakukan unpacking beberapa nilai sekaligus:

Keduanya boleh dipakai kalau membuat kode lebih jelas (misalnya melakukan unpacking nilai kembalian sebuah fungsi). Bentuk pertama, = = = yang dirangkai, perlu sedikit kehati-hatian: ketiga variabel akhirnya merujuk ke objek yang sama, dan ini penting untuk tipe mutable seperti list (dibahas lebih lanjut nanti).

Yang perlu kamu ingat

  • name = value membuat sebuah variabel.
  • Variabel tidak punya tipe; nilai yang punya.
  • Nama mengikuti beberapa aturan wajib dan banyak konvensi tidak tertulis, dan keduanya layak dihormati.
  • Nama yang deskriptif adalah bentuk dokumentasi paling murah.

Berikutnya: jenis nilai apa saja yang sebenarnya didukung Python, yaitu integer, float, string, boolean, dan kenapa ada gunanya tahu mana yang mana.

Pertanyaan yang sering diajukan

Bagaimana cara membuat variabel di Python?

Pilih sebuah nama, taruh = setelahnya, lalu taruh nilai di sebelah kanan. age = 30 membuat variabel bernama age dengan nilai 30. Python mengetahui tipenya secara otomatis, jadi kamu tidak perlu mendeklarasikannya.

Apa saja aturan nama variabel di Python?

Nama boleh berisi huruf, digit, dan garis bawah, tapi tidak boleh diawali digit. Nama juga tidak boleh berupa kata kunci Python seperti if atau class. Nama membedakan huruf besar dan kecil: total, Total, dan TOTAL adalah tiga variabel berbeda. Konvensi komunitasnya adalah lower_snake_case.

Apakah tipe variabel Python bisa berubah?

Ya. Python bertipe dinamis, jadi variabel yang menyimpan angka saat ini bisa menyimpan string sesaat kemudian. Fleksibilitas itu praktis tapi bisa mengejutkan: kalau arti sebuah variabel berubah di tengah fungsi, biasanya itu tanda untuk memilih nama baru.

Ilustrasi bahasa pemrograman di Coddy

Belajar coding dengan Coddy

Mulai