• Tidak ada hasil yang ditemukan

Python Programming Bootcamp PyBasic 2

N/A
N/A
Protected

Academic year: 2022

Membagikan "Python Programming Bootcamp PyBasic 2"

Copied!
50
0
0

Teks penuh

(1)

Python Programming | Bootcamp

PyBasic 2

(2)

Jenis-jenis

File

(3)

Jenis-jenis File

Binary File vs. Text File

• Gambar: .jpg, .png, .bmp, .tiff

• Video: .mp4, .mkv, .avi, .mpg

• Audio: .mp3, .aac, .wav, .flac

• Arsip: .zip, .rar, .iso, .7z

• Executable: .exe, .dll

• Document: .txt, .tex, asciidoc

• Tabular data: .csv, .tsv

• Source code: .py, .cpp, .js

• Web: .html, .xml, .json, .css

(4)

Jenis-jenis File: .txt

TXT adalah jenis format file yang berisi data teks.

contoh

(5)

Jenis-jenis File: .csv

CSV (Comma-Separated Values) merupakan salah satu jenis pemformatan teks yang biasanya direpresentasikan sebagai data tabular (tabel). Jika dilihat melalui notepad, nilai pada setiap baris dipisahkan dengan simbol koma “,”.

contoh

contoh

(6)

Jenis-jenis File: .json

JSON (JavaScript Object Notation) termasuk pemformatan file yang ditujukan agar mudah dibaca oleh manusia dengan ciri khas penggunaan pasangan key : value (seperti dictionary pada Python).

contoh

(7)

File

Handling

(8)

File Handling

istilah yang merujuk pada penanganan file seperti: menyimpan dan

membaca file. File Handling pada Python terdiri dari tiga macam mode,

yaitu:

w (write) a (append) r (read)

Fungsi

menyimpan data ke dalam file dan menghapus data pada file yang memiliki kemiripan nama

menyimpan data ke dalam file dan tidak menghapus data pada file yang

memiliki kemiripan nama

membaca data dari suatu file

(9)

File Handling

terdapat dua cara yang dapat dipilih dalam melakukan File Handling.

cara 1: membuka file dan menutupnya secara manual

cara 2: membuka file dan menutupnya secara otomatis

kenapa perlu ditutup?

membuka file memerlukan sejumlah memori, karenanya file perlu ditutup setelah proses penambahan atau pembacaan data selesai.

agar memori yang sudah tidak dipakai dapat dialokasikan untuk proses yang lainnya

(10)

File Handling

memasukan data baru dengan mode w

misalkan dimiliki sebuah file yang berformat .txt yang berisi data username pengguna suatu akun:

lalu dilakukan aksi seperti berikut:

hasilnya

(11)

File Handling

misalkan dimiliki sebuah file yang berformat .txt yang berisi data username pengguna suatu akun:

lalu dilakukan aksi seperti berikut:

membaca data

(12)

File Handling

mode r, a, dan w digunakan ketika berurusan dengan data text. Sedangkan untuk data binary perlu menambahkan huruf b di belakang nama mode, seperti: rb, ab, dan wb.

Ada pula variasi mode yang lainnya, seperti:

• w+, untuk write dan read

• a+, untuk append dan read

• r+, untuk read dan write

(13)

Exception

Handling

(14)

Exception Handling

digunakan untuk menangani kesalahan yang terjadi pada penulisan kode (misal: typo), maupun kesalahan pada proses pengerjaan perintah dari kode yang dituliskan.

informasi yang muncul biasanya digunakan untuk troubleshooting karena setiap kesalahan yang terjadi memiliki nama yang mendeskripsikan jenis kesalahannya.

(15)

Exception Handling: Jenis Kesalahan

kesalahan sintaksis kesalahan indentasi

“Print” tidak kenali

(16)

Exception Handling: Jenis Kesalahan

dan masih ada beberapa kesalahan yang dapat terjadi, seperti:

ZeroDivisionError pada operasi pembagian ketika nilai penyebutnya nol (0)

AttributeError ketika atribut yang dipanggil salah, misal: saat eksekusi function

IndexError pada looping semua data sudah terpanggil, tetapi looping masih berlanjut

KeyboardInterrupt interupsi dilakukan pada program yang sedang berjalan

(17)

Exception Handling: jenis kesalahan

dan masih ada beberapa kesalahan yang dapat terjadi, seperti:

ValueError ketika data yang dimasukkan memiliki tipe yang tidak sesuai

RuntimeError saat program berjalan terlalu lama

KeyError

FileNotFoundError file tidak ditemukan di dalam suatu direktori kunci (key) tidak ditemukan di dictionary

(18)

Exception Handling

pada kondisi tertentu perlu dilakukan penanganan kesalahan agar kode yang mengalami kesalahan tidak berhenti tereksekusi atau hanya menampilkan atau mencetak jenis kesalahannya saja

penanganan kesalahan dapat dilakukan menggunakan klausa try … except

coba dieksekusi

karena terjadi kesalahan, maka baris ini yang dijalankan

(19)

Exception Handling

konstruksi lain dalam penanganan kesalahan dapat dilakukan menggunakan klausa try … except … else, perintah pada keyword else akan dieksekusi ketika perintah pada keyword try tidak menyebabkan kesalahan

coba dieksekusi

karena tidak terjadi kesalahan, maka baris ini dijalankan

(20)

tanpa kesalahan terdapat kesalahan

Exception Handling

konstruksi lain dalam penanganan kesalahan dapat dilakukan menggunakan klausa try … except … else … finally untuk menjalankan perintah tertentu meskipun terjadi kesalahan maupun tidak

coba dieksekusi

pada akhirnya perintah ini dijalankan

coba dieksekusi

(21)

Function

(22)

Function

• suatu blok kode yang dapat digunakan kembali dan sebaiknya hanya memiliki satu kegunaan spesifik

• terdapat beberapa Function bawaan (built-in) yang telah disediakan oleh Python, seperti: input(), print(), dan sebagainya

• tapi developer juga dibebaskan untuk membuat Function-nya sendiri

(23)

Function: Konsep

hal yang perlu diketahui tentang Function:

1. aturan penamaan Function mengikuti aturan penamaan variabel

2. jumlah argumen tidak dibatasi, bisa satu, lebih dari satu, atau bahkan tidak ada sama sekali

konstruksi

(24)

Function: Konsep

contoh: pendefinisian Function 1

2 contoh: eksekusi Function

nama function argumen perintah

konstruksi

nama function

perintah

(25)

Function: Konsep

hal yang perlu diketahui tentang Function:

3. ada dua sifat argumen, yaitu: argumen default dan argumen non-default

4. posisi argumen non-default harus selalu berada sebelum argumen default

contoh

non-default default

(26)

Function: Konsep

hal yang perlu diketahui tentang Function:

5. selain nilai tunggal, Function juga dapat menerima suatu kelompok data

5. tetapi tidak bisa menggunakan jenis argumen seperti yang ada pada contoh sebelumnya

(27)

Function: Konsep

contoh: single asterisk (*) 1

eksekusi 2

positional argument tidak

harus dinamai dengan “args”

argumen biasa hanya dapat menyimpan satu

nilai saja dan akan terjadi kesalahan apabila

nilai yang dimasukkan lebih dari satu

(28)

Function: Konsep

contoh: double asterisk (**) 1

eksekusi 2

keyword argument tidak harus dinamai

dengan “kwargs”

untuk memasukan banyak nilai dapat menggunakan keyword argument seperti contoh

di samping

(29)

Function: Procedure

1

2

contoh: pendefinisian Function

contoh: eksekusi Function

terkadang disebut sebagai procedure

nama function argumen perintah

konstruksi: tanpa return

(30)

Function: built-in Function

merupakan Function yang telah disediakan oleh Python dan dapat diakses kapanpun ketika diperlukan

contoh: nilai terkecil contoh:

pembulatan

contoh: nilai terbesar

(31)

Function: built-in Function

contoh: nilai mutlak contoh: penjumlahan total

contoh: jumlah data contoh: perpangkatan

(32)

Function: built-in Function

contoh: nilai pada rentang tertentu contoh: urutan angka secara ascending

contoh: urutan angka secara descending

(33)

Function: built-in Function

contoh: urutan huruf secara descending

contoh: urutan huruf secara ascending contoh: nomor urut karakter

(34)

Function: built-in Function

contoh: casting dari integer ke float

contoh: casting dari float ke integer

contoh: casting dari integer ke string

contoh: memeriksa tipe data

(35)

Anonymous

Function

(36)

Anonymous Function

• disebut juga sebagai Function lambda dan tidak dideklarasikan seperti Function def, melainkan menggunakan keyword lambda

• sama halnya dengan Function def, jumlah argumen pada Function lambda tidak dibatasi dan meskipun tidak ada return, Function lambda tetap dapat mengembalikan satu nilai

• Function lambda tidak dapat menjalankan Function lainnya, seperti mencetak suatu nilai (print)

(37)

Anonymous Function

1

2

argumen

konstruksi contoh: pendefinisian Function

contoh: eksekusi Function

nama function

perintah nama function nama function

(38)

Object-Oriented

Programming

(39)

Object Oriented Programming: Konsep

• dikenal juga sebagai Pemrogaman Berbasis Objek (PBO) merupakan metode untuk membuat suatu blok kode yang dapat terdiri dari beberapa Atribut dan Function, tujuannya agar kode yang dibuat menjadi reusable dan tidak redundant (berlebihan karena dibuat berulang-ulang)

• dalam penerapannya perlu definisikan suatu objek terlebih dahulu agar blok kode yang telah dibuat dapat dijalankan

(40)

Object Oriented Programming: Jenis Atribut

konstruksi

atribut atau properti merupakan entitas/variabel yang dimiliki oleh

suatu class

class attribute

bernilai sama untuk setiap objek, apabila terdapat nilai atribut yang diganti maka

nilai pada semua objek akan berubah

contoh

pendefinisian Class 1

pendefinisian objek 2

(41)

Object Oriented Programming: Jenis Atribut

konstruksi

atribut atau properti merupakan ciri yang dimiliki oleh suatu objek

instance attribute

nilanya berbeda untuk setiap objek,

tidak berpengaruh pada atribut lain apabila terdapat satu

nilai atribut yang diganti

contoh

pendefinisian Class 1

pendefinisian objek 2

(42)

Object Oriented Programming: Jenis Function

pendefinisian Class

dinamakan Function Constructor

digunakan untuk mendefinisikan instance atribut, nilai pada setiap

atribut bersifat dinamis sehingga dapat berbeda-beda pada setiap

objek

(43)

pendefinisian Class

Object Oriented Programming: Jenis Function

dinamakan Function Behavioral

Function Behavioral pada dasarnya adalah Function biasa, dinamakan

seperti itu karena dalam penamaannya tidak memerlukan

double underscore (dunder) dan setiap Function yang dibuat memiliki

perilaku/kegunaan tersendiri

(44)

Object Oriented Programming: Encapsulation

merupakan metode yang digunakan untuk menyembunyikan atribut maupun Function, sehingga atribut dan Function tersebut tidak dapat diakses secara bebas di luar Class

contoh: pendefinisian Class 1

contoh: eksekusi Class 2

ciri khas encapsulation adalah adanya double underscore

sebagai prefix penamaan atribut

output dari print() pertama

output dari print() kedua

(45)

Object Oriented Programming: Polymorphism

merupakan metode yang digunakan untuk mewariskan atribut maupun Function dari Class utama (parent) kepada Class baru (child). Setiap atribut maupun Function dari parent Class akan tersimpan di dalam child Class

contoh: pendefinisian Class child 2

contoh: pendefinisian Class parent 1

ciri inheritance yaitu adanya pendefinisian

nama_child_class(nama_parent_class)

contoh: eksekusi Class child 3

(46)

Object Oriented Programming: Polymorphism

merupakan metode yang digunakan untuk mengubah nilai atribut maupun Function tertentu dari parent Class ketika diwariskan kepada child Class.

contoh: pendefinisian Class parent 1

pengaplikasian polymorphism

contoh: eksekusi Class child 3

contoh: pendefinisian Class child 2

(47)

eksekusi Class 2

Object Oriented Programming: Function vs Method

Function yang dieksekusi dari suatu Class pendefinisian Class

1

nama Class method

pendefinisian Function 1

eksekusi Function 2

Function yang dieksekusi secara langsung

(48)

Object Oriented Programming: Magic Method

Magic Method atau double underscore (dunder) Method merupakan jenis-jenis Method bawaan (built-in) yang memiliki fungsionalitasnya masing-masing

contoh: pendefinisian instance attribute contoh: mencetak suatu nilai

eksekusi 1

2

(49)

Object Oriented Programming: Magic Method

eksekusi

contoh: multiplication / perkalian 1

2

contoh: addition / penjumlahan 1

eksekusi 2

(50)

https://linktr.ee/pythonkodehive

Exercise

Referensi

Dokumen terkait

dan siswa dalam kegiatan di luar sekolah yang terkait dengan implementasi pendidikan karakter di sekolah (misal, seminar, workshop, pembinaan, dsb yang dilakukan oleh

Formulir Data Nasabah Bank Jatim, data sekunder, 2013.. mengenai persetujuan penggunaan data pribadi nasabah yang telah dicantumkan dalam formulir data nasabah tersebut.

materi pencemaran lingkungan. Telaah kurikulum melalui mengenai pokok bahasan yang dijadikan materi pembelajaran dalam penelitian. Pemilihan model pembelajaran yang

Nilai nilai filosofis kebudayaan artinya adalah sebuah kualitas landasan yang menjadi pijakan sitem berfikir dalam menjalani kehidupan yang terungkapkan kedalam bentuk

Implementasi Pendidikan Tri Kaya Parisudha dalam meningkatkan nilai etika siswa di Sekolah Dasar Negeri Purwosari Kecamatan Torue Kabupaten Parigi Moutong dilatar

Dalam beberapa artikel dan diskusi-diskusi yang dilakukan di berbagai media dan komunitas, sebagian pemerintah desa masih belum menggunakan anggaran tersebut lantaran

Menurut Hellier, et al, (2003) dalam Setyaningsih (2008) niat beli ulang merupakan keputusan konsumen untuk melakukan pembelian kembali suatu produk atau

Penghubung sistem merupakan media penghubung yang memungkinkan sumber-sumber daya mengalir dari satu subsistem ke subsistem yang lainnya Keluaran (output) dari satu