Anda di halaman 1dari 58

PEMROGRAMAN BERORIENTASI Pertemuan 3 – Dasar–Dasar

Pemrograman Python
OBJEK (PBO) Bagian 2
OUTLINE
Fungsi
Modul
Menangani File
Gaya Penulisan Kode
Fungsi

❖ Jika variabel adalah wadah bernama untuk data, maka fungsi


adalah wadah bernama untuk blok kode yang dapat dieksekusi
berdasarkan permintaan (saat dipanggil)
❖ Dapat mengirimkan data, yang dikenal sebagai Argumen, ke
dalam suatu fungsi
❖ Dapat mengembalikan data sebagai hasilnya
Fungsi (lanjutan)

❖ Manfaat: berguna jika memiliki program yang menjalankan


operasi tertentu berkali-kali
❖ Ada 2 jenis:
Fungsi yang kita buat sendiri
Fungsi bawaan Python
Fungsi – Fungsi yang Kita Buat
Sendiri
❖ Didefinisikan menggunakan kata kunci def: dan kemudian nama
fungsinya beserta tanda kurung yang diikuti tanda titik dua
❖ Semua kode yang kita inginkan di dalam fungsi harus
diindentasikan
❖ Contoh:
def MyFunction():
print("Hello from a function")
Fungsi – Fungsi yang Kita Buat
Sendiri (lanjutan)
❖ Cara memanggil suatu fungsi, gunakan nama fungsi yang diikuti
dengan tanda kurung
Contoh: MyFunction()
Fungsi – Fungsi yang Kita Buat
Sendiri (lanjutan) – Argumen
❖ Informasi/data dapat dimasukkan ke dalam fungsi sebagai argumen
❖ Merupakan variabel yang terdaftar di dalam tanda kurung dalam
definisi fungsi
❖ Merupakan cara mengirimkan data ke suatu fungsi saat dipanggil
ketika kita tidak tahu variabel mana data akan berada atau akan
berisi data apa
❖ Argumen dituliskan setelah nama fungsi, di dalam tanda kurung,
dapat menambahkan argumen sebanyak yang kita inginkan, cukup
pisahkan dengan koma
Fungsi – Fungsi yang Kita Buat
Sendiri (lanjutan) – Argumen
❖ Dapat juga disebut sebagai istilah parameter
❖ Contoh:
def MyFunction(fname): # satu argumen
print(fname + " Situmorang")

MyFunction("Emil")
MyFunction("Tobias")
MyFunction("Linus")
Fungsi – Fungsi yang Kita Buat
Sendiri (lanjutan) – Argumen
❖ Secara default, fungsi harus dipanggil dengan jumlah argumen
yang benar
❖ Contoh:
❖ def MyFunction(fname, lname):
print(fname + " " + lname)

MyFunction("Emil", “Situmorang")
Fungsi – Fungsi yang Kita Buat
Sendiri (lanjutan) – Argumen
❖ Dapat mengirim argumen dengan sintaks key = value, dengan
cara ini urutan argumen tidak menjadi masalah
❖ Contoh:
❖ def MyFunction(child3, child2, child1):
print("The youngest child is " + child3)

MyFunction(child1 = "Emil", child2 = "Tobias", child3 = "Linus")


Fungsi – Fungsi yang Kita Buat Sendiri
(lanjutan) – Pengembalian Nilai
❖ Untuk dapat suatu fungsi mengembalikan nilai, gunakan
pernyataan return
❖ Contoh:
def MyFunction(x):
return 5 * x

print(MyFunction(3))
print(MyFunction(5))
print(MyFunction(9))
Fungsi – Fungsi yang Kita Buat Sendiri
(lanjutan) – Fungsi Kosong
❖ Definisi fungsi tidak boleh kosong, tetapi jika kita ingin memiliki
fungsi tanpa isi, masukkan kata kunci pass pada isi fungsi untuk
menghindari kesalahan
❖ Contoh:
def MyFunction():
pass
Fungsi – Fungsi yang Kita Buat Sendiri
(lanjutan) – Argumen *args
❖ Jika jumlah argumen tidak diketahui, tambahkan * sebelum
nama argumen
❖ Fungsi akan menerima argumen berbentuk Tuple dan dapat
mengakses item yang sesuai
❖ Contoh:
def MyFunction(*kids):
print("The youngest child is " + kids[2])
MyFunction("Emil", "Tobias", "Linus")
Fungsi – Fungsi yang Kita Buat Sendiri
(lanjutan) – Argumen **kwargs
❖ Jika jumlah argumen kata kunci tidak diketahui, tambahkan
tanda ganda ** sebelum nama argumen
❖ Fungsi akan menerima argumen berbentuk Dictionary dan
dapat mengakses item yang sesuai
❖ Contoh:
def MyFunction(**kid):
print("His last name is " + kid["lname"])
MyFunction(fname = "Tobias", lname = “Situmorang")
Fungsi – Fungsi yang Kita Buat
Sendiri (lanjutan) – Rekursif
❖ Fungsi yang ditentukan dapat memanggil dirinya sendiri
❖ Harus terdapat kondisi berhenti di dalam fungsi
❖ Contoh:
def SixRecursion(k):
if(k > 0):
result = k + SixRecursion(k - 1)
print(result)
else:
result = 0
return result
print("Recursion Example Results")
SixRecursion(6)
Fungsi – Fungsi Bawaan Python
❖ Python dilengkapi dengan banyak fungsi bawaan untuk
melakukan berbagai hal dalam program apa pun
❖ Alasan: ada beberapa operasi yang cukup sering dilakukan
(umum) sehingga Python membuatnya ke dalam fungsi, kita
tidak harus mendefinisikannya terlebih dahulu
❖ Cara memanggil persis sama dengan memanggil yang fungsi
yang kita buat sendiri
Fungsi – Fungsi Bawaan Python
(lanjutan)
❖ Tidak semua fungsi bawaan kita bahas di sini, hanya dibahas
yang umum dan sering digunakan
❖ Fungsi bawaan Python selengkapnya dapat dilihat di
dokumentasi Pthyon:
https://docs.python.org/3.8/library/index.html
Fungsi – Fungsi Bawaan Python
(lanjutan)
❖ Fungsi operasi umum
input()
print()
type()
range()
globals()
Fungsi – Fungsi Bawaan Python
(lanjutan)
❖ Fungsi tipe data dasar
str() bin()
int() oct()
float() hex()
complex() bool()
Fungsi – Fungsi Bawaan Python
(lanjutan)
❖ Fungsi tipe koleksi (bentukan)
list()
dict()
tuple()
set()
Fungsi – Fungsi Bawaan Python
(lanjutan)
❖ Fungsi operasi angka
abs()
pow()
round()
Fungsi – Fungsi Bawaan Python
(lanjutan)
❖ Fungsi operasi teks
format() replace() isalnum() startswith()
capitalize() split() isalpha() endswith()
title() join() isnumeric()
upper() strip() isupper()
lower() chr() islower()
find() / index() ord() startswith()
Fungsi – Fungsi Bawaan Python
(lanjutan)
❖ Fungsi operasi koleksi umum
len()
sum()
max()
min()
sorted()
reversed()
Fungsi – Fungsi Bawaan Python
(lanjutan)
❖ Fungsi operasi List
insert() index()
append() count()
extend() sort()
pop() reserve()
remove()
Fungsi – Fungsi Bawaan Python
(lanjutan)
❖ Fungsi operasi Dictionary
update() keys()
setdefault() values()
get() items()
pop ()
popitem()
Fungsi – Fungsi Bawaan Python
(lanjutan)
❖ Fungsi operasi Tuple
count()
index()
Fungsi – Fungsi Bawaan Python
(lanjutan)
❖ Fungsi operasi Set
add()
pop()
remove()
discard()
intersection()
union()
Fungsi – Fungsi Bawaan Python
(lanjutan)
❖ Fungsi operasi file
open()
close()
read()
readline()
write()
Modul

❖ Jika fungsi adalah kelompok kode, maka modul adalah kelompok fungsi.
yang dapat dieksekusi berdasarkan permintaan (saat dipanggil)
❖ Modul sama dengan pustaka kode, sebuah file yang berisi serangkaian
fungsi yang dapat kita sertakan dalam program kita
❖ Manfaat: berguna jika memiliki program yang memiliki banyak operasi,
sebagai alat struktural dan organisasi untuk kode kita
❖ Ada 2 jenis:
Modul bawaan Python
Modul yang kita buat sendiri
Modul – Modul yang Kita Buat
Sendiri
❖ Didefinisikan berupa file Python berekstensi .py
❖ Disimpan di direktori yang sama dengan file Python utama kita
Modul – Modul yang Kita Buat
Sendiri (lanjutan) – Cara 1
❖ Cara menggunakan suatu modul, gunakan kata kunci import
diikuti dengan nama modul tanpa ekstensi .py
❖ Contoh: import MyModule
❖ Dapat membuat alias saat mengimpor modul, dengan
menggunakan kata kunci as
❖ Contoh: import MyModule as MM
Modul – Modul yang Kita Buat
Sendiri (lanjutan) – Cara 1
❖ Saat menggunakan fungsi dari modul, gunakan sintaks: nama
modul, diikuti oleh titik, dan kemudian nama fungsi beserta
argumennya (optional), contoh:
def MyFunction(name): # simpan: MyModule.py
print("Hello, " + name)
import MyModule

MyModule.MyFunction("Jonathan")
Modul – Modul yang Kita Buat
Sendiri (lanjutan) – Cara 1
❖ Tidak hanya fungsi, namun juga variabel dari semua jenis (int,
str, List, dll)
❖ Contoh:
x = 10 # simpan: MyModule.py
import MyModule
y = MyModule.x
print(y)
Modul – Modul yang Kita Buat
Sendiri (lanjutan) – Cara 2
❖ Cara gunakan kata kunci from yang diikuti dengan nama modul
tanpa ekstensi .py kemudian dilanjutkan dengan kata kunci
import yang diikuti dengan nama fungsi yang ada di dalam
modul
❖ Contoh: from MyModule import MyFunction
❖ Dapat mengimpor beberapa dengan memisahkan nama
mereka dengan koma
❖ Contoh: from MyModule import MyFunction1, MyFunction2
Modul – Modul yang Kita Buat
Sendiri (lanjutan) – Cara 2
❖ Memungkinkan kita memilih fungsi tertentu dari pustaka,
sehingga akan menghemat waktu meload fungsi –
direkomendasikan untuk modul yang memiliki ratusan fungsi
❖ Dapat membuat alias saat mengimpor modul, dengan
menggunakan kata kunci as ()
❖ Contoh: from MyModule import MyFunction as MF
Modul – Modul yang Kita Buat
Sendiri (lanjutan) – Cara 2
❖ Saat mengimpor menggunakan kata kunci from, jangan gunakan nama
modul saat merujuk ke elemen dalam modul
❖ Contoh:
x = [10, 3, 6, 1, 6, 2]# simpan: MyModule.py
from MyModule import x

y = x[3] # bukan MyModule.x[3]

print(y)
Modul – Modul Bawaan Python
❖ Python dilengkapi dengan banyak modul bawaan untuk
melakukan berbagai hal dalam program apa pun
❖ Alasan: ada beberapa operasi yang cukup sering dilakukan
dalam bentuk fungsi sehingga Python membuatnya ke dalam
modul, kita tidak harus mendefinisikannya terlebih dahulu
❖ Cara menggunakannya persis sama dengan menggunakan
yang modul yang kita buat sendiri
Modul – Modul Bawaan Python
(lanjutan)
❖ Tidak semua modul bawaan kita bahas di sini, hanya dibahas
yang umum dan sering digunakan
❖ Modul bawaan Python selengkapnya dapat dilihat di
dokumentasi Pthyon:
https://docs.python.org/3.8/library/index.html
Modul – Modul Bawaan Python
(lanjutan)
❖ Modul matematika (import math), fungsi-fungsinya:
sin(), cos(), tan() remainder() / fmod()
ceil(), floor pi()
degrees(), radians() gcd()
exp(), log() dist()
pow(), sqrt() prod()
fabs()
Modul – Modul Bawaan Python
(lanjutan)
❖ Modul statistika (import statistics), fungsi-fungsinya:
mean() stdev()
median() pstdev()
median_high() variance()
median_low() pvariance()
mode()
Modul – Modul Bawaan Python
(lanjutan)
❖ Modul acak (import random), fungsi-fungsinya:
randrange() / randint() choice()
random() shuffle()
uniform() sample()
triangular()
Modul – Modul Bawaan Python
(lanjutan)
❖ Modul tanggal dan waktu (import datetime)/(import time),
fungsi-fungsinya:
date.today()
time()
datetime.now(), strftime()
Modul – Modul Bawaan Python
(lanjutan)
❖ Modul sistem operasi (import ❖ Modul sistem operasi (from os
os), fungsi-fungsinya: import path),
remove()
fungsi-fungsinya:
rmdir() getatime()
getmtime()
getsize()
exists()
Penanganan File

❖ Bagian penting dari aplikasi web apa pun


❖ Review sebelumnya – masukan data lewat keyboard: input(),
contoh:
username = input("Enter username:")

print("Username is: " + username)


❖ Terdiri dari fungsi untuk membuat, membaca, memperbarui, dan
menghapus file
Penanganan File – Buka File
❖ open(): fungsi untuk membuka file
❖ Terdiri dari dua Argumen: filename dan mode
❖ Ada empat mode berbeda untuk membuka file
"r" - baca - nilai default, membuka file untuk membaca, akan error jika file tersebut
tidak ada
"a" - tambahkan - membuka file untuk ditambahkan, membuat jika file tersebut jika
tidak ada
"w" - tulis - membuka file untuk ditulis, membuat file tersebut jika tidak ada
"x" - buat - membuat file yang ditentukan, akan error jika file tersebut ada
Penanganan File – Buka File
(lanjutan)
❖ Ada dua mode teks
"t" - teks - nilai default. mode teks
"b" - biner - mode biner, seperti gambar
❖ Contoh:
f = open("demofile.txt", "rt") # dalam direktori yang sama
f = open("D:\\MyFiles\demofile.txt", "rt") # berbeda direktori
❖ close(): fungsi untuk menutup file
❖ Contoh: f.close()
Penanganan File – Baca File
❖ Dapat menggunakan mode "r"
❖ read(): fungsi untuk membaca seluruh isi file
❖ Contoh:
f = open("demofile.txt", "rt")
print(f.read())
print(f.read(5)) # membaca 5 karekter dari awal teks
❖ Dengan cara perulangan, contoh:
f = open("demofile.txt", "rt")
for x in f:
print(x)
Penanganan File – Baca File
(lanjutan)
❖ readline(): fungsi untuk membaca per baris isi file
❖ Contoh:
f = open("demofile.txt", "rt")

print(f.readline()) # membaca 1 baris dari awal teks


Penanganan File – Tulis File (Sudah
Ada)
❖ Dapat menggunakan mode "a" (menambahkan di akhir isi file) dan
"w" (mengganti semua isi file)
❖ write(): fungsi untuk menulis isi file
❖ Contoh "a":
f = open("demofile.txt", "at")
f.write("Now the file has more content!")
f.close()
f = open("demofile.txt", "rt")
print(f.read())
Penanganan File – Tulis File (Sudah
Ada) (lanjutan)
❖ Contoh "w":
f = open("demofile.txt", "wt")
f.write("Now again the file has more content 2!")
f.close()

f = open("demofile.txt", "rt")

print(f.read())
Penanganan File – Tulis File (Belum
Ada)
❖ Dapat menggunakan mode "x", "a", dan "w"
❖ Contoh: f = open(“MyFile.txt", "x") # buat file kosong
Penanganan File – Hapus File
❖ import OS
❖ remove(): fungsi untuk menghapus file, akan error jika file tidak ada
❖ rmdir(): fungsi untuk menghapus direktori, hanya dapat menghapus
direktori yang kosong
❖ Contoh 1:
import os
os.remove("demofile.txt") # hapus file
os.rmdir(“MyDirectory")# hapus direktori
Gaya Penulisan Kode

❖ Kode menjadi rapih dan enak dilihat


❖ Memudahkan orang lain untuk membaca dan mempelajari kode
kita
❖ Memudahkan untuk debugging
❖ Digunakan terutama untuk kode yang panjang atua kompleks
❖ PEP 8: sebagai panduan gaya penulisan kode yang pakai
banyak pengembang
Gaya Penulisan Kode (lanjutan) –
Poin Penting
❖ Gunakan indentasi 4 spasi, dan tanpa tab
❖ Tidak melebihi 79 karakter per baris
❖ Gunakan baris kosong untuk memisahkan if, for, while, fungsi dan
kelas, dsb
❖ Jika memungkinkan, berikan komentar untuk baris tersebut, gunakan
docstrings (documentation string) sebagai dokumentasi atau
keterangan singkat tentang fungsi yang kita buat.
❖ Gunakan spasi di sekitar operator dan setelah koma
Gaya Penulisan Kode (lanjutan) –
Poin Penting
❖ Gunakan format nama variabel, kelas, dan fungsi secara
konsisten, serta nama yang dapat dipahami
Tiga teknik yang bisa digunakan untuk lebih mudah dibaca:
✔ Kasus Kamera, contoh: myVariableName = "John"
✔ Pascal Case, contoh: MyVariableName = "John"
✔ Snake Case, contoh: my_variable_name = "John"
Latihan
Fungsi dalam modul
❖ Faktorial
❖ Pangkat/eksponensial
❖ Fibonacci
Tugas
❖ Konversi angka dari bilangan desimal menjadi biner, okta dan
hexa
TERIMA KASIH Pertemuan 3 - Selesai

Anda mungkin juga menyukai