Version 4 of 4

Pendahuluan

Status changed. · Working · Jul 15, 2026 10:51 · saved by @mujirin

Pendahuluan

Belajar Python dari nol bukan berarti memulai dari keadaan “tidak tahu apa-apa”. Sebagai mahasiswa sains dan teknik, Anda kemungkinan sudah terbiasa dengan pola berpikir yang sangat dekat dengan pemrograman: membaca persoalan, mengenali besaran yang diketahui, memilih rumus atau prosedur, menghitung, lalu memeriksa apakah hasilnya masuk akal. Pemrograman memperluas kebiasaan itu. Bedanya, kali ini prosedur tersebut ditulis dengan bahasa yang dapat dijalankan oleh komputer.

Dalam buku ini, program berarti rangkaian instruksi yang ditulis agar komputer melakukan pekerjaan tertentu. Instruksi itu dapat sesederhana “hitung luas lingkaran dari jari-jari yang diberikan” atau lebih panjang seperti “baca data percobaan dari berkas CSV, buang data yang tidak valid, hitung rata-rata, lalu simpan hasilnya ke berkas baru”. Program bukan sihir; program hanyalah urutan langkah yang dinyatakan secara sangat jelas.

Python dipilih karena sintaksnya relatif mudah dibaca, tersedia bebas, memiliki pustaka standar yang kaya, dan banyak digunakan untuk menulis program kecil maupun besar. Dokumentasi resmi Python memperkenalkan Python sebagai bahasa pemrograman yang dapat dipakai untuk berbagai keperluan, mulai dari skrip sederhana sampai aplikasi yang lebih kompleks (Python Software Foundation, The Python Tutorial). Dalam konteks buku ini, keunggulan terpenting Python adalah membantu Anda cepat sampai pada inti persoalan: mengubah ide perhitungan menjadi program yang dapat dijalankan, diperiksa, dan diperbaiki.

Dari perhitungan manual ke program

Perhatikan persoalan sederhana berikut.

Sebuah benda bergerak sejauh 120 meter dalam waktu 15 detik. Hitung kelajuan rata-ratanya.

Secara manual, Anda mungkin menulis:

\[ v = \frac{s}{t} = \frac{120}{15} = 8 \]

Kelajuan rata-rata benda itu adalah 8 meter per detik.

Dalam Python, ide yang sama dapat ditulis seperti ini:

jarak = 120
waktu = 15
kelajuan = jarak / waktu

print(kelajuan)

Program tersebut tidak lebih “cerdas” daripada Anda. Ia hanya mengikuti instruksi. Tetapi ada satu perubahan penting: setelah langkah-langkahnya ditulis dengan benar, komputer dapat mengulanginya untuk banyak data tanpa lelah. Jika nanti Anda memiliki 1000 pengukuran jarak dan waktu, pola berpikirnya tetap sama, tetapi program dapat membantu melakukan perhitungan berulang secara lebih cepat dan konsisten.

Di sini kita bertemu istilah pertama yang penting: komputasi. Dalam buku ini, komputasi berarti proses menyelesaikan persoalan dengan langkah-langkah yang dapat dijalankan oleh komputer. Komputasi tidak selalu berarti matematika rumit. Mengubah suhu dari Celsius ke Kelvin, memilih data yang memenuhi syarat, menghitung rata-rata nilai praktikum, atau membuat tabel hasil pengukuran juga termasuk komputasi.

Algoritma: resep yang cukup jelas untuk dijalankan

Sebelum menulis program, kita perlu memikirkan algoritma. Algoritma adalah urutan langkah yang jelas untuk menyelesaikan suatu jenis persoalan. Kata “jelas” sangat penting. Komputer tidak memahami maksud samar; komputer hanya menjalankan instruksi yang ditulis.

Misalnya, instruksi berikut belum cukup jelas:

Hitung nilai akhir mahasiswa.

Komputer akan bertanya, meskipun tidak dengan kata-kata: nilai akhir yang mana? Dari komponen apa saja? Bobotnya berapa? Bagaimana jika ada nilai yang kosong?

Instruksi itu perlu diubah menjadi algoritma yang lebih tepat, misalnya:

  1. Ambil nilai tugas.
  2. Ambil nilai ujian tengah semester.
  3. Ambil nilai ujian akhir semester.
  4. Hitung nilai akhir dengan rumus
    0.3 * tugas + 0.3 * uts + 0.4 * uas.

  5. Tampilkan hasilnya.

Dalam Python, bentuk awalnya dapat menjadi:

tugas = 80
uts = 75
uas = 90

nilai_akhir = 0.3 * tugas + 0.3 * uts + 0.4 * uas

print(nilai_akhir)

Inilah salah satu inti pemrograman: membuat langkah penyelesaian menjadi cukup eksplisit sehingga dapat dijalankan oleh mesin dan cukup jelas sehingga dapat dibaca oleh manusia.

Gagasan seperti ini berkaitan dengan computational thinking, yaitu cara merumuskan persoalan dan penyelesaiannya sehingga solusi tersebut dapat dijalankan secara efektif oleh agen pemroses informasi, termasuk komputer. Jeannette Wing menjelaskan computational thinking sebagai keterampilan konseptual yang tidak terbatas pada menulis kode, tetapi juga mencakup cara menyusun dan merepresentasikan penyelesaian masalah (Wing, 2006). Dalam buku ini, Anda akan melatih keterampilan tersebut secara bertahap melalui Python.

Data, nilai, dan makna

Komputer bekerja dengan data. Data adalah representasi dari informasi yang ingin kita simpan, olah, atau tampilkan. Angka 25, teks "aluminium", nilai logika True, dan daftar [2.1, 2.4, 2.0] semuanya dapat menjadi data.

Namun, dalam sains dan teknik, angka saja belum cukup. Angka perlu makna. Nilai 25 dapat berarti 25 °C, 25 meter, 25 kilogram, atau 25 sampel. Karena itu, saat menulis program untuk persoalan akademik, Anda perlu membiasakan diri memberi nama variabel yang membantu menjelaskan makna data.

Bandingkan dua potongan kode berikut.

x = 25
y = x + 273.15
print(y)

Kode tersebut dapat berjalan, tetapi maknanya tidak langsung terlihat.

Sekarang lihat versi berikut.

suhu_celsius = 25
suhu_kelvin = suhu_celsius + 273.15

print(suhu_kelvin)

Kedua program menghitung hal yang sama, tetapi versi kedua lebih mudah dibaca. Kita dapat menduga bahwa program mengubah suhu dari Celsius ke Kelvin. Dalam komputasi sains dan teknik, keterbacaan seperti ini bukan sekadar gaya. Kode yang jelas lebih mudah diperiksa, diuji, dan diperbaiki. Praktik menulis kode yang mudah dibaca, diuji, dan dipelihara juga ditekankan dalam panduan praktik komputasi ilmiah, misalnya oleh Wilson dan rekan-rekan dalam artikel “Best Practices for Scientific Computing” (Wilson et al., 2014).

Python sebagai bahasa untuk menyatakan langkah

Bahasa pemrograman adalah sistem penulisan instruksi untuk komputer. Manusia menggunakan bahasa alami seperti bahasa Indonesia untuk berkomunikasi sehari-hari. Komputer membutuhkan bahasa yang lebih terbatas dan lebih ketat. Python adalah salah satu bahasa pemrograman tersebut.

Contoh kalimat dalam bahasa Indonesia:

Jika suhu lebih dari 100 °C, tampilkan “mendidih”.

Dalam Python, kalimat itu dapat ditulis sebagai:

suhu = 105

if suhu > 100:
    print("mendidih")

Perhatikan bahwa Python memakai kata if untuk menyatakan percabangan, tanda > untuk perbandingan “lebih dari”, dan indentasi untuk menunjukkan bagian kode yang berada di dalam percabangan. Hal-hal kecil seperti titik dua : dan indentasi bukan hiasan; dalam Python, keduanya bagian dari aturan bahasa.

Aturan penulisan ini disebut sintaks. Sintaks adalah tata cara menulis kode agar dapat dipahami oleh interpreter Python. Interpreter adalah program yang membaca dan menjalankan kode Python. Dokumentasi resmi Python menjelaskan penggunaan interpreter sebagai cara interaktif untuk menjalankan pernyataan Python, mencoba ekspresi, dan menguji potongan kode kecil (Python Software Foundation, The Python Tutorial).

Pada awal belajar, kesalahan sintaks sangat umum. Misalnya:

if suhu > 100
    print("mendidih")

Kode di atas salah karena baris if suhu > 100 seharusnya diakhiri titik dua:

if suhu > 100:
    print("mendidih")

Kesalahan seperti ini bukan tanda bahwa Anda “tidak berbakat”. Itu bagian normal dari belajar bahasa yang aturannya ketat. Tugas kita adalah belajar membaca pesan galat, menemukan letak masalah, dan memperbaikinya secara sistematis.

Apa yang akan Anda bangun sepanjang buku ini

Buku ini disusun dari konsep paling dasar menuju program kecil yang lebih utuh. Urutannya sengaja dibuat bertahap.

Pertama, Anda akan memahami cara kerja program dan lingkungan Python. Anda akan belajar apa perbedaan interpreter, editor kode, notebook, dan terminal. Tujuannya bukan menjadikan Anda ahli sistem operasi, melainkan membuat Anda cukup nyaman menjalankan kode secara aman dan teratur.

Setelah itu, Anda akan masuk ke ekspresi, nilai, dan variabel. Ekspresi adalah gabungan nilai, operator, dan nama yang dapat dievaluasi menjadi nilai baru. Misalnya, 2 * 3 + 4 adalah ekspresi yang menghasilkan 10. Variabel adalah nama yang kita pakai untuk menyimpan atau merujuk nilai, misalnya massa = 2.5.

Kemudian, Anda akan mempelajari tipe data dasar. Tipe data adalah kategori nilai yang menentukan operasi apa yang masuk akal untuk nilai tersebut. Angka bulat seperti 3 memiliki tipe int, bilangan desimal seperti 3.14 memiliki tipe float, teks seperti "data" memiliki tipe str, dan nilai benar-salah seperti True memiliki tipe bool. Pemahaman tipe data penting karena operasi yang tampak mirip dapat memiliki makna berbeda. Contohnya:

print(2 + 3)
print("2" + "3")

Baris pertama menghasilkan angka 5, sedangkan baris kedua menghasilkan teks "23". Komputer tidak menebak maksud kita; ia mengikuti aturan tipe data.

Setelah itu, Anda akan belajar masukan dan keluaran. Masukan adalah data yang diterima program, misalnya dari keyboard atau berkas. Keluaran adalah hasil yang ditampilkan atau disimpan. Program akademik yang baik tidak hanya menghitung dengan benar, tetapi juga menampilkan hasil dengan rapi, misalnya menyertakan satuan dan jumlah angka di belakang koma yang sesuai.

Berikutnya, Anda akan mempelajari percabangan dan perulangan. Percabangan membuat program dapat memilih tindakan berdasarkan kondisi. Perulangan membuat program dapat mengerjakan langkah yang sama berkali-kali. Dua konsep ini sangat penting. Tanpa percabangan dan perulangan, program hanya seperti kalkulator yang menjalankan satu alur lurus. Dengan keduanya, program mulai dapat menangani variasi kasus dan kumpulan data.

Contoh percabangan:

nilai = 72

if nilai >= 60:
    print("lulus")
else:
    print("tidak lulus")

Contoh perulangan:

total = 0

for angka in [10, 20, 30]:
    total = total + angka

print(total)

Lalu, Anda akan belajar fungsi. Fungsi adalah blok kode bernama yang melakukan tugas tertentu dan dapat digunakan ulang. Fungsi membantu kita menghindari pengulangan kode dan membuat program lebih mudah diuji. Misalnya, jika kita sering menghitung energi kinetik, kita dapat menulis:

def energi_kinetik(massa, kecepatan):
    return 0.5 * massa * kecepatan**2

Setelah fungsi dipahami, Anda akan masuk ke struktur data seperti list, tuple, string lanjutan, dan dictionary. Struktur data adalah cara mengorganisasi banyak nilai agar mudah diolah. List cocok untuk deretan data yang dapat berubah, misalnya hasil pengukuran berulang. Dictionary cocok untuk data berlabel, misalnya parameter percobaan:

parameter = {
    "massa": 2.0,
    "panjang": 0.5,
    "gravitasi": 9.81
}

Pada bagian berikutnya, Anda akan belajar membaca dan menulis berkas teks serta CSV. Ini penting karena data akademik sering disimpan dalam berkas, bukan diketik satu per satu ke dalam program. Python menyediakan pustaka standar untuk banyak pekerjaan umum, termasuk pemrosesan CSV, operasi matematika, statistik sederhana, bilangan acak, dan pengelolaan jalur berkas (Python Software Foundation, The Python Standard Library).

Menjelang akhir buku, Anda akan mempelajari penanganan galat, debugging, pengujian dasar, dan pemrograman modular. Debugging berarti proses menemukan dan memperbaiki kesalahan dalam program. Pengujian berarti memeriksa apakah program memberikan hasil yang benar untuk kasus-kasus yang sudah kita ketahui jawabannya. Pemrograman modular berarti membagi program menjadi bagian-bagian kecil yang rapi, biasanya berupa fungsi dan modul, agar lebih mudah dipahami dan dikembangkan.

Akhirnya, Anda akan menerapkan semua konsep itu pada algoritma dasar dan proyek terpadu. Anda akan membuat program yang membaca data, memvalidasi masukan, menghitung hasil, menyimpan keluaran, dan menyusun kode secara lebih teratur.

Cara berpikir yang diharapkan

Buku ini tidak bertujuan membuat Anda menghafal semua perintah Python. Bahkan programmer berpengalaman pun sering membuka dokumentasi. Tujuan yang lebih penting adalah membentuk cara berpikir berikut.

Pertama, biasakan memecah persoalan besar menjadi langkah kecil. Jika diminta membuat program untuk menghitung statistik data percobaan, jangan langsung menulis semuanya sekaligus. Pecah menjadi pertanyaan kecil: dari mana data dibaca? Format datanya seperti apa? Nilai mana yang valid? Statistik apa yang dihitung? Bagaimana hasil ditampilkan?

Kedua, biasakan memberi nama yang bermakna. Nama seperti a, b, dan c kadang cukup untuk contoh matematika pendek, tetapi dalam program yang lebih panjang, nama seperti massa, waktu_tempuh, jumlah_sampel, atau tegangan_maksimum jauh lebih membantu.

Ketiga, biasakan menguji program dengan kasus sederhana. Jika Anda menulis fungsi rata-rata, uji dengan data yang mudah dihitung manual:

data = [2, 4, 6]

Rata-ratanya jelas 4. Jika program menghasilkan nilai lain, berarti ada yang perlu diperiksa.

Keempat, biasakan membaca pesan galat dengan tenang. Pesan galat bukan musuh. Pesan galat adalah petunjuk. Ia sering menunjukkan jenis kesalahan dan baris kode yang bermasalah. Pada awalnya pesan tersebut mungkin terasa asing, tetapi lama-kelamaan Anda akan mengenali polanya.

Kelima, biasakan menulis program yang dapat dibaca oleh manusia. Komputer mungkin tetap dapat menjalankan kode yang berantakan, tetapi manusia sulit memeriksanya. Dalam tugas akademik, praktikum, penelitian kecil, atau proyek teknik, kode sering perlu dibaca ulang beberapa hari atau beberapa minggu kemudian. Kode yang jelas adalah investasi.

Batasan buku ini

Buku ini adalah pengantar. Kita tidak akan langsung membahas pustaka besar seperti NumPy, pandas, Matplotlib, SciPy, atau machine learning. Pustaka-pustaka itu penting, tetapi akan lebih mudah dipelajari setelah fondasi Python dasar kuat.

Kita juga tidak akan berfokus pada teori ilmu komputer yang mendalam. Beberapa konsep seperti algoritma, tipe data, dan modularitas akan dijelaskan secukupnya untuk membantu Anda menulis program yang benar dan rapi. Jika nanti Anda ingin mendalami struktur data, analisis kompleksitas algoritma, rekayasa perangkat lunak, atau komputasi numerik, buku ini dapat menjadi pijakan awal.

Batasan lain: program dalam buku ini umumnya kecil. Itu disengaja. Program kecil memungkinkan kita melihat hubungan antara ide, kode, dan hasil tanpa tenggelam dalam detail proyek besar. Keterampilan menulis program besar dibangun dari kemampuan menulis program kecil yang benar.

Sikap belajar: pelan, aktif, dan teliti

Pemrograman dipelajari dengan membaca dan menulis kode. Membaca saja tidak cukup. Setiap kali melihat contoh, jalankan jika memungkinkan. Ubah angkanya. Ganti nama variabelnya. Buat kesalahan kecil dengan sengaja, lalu lihat pesan galatnya. Misalnya, hapus titik dua setelah if, ubah indentasi, atau bagi angka dengan nol. Dari situ Anda akan belajar bagaimana Python merespons.

Belajar Python juga membutuhkan ketelitian. Dalam perhitungan manual, Anda mungkin masih bisa memahami maksud tulisan yang agak tidak rapi. Python tidak begitu. Tanda kutip yang kurang, kurung yang tidak ditutup, atau indentasi yang salah dapat membuat program gagal berjalan. Kabar baiknya, ketelitian ini bisa dilatih.

Satu kebiasaan yang sangat membantu adalah menulis program sedikit demi sedikit. Jangan menulis 50 baris lalu baru menjalankannya. Tulis 3 sampai 5 baris, jalankan, lihat hasilnya, lalu lanjutkan. Cara ini membuat kesalahan lebih mudah ditemukan.

Contohnya, jika ingin membuat program konversi suhu, mulai dari versi paling kecil:

suhu_celsius = 25
suhu_kelvin = suhu_celsius + 273.15
print(suhu_kelvin)

Setelah itu baru tambahkan format keluaran:

print(f"{suhu_celsius} °C = {suhu_kelvin} K")

Lalu tambahkan masukan dari pengguna:

suhu_celsius = float(input("Masukkan suhu dalam Celsius: "))
suhu_kelvin = suhu_celsius + 273.15

print(f"{suhu_celsius} °C = {suhu_kelvin} K")

Dengan membangun program secara bertahap, Anda mengurangi jumlah hal yang dapat salah pada satu waktu.

Tujuan akhir bagian pengantar

Setelah membaca pendahuluan ini, Anda belum diharapkan langsung mahir menulis program. Yang diharapkan adalah Anda memiliki gambaran jelas tentang apa yang sedang dipelajari.

Anda akan belajar menulis instruksi yang dapat dijalankan komputer. Anda akan belajar merepresentasikan data dengan tipe yang tepat. Anda akan belajar membuat keputusan dengan percabangan, mengulang pekerjaan dengan perulangan, mengemas langkah menjadi fungsi, menyimpan kumpulan data dengan struktur data, membaca dan menulis berkas, menangani galat, menguji program, dan menyusun kode secara modular.

Jika semua itu terdengar banyak, itu wajar. Namun, setiap bab akan mengambil satu bagian kecil saja. Anda tidak perlu memahami semuanya hari ini. Mulailah dari satu konsep, satu contoh, satu latihan. Pemrograman adalah keterampilan bertahap: makin sering Anda mengubah persoalan menjadi langkah yang jelas, makin alami cara berpikirnya.

Pada bab berikutnya, kita mulai dari dasar paling awal: bagaimana program bekerja dan bagaimana lingkungan Python digunakan untuk menjalankan instruksi.

References

Python Software Foundation. The Python Tutorial. Python 3 Documentation. https://docs.python.org/3/tutorial/

Python Software Foundation. The Python Standard Library. Python 3 Documentation. https://docs.python.org/3/library/

Wilson, G., Aruliah, D. A., Brown, C. T., Chue Hong, N. P., Davis, M., Guy, R. T., Haddock, S. H. D., Huff, K. D., Mitchell, I. M., Plumbley, M. D., Waugh, B., White, E. P., & Wilson, P. (2014). Best Practices for Scientific Computing. PLOS Biology, 12(1), e1001745. https://doi.org/10.1371/journal.pbio.1001745

Wing, J. M. (2006). Computational Thinking. Communications of the ACM, 49(3), 33–35. https://doi.org/10.1145/1118178.1118215

τ TheoryTrace