pythonsintaksdasarPemula3 mnt baca

Sintaks Dasar Python

print, komentar, indentasi, dan input. Empat hal kecil yang jadi fondasi semua kode Python.

Sintaks: tata bahasa untuk komputer

Analogi: dalam bahasa Indonesia, "saya makan nasi" langsung dipahami, tapi "nasi saya makan" bikin orang mengernyit meski katanya sama. Urutan dan aturan (tata bahasa) menentukan makna. Sintaks adalah tata bahasa untuk kode: seperangkat aturan tentang cara menulis instruksi agar Python memahaminya persis seperti maksudmu.

Kenapa komputer butuh aturan sekaku ini? Karena Python tidak bisa menebak maksudmu dari konteks seperti manusia. Kalau aturannya longgar, satu baris yang ambigu bisa diartikan dua cara berbeda, dan program yang "kadang benar kadang salah" adalah mimpi buruk. Jadi Python memilih tegas: tulis sesuai aturan, atau tidak jalan sama sekali. Kedengarannya galak, tapi sebenarnya baik hati: error yang jelas jauh lebih mudah diperbaiki daripada hasil yang diam-diam salah.

Filosofi ini diringkas dalam dokumen terkenal bernama The Zen of Python (ketik import this di Python untuk membacanya). Baris paling terkenalnya: "Readability counts", keterbacaan itu penting. Semua yang kamu pelajari di modul ini adalah perwujudan filosofi itu.

Contoh 1: print dan komentar (super sederhana)

python
# Program pertama yang sopan: menyapa dengan komentar
print("Halo")              # teks wajib pakai tanda kutip
print('Kutip satu juga boleh')
print(42)                  # angka tidak perlu tanda kutip
print(3.14)

Dua hal yang terjadi di sini. Pertama, print() adalah "mulut" program: cara ia bicara ke layar. Kedua, semua teks setelah # diabaikan Python. Komentar adalah catatan untuk manusia yang membaca kode, termasuk dirimu sendiri tiga bulan dari sekarang.

Aturan komentar yang bagus: jelaskan kenapa, bukan apa. Bandingkan:

python
# KOMENTAR JELEK: cuma mengulang kode
total = harga * jumlah  # kalikan harga dengan jumlah

# KOMENTAR BAGUS: menjelaskan alasan
# Diskon 10% hanya berlaku di atas Rp100 ribu (aturan promo Maret)
total = harga * jumlah * 0.9

Contoh 2: laporan mini dengan input dan indentasi (lebih nyata)

Sekarang gabungkan semuanya jadi program kecil yang terasa seperti pekerjaan analyst: mencatat penjualan lalu mencetak ringkasan.

python
# Program rekap penjualan harian warung
nama_kasir = input("Nama kasir: ")
total_transaksi = input("Jumlah transaksi hari ini: ")

# input() selalu menghasilkan teks, ubah ke angka dulu
total_transaksi = int(total_transaksi)

print("--- Rekap Harian ---")
print("Kasir:", nama_kasir)

if total_transaksi >= 50:
    print("Status: ramai, pertahankan!")
    print("Target besok: 60 transaksi")
else:
    print("Status: sepi, evaluasi strategi promo")

print("Rekap selesai.")

Perhatikan tiga hal. Pertama, input() selalu mengembalikan teks, jadi int() dipakai untuk mengubahnya jadi angka sebelum dibandingkan (detail konversi ada di modul 4). Kedua, blok di bawah if dan else menjorok 4 spasi: itulah indentasi, cara Python menandai "baris-baris ini milik kondisi di atasnya". Ketiga, baris print("Rekap selesai.") tidak menjorok, artinya ia selalu jalan apa pun hasilnya.

Catatan teknis: Pakai 4 spasi per level indentasi, konsisten di seluruh file. Jangan campur tab dan spasi: itu sumber IndentationError paling klasik. Kebanyakan editor modern (termasuk VS Code) otomatis mengubah tab jadi spasi kalau extension Python aktif.

Indentasi: aturan paling Python

Bahasa lain memakai kurung kurawal {} untuk menandai blok kode. Python membuang kurawal dan memakai indentasi sebagai gantinya. Ini bukan soal gaya, ini wajib: indentasi yang salah bukan cuma jelek, tapi error atau (lebih bahaya) logika yang salah tanpa error.

python
if True:
    print("baris ini menjorok: bagian dari if")
    print("masih satu blok")
print("tidak menjorok: selalu jalan")

Cara membacanya seperti outline dokumen: yang menjorok adalah "anak" dari baris di atasnya. Setelah terbiasa, kode Python terbaca seperti daftar berpoin, dan bug struktur jadi gampang terlihat sebelum program dijalankan.

Kesalahan umum pemula

SALAH: Lupa tanda kutip untuk teks.

python
print(Halo)      # NameError: name 'Halo' is not defined

BENAR:

python
print("Halo")    # teks selalu dalam tanda kutip

SALAH: Lupa titik dua setelah if.

python
if total > 50
    print("ramai")

BENAR: Titik dua adalah tanda bahwa blok dimulai:

python
if total > 50:
    print("ramai")

SALAH: Indentasi tidak konsisten dalam satu blok.

python
if total > 50:
    print("ramai")
      print("target besok")   # IndentationError: menjorok beda

BENAR: Satu blok, satu kedalaman, 4 spasi:

python
if total > 50:
    print("ramai")
    print("target besok")

SALAH: Menjumlahkan hasil input() langsung.

python
a = input("Angka 1: ")   # misal ketik 5
b = input("Angka 2: ")   # misal ketik 3
print(a + b)             # "53", bukan 8! (teks digabung)

BENAR: Konversi dulu ke angka:

python
a = int(input("Angka 1: "))
b = int(input("Angka 2: "))
print(a + b)             # 8, benar

Tantangan

Program sapa interaktif

Buat program yang meminta nama dan kota pengguna dengan input(), lalu mencetak kalimat sapaan lengkap memakai print(). Tambahkan komentar yang menjelaskan tiap baris.