#5 Basic Python Programming
Variable, Operator, Flow Control dan Struktur Data
Selamat sore semuanya! kali ini saya akan membahas dasar-dasar pemrograman Python yang akan sangat berguna saat kita nanti terjun menulis code untuk Machine Learning menggunakan bahasa pemrograman Python. Jika kmau merasa sudah menguasai dasar-dasar pemrograman Python mengenai variable, operator, flow control sampai struktur data, kamu bisa lewati part ini.
Nah apa aja yang dibutuhkan ?
Hardware :
- Komputer Laptop dengan spesifikasi yang direkomendasikan, bisa dilihat disini.
Software :
- Anaconda (Python Package Manager), instalasi bisa dilihat disini.
- Jupyter Notebook (Web-based IDE for Python), instalasi bisa dilihat disini.
Setelah semua alat dan bahan siap, kita bisa mulai mempelajari dasar-dasar pemrograman Python.
Python Programming
1. Print
Seperti halnya bahasa pemrograman lain, Python juga memiliki sintaks untuk melakukan print data yang tersimpan pada sebuah variable. Sintaks Print di Python sangat sederhana dan gampang untuk digunakan.
Print string “Hello World”
print("Hello World!")>> "Hello World!"
Print hasil penjumlahan
print(2+3)>> 5
Print hasil penggabungan string dan angka, disini kita menggunakan fungsi str() untuk merubah variable yang bernilai numerik ke string.
print("value : " + str(2))>> value : 2
Pada Jupyter Notebook hasilnya akan tampak sebagai berikut :
2. Help & Documentation
Terkadang kita mengalami kesulitan untuk membaca program python yang menggunakan fungsi yang jarang digunakan. Hal ini bisa saja kita coba gooling untuk mencari dokumentasi function terkait untuk dapat kita fahami dan kita gunakan selanjutnya. Namun ternyata Python sendiri sudah dibekali oleh function Help & Documenttation yang dapat mempermudah kita melihat detail modul/fungsi pada bahasa Python.
Ada dua fungsi yang digunakan untuk mencari bantuan:
- fungsi dir() untuk melihat fungsi apa saja yang tersedia pada sebuah modul;
- fungsi help() untuk membuka dokumentasi suatu fungsi.
Cara penggunaanya, misalkan kita ingin menggunakan package math di Python, kita ingin mengetahui method apa saja yang terdapat didalamnya, maka kita bisa jalankan dir(math) untuk melihat method apa saja yang terdapat pada package math.
- Jangan lupa terlebih dahulu kita harus import package math dengan cara import math.
Jika kita ingin melihat dokumentasi salah satu method pada package math atau bahkan keseluruhanya (seluruh package math) maka kita bisa menggunakan fungsi help(math.atanh) jika kita ingin mengetahui detail method atanh dalam package math.
3. Variable & Tipe Data
Aturan Penulisan Variabel
•Nama variabel boleh diawali menggunakan huruf atau garis bawah (_),
contoh:
nama, _nama, namaKu, nama_variabel
•Karakter selanjutnya dapat berupa huruf, garis bawah (_) atau angka,
contoh:
__nama, n2, nilai1
•Karakter pada nama variabel bersifat sensitif (case-sensitif). Artinya huruf besar dan kecil dibedakan. Misalnya, variabel_Ku dan variabel_ku, keduanya adalah variabel yang berbeda.
•Nama variabel tidak boleh menggunakan kata kunci yang sudah ada dalam python seperti if, while, for, dsb.
Python akan seara otomatis mengenali jenis data atau tipe data yang tersimpan dalam sebuah variabel.
usia = true ketika di jalankan error, disebabkan oleh boolean statement (True dan False) di Python tidak ditulis true.
Python juga men-support casting variable atau type conversion, berikut ini adalah fungsi yang dapat digunakan :
Fungsi-fungsi untuk mengubah tipe data:
int() untuk mengubah menjadi integer;long() untuk mengubah menjadi integer panjang;float() untuk mengubah menjadi float;bool() untuk mengubah menjadi boolean;chr() untuk mengubah menjadi karakter;str() untuk mengubah menjadi string.bin() untuk mengubah menjadi bilangan Biner.hex() untuk mengubah menjadi bilangan Heksadesimal.oct() untuk mengubah menjadi bilangan okta.
4. Input dan Output
Python memiliki fungsi input() untuk mengambil inputan dari keyboard.
fungsi input akan menerima masukan value dalam tipe string. Jika kita menginginkan value tersebut bernilai lain, maka perlu menggunakan fungsi Python type conversion yang dibahas sebelumnya.
Contoh program :
# Mengambil input
nama = input("Siapa nama kamu: ")
umur = input("Berapa umur kamu: ")# Menampilkan output
print ("Hello",nama,"umur kamu adalah",umur,"tahun")
5. Operator Aritmatika
OPerator Aritmatika dalam Python tidak jauh berbeda dengan programming lain, diantaranya :
+ untuk operator penjumlahan
- untuk operator pengurangan
/ untuk operator pembagian
* untuk operator perkalian
% untuk operator modulo (hasil sisa pembagian)
** untuk operator pangkat
Contoh Program :
# Ambil input untuk mengisi nilai
a = int(input("Inputkan nilai a: "))
b = int(input("Inputkan nilai b: "))# Menggunakan operator penjumlahan
c = a + b
print "Hasil %d + %d = %d" % (a,b,c)# Operator Pengurangan
c = a - b
print "Hasil %d - %d = %d" % (a,b,c)# Operator Perkalian
c = a * b
print "Hasil %d * %d = %d" % (a,b,c)# Operator Pembagian
c = a / b
print "Hasil %d / %d = %d" % (a,b,c)# Operator Sisa Bagi
c = a % b
print "Hasil %d %% %d = %d" % (a,b,c)# Operator Pangkat
c = a ** b
print "Hasil %d ** %d = %d" % (a,b,c)
Pada Jupyter Notebook akan terlihat seperti berikut :
6. Operator Penugasan
Operator Penugasan adalah operator yang digunakan untuk mengisi nilai pada variable, menambah, mengurang, membagi atau mengali nilai suatu variable.
Sample Program :
# Ambil input untuk mengisi nilai
a = input("Inputkan nilai a: ")
# ^
# | contoh operator penugasan untuk mengisi nilai
print "Nilai a = %d" % a# Coba kita jumlahkan nilai a dengan opertor penugasan
a += 5
# ^
# |
# contoh operator penugasan untuk menjumlahkan
# Setelah nilai a ditambah 5, coba kita lihat isinya
print "Nilai setelah ditambah 5:"
print "a = %d" % a
Contoh operator penuhasan :
a = 1 operator penugasan mengisi nilai
a +=1 operator penugasan menambahkan 1 ke variable a
a -=1 operator penugasan mengurangkan 1 ke variable a
a *=2 operator penugasan mengalikan 2 ke variable a
a /= 2 operator penugasan membagikan 2 ke variable a
7. Operator Pembanding
Operator pembanding dalam Python sama dengan kebanyakan bahasa pemrograman lainya, diantaranya :
== operator pembanding "sama dengan", a == b
!= operator pembanding "tidak sama dengan", a != b
< operator pembanding "lebih kecil dari", a < b
> operator pembanding "lebih besar dari", a > b
<= operator pembanding "lebih kecil dari sama dengan", a <= b
> operator pembanding "lebih besar dari sama dengan", a >= b
Hasil dari operator pembanding adalah nilai boolean True atau False. Sehingga jika kita memiliki variable a = 2 dan b = 3, maka a ==b akan bernilai False, karena nilai a tidak sama dengan b.
Sample Program :
a = int(input("Inputkan nilai a: "))
b = int(input("Inputkan nilai b: "))# apakah a sama dengan b?
c = a == b
print "Apakah %d == %d: %r" % (a,b,c)# apakah a < b?
c = a < b
print "Apakah %d < %d: %r" % (a,b,c)# apakah a > b?
c = a > b
print "Apakah %d > %d: %r" % (a,b,c)# apakah a <= b?
c = a <= b
print "Apakah %d <= %d: %r" % (a,b,c)# apakah a >= b?
c = a >= b
print "Apakah %d >= %d: %r" % (a,b,c)# apakah a != b?
c = a != b
print "Apakah %d != %d: %r" % (a,b,c)
8. Operator Logika
Operator logika digunakan untuk melakukan operasi data boolean.
Sample program :
a = True
b = False# Logika AND
c = a and b
print "%r and %r = %r" % (a,b,c)# Logika OR
c = a or b
print "%r or %r = %r" % (a,b,c)# Logika Not
c = not a
print "not %r = %r" % (a,c)
9. Percabangan Untuk membuat Logika Program
Percabangan sangat berguna dalam pemrograman, bisa dipakai untuk berbagai kebutuhan, misalnya melakukan tugas 1 ketika nilai A diatas 10, dan melakukan tugas B ketika nilai A dibawah atau sama dengan 10. Nah, Logika tersebut bisa diterapkan di python menggunakan percabangan (if, elif, else).
Sintaks dasarnya sebagai berikut :
if statement_1 :
tugas_1
elif statement_2 :
tugas_2
else :
tugas_3
Contoh program 1 (fungsi if sederhana):
lulus = raw_input("Apakah kamu lulus? [ya/tidak]: ")
if lulus == "tidak":
print("Kamu harus ikut ujian")
Contoh program 2 (fungsi if dan else) :
umur = input("Berapa umur kamu: ")
if umur >= 18:
print("Kamu boleh membuat SIM")
else:
print("Kamu belum boleh membuat SIM")
Contoh program 3 (fungsi if, elif dan else) :
nilai = int(input("Inputkan nilaimu: "))if nilai >= 90:
grade = "A"
elif nilai >= 80:
grade = "B+"
elif nilai >= 70:
grade = "B"
elif nilai >= 60:
grade = "C+"
elif nilai >= 50:
grade = "C"
elif nilai >= 40:
grade = "D"
else:
grade = "E"
print("Grade: %s" % grade)
10. Perulangan menggunakan for
Sample program :
ulang = 10for i in range(ulang):
print ("Perulangan ke-" + str(i))
11. Perulangan menggunakan while
Sample program :
jawab = 'ya'
hitung = 0while(jawab == 'ya'):
hitung += 1
jawab = input("Ulang lagi tidak?")print("Total perulangan : " + str(hitung))
12. Struktur Data List
List dapat kita buat seperti membuat variabel biasa, namun nilai variabelnya diisi dengan tanda kurung siku ([]).
List dapat menampung banyak item didalamnya,
buah = ["jeruk", "apel", "mangga", "duren"]
List juga dapat menyimpan item dengan tipe data berbeda,
laci = ["buku", 21, True, 34.12]
Kita bisa mengakses nilai salah satu item list,
# Kita punya list nama-nama buah
buah = ["apel", "anggur", "mangga", "jeruk"]
# Misanya kita ingin mengambil mangga
# Maka indeknya adalah 2
print buah[2]
Tedapat 2 metode (method) atau fungsi yang bisa digunakan untuk menambahkan isi atau item ke List:
append(item) menambahkan item dari belakang.
insert(index, item) menambahkan item dari indeks tertentu
Fungsi Index item List & Extend
kita dapat mengakses index item list pada sebuah list dengan cara berikut :
listName.index(“itemName”)
Kita juga bisa melakukan extend list (menambahkan list kedua pada list pertama) dengan cara berikut :
listA = [A1, A2, A3, ...]
listB = [B1, B2, B3, ...]listA.extend(listB)
Sample program :
Fungsi sum(), len(), min() and max() functions of List
Fungsi sum(), len(), min() dan max() hanya bisa digunakan untuk list yang memiliki item numerik.
sum() mencari hasil jumlah semua item dalam list
len() mencari banyaknya item pada list
min() mencari nilai minimum pada list
max() mencari nilai maksimum pada list
Sample program :
13. Dictionary
mendefinisikan dictionary dan print element pada dictionary :
Sample program :
Mengubah element pada dictionary dan melakukan proses looping untuk tiap item pada dictionary.
Sample program :
Cek key, cek length dan menambahkan item ke dictionary.
Sample program :
Penutup
Nah untuk basic python, cukup sampai disana. Selanjutnya akan dibahas operasi matrix dan array multidimensi menggunakan library Numpy. Tulisan ini memang jauh dari sempurna, temen-temen bisa gali lebih banyak di source pembelajaran lain yang lebih kaya. Bisa kunjungi Petani Kode untuk tutorial berbahasa Indonesia, atau kunjungi w3school untuk versi inggris.