Catatan Workshop Python Basic OOP – Bersama Lakpesdam NU Belanda

Workshop Python Basic OOP

Assalamu’alaikum, salam sejahtera. Sudah begitu lama rasanya tidak menulis untuk web pribadi ini 😅 Kita coba buka kembali dan isi dengan beberapa hal positif.

Dalam postingan kali ini, saya ingin mencatat beberapa point dalam workshop Python Basic yang diselenggarakan oleh Lakpesdam NU belanda dengan narasumber Mas Trismono. Postingan ini akan di update secara berkala setiap selesai pelatihan (insyaallah).

Catatan ini bertujuan sebagai catatan pribadi, namun semoga bisa bermanfaat bagi yang membacanya.

CATATAN PERTEMUAN #1 – 13 Agustus 2022

Selain Python, pelajari juga C++. Karena, C++ merupakan low level programming language yang menjadi cikal bakal python.

Di tempat kerja saya di space agency, yang paling banyak juga menggunakan C++ dan Fortran.

Pelatihan ini menggunakan Anaconda Navigator yang bisa di download DISINI.

Setelah menginstall Anaconda, buka Conda Promt, bisa dengan CMD Promt ataupun dengan Powershell Promt seperti tampilan di bawah ini:

Tampilan Awal Anaconda Navigator

Setelah itu, buat Environment baru untuk menyimpan semua yang diperlukan pada project workshop kedepannya. Cara membuat environment adalah dengan perintah:

conda create –name <nama-project> python=<python version>

dimana <nama-project> diisi dengan nama terserah anda, dan <python version> diisi dengan versi python sesuai dengan paket install dalam komputer masing-masing (default = 3.9)

Tujuan dari Virtual Environment (VE) di Anaconda adalah untuk membuat rumah sendiri per project, agar lebih independen dan tertata pada setiap project. Jadi, ketika menghapus / mengupdate suatu librari dalam suatu VE tidak akan mempengaruhi project yang lainnya. Bahkan ketika hapus project / teinstall, maka project lainnya tidak terpengaruh sama sekali. Berbeda ketika kita menggunakan default / base environment, maka bisa mengacaukan project-project lainnya.

Setelah itu, aktifkan VE yang barusan dibuat dengan perintah:

conda activate <nama-project>

Install Library yang dibutuhkan:

  • Scipy:
    conda install -c anaconda scipy
  • Numpy:
    conda install -c anaconda numpy
  • Matplotlib:
    conda install -c conda-forge matplotlib
  • Pandas:
    conda install -c anaconda pandas

Jika ada konflik ketika import scipy, maka coba uninstall library numpy dan scipy nya. Install lagi, namun DAHULUKAN install “Scipy” baru install “Numpy” nya.

Baca Juga  Deepin OS in Review Distro Linux Yang "Memanjakan" Pengguna

Setelah selesai semua kegiatan pada environment tersebut, maka tutup dengan perintah berikut ini:

conda deactivate

Demikian, pelatihan pertama telah selesai. Insyaallah akan dilanjut pada pertemuan selanjutnya.

CATATAN PERTEMUAN #2 – 20 Agustus 2022

Perbedaan antara Python, Fortran dan C++ diantaranya:

PythonFortran dan C++
Mudah dipelajariRelatif lebih susah dipelajari
Kode lebih simpelKode lebih rumit
Tersedia banyak library dan gratisBelum terlalu banyak library, bahkan perlu buat sendiri
Proses compile dilakukan setiap running (lebih lambat pada proyek yang besar)Proses compile hanya di awal, sehingga cenderung lebih cepat walau data yang diolah besar.

Saat ini, langsung belajar Python 3 (yang terbaru). karena python 2.x sudah cenderung ditinggalkan dan tidak disuport.

Python sangat sensitif dengan indensasi (penggunaan tab / spasi) yang harus terorganisasi dengan baik dan benar, karena jika ada tab yang tidak sesuai maka bisa langsung error. Berbeda dengan bahasa pemrograman lainnya yang bergantung pada bracket {} seperti Java.

Penulisan komentar relatif penting, agar menjadi catatan fungsi dari penulisan baris program / function itu untuk apa sehingga bisa dibaca dan dipahami walau sudah berlalu cukup lama, dan agar dapat memudahkan orang lain dalam membaca dan mengembangkan program yang kita buat.

Jika penulisan statement terlalu panjang, maka bisa menggunakan backslash (\) untuk menuliskan statement di line berikutnya. Contohnya:

Contoh Penggunaan Backslash dalam Statement IF pada Pemrograman Python
Contoh Penggunaan Backslash dalam Statement IF pada Pemrograman Python

Dalam menggunakan identifier / keyword, maka jangan menggunakan nama-nama yang sudah digunakan default oleh python-nya. Biasanyanya sudah ditandai dengan warna yang berbeda (jika keyword itu tidak boleh digunakan. Contoh nama-nama / keyword yang tidak boleh digunakan sebagai identifier:

Contoh nama-nama / keyword yang tidak boleh digunakan sebagai identifier
Contoh nama-nama / keyword yang tidak boleh digunakan sebagai identifier

Daftar Keyword ini berubah-ubah sesuai kebutuhan, tergantung dari versi python yang digunakan. Untuk mengeceknya, bisa dengan menggunakan perintah berikut ini:

import keyword
print(keyword.kwlist)

Output:

['False', 'None', 'True', 'peg_parser', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

Kelemahan OOP biasanya memakan memory yang lebih besar dari pada program fungsional biasa. Kelebihannya bisa lebih terstruktur.

Dalam pengalaman yang saya jalani, dalam dunia kerja space agency, yang mengolah data citra satelit misal 25.000 pixel, dan 1 pixelnya membutuhkan maksimal 1 detik eksekusi, maka lebih mudah dan efisien menggunakan program fungsional biasa. Namun, jika tidak ada requirenment processing time / memory, maka OOP bisa lebih diandalkan.

Mas Trismono

Dalam memasukan value dari variabel yang sudah didefinisikan sebelumnya, maka bisa menggunakan tambahan f sebelum quote string, lalu masukan nama variabelnya didalam bracket {}. Misalnya:

name = 'John'
message = f'Hi {name}'
print(message)

Output:

Hi John

Index dalam python, dimulai dari angka 0. Berbeda dengan matlab yang dimulai dari 1.
Index Python juga bisa dimulai dengan index – (minus), dimana akan menghitung dari belakang. Contoh:

Contoh Indexing pada Python
Contoh Indexing pada Python

Di Python terkadang muncul hasil yang aneh ketika menjalankan pembagian float namun tidak banyak. Misalnya 0.1 + 0.2 = 0.30000000000000004. Mengapa ada banyak 0 dibelakang komaa..?? Padahal harusnya cukup 0.3. Berbeda jika perhitungan 0.1 + 0.3 = 0.4, yang ini benar. Kejadian aneh ini memang unik. Alasan Selengkapnya DISINI. Hal ini bisa diatasi dengan pembatasan pengambilan berapa angka di belakang koma, misal float hanya diambil 3 angka di belakang koma, sehingga 0.1 + 0.2 = 0.300.

Kita itu di kantor tidak diperbolehkan menggunakan Zoom Meeting. Pun juga di industri Space Agency lainnya tidak diperbolehkan menggunakan Zoom Meeting. Kamui diperbolehkan menggunakan Webex sebagai media meeting, karena dianggap lebih aman. Karena industri teknologi Space Agency ini sangat sensitif konten-kontennya.

Mas Trismono

Kalau saya dulu belajarnya coba googling “How to predict inflation in Python”, atau keyword serupa dan langsung dipraktekan

Mas Trismono

CATATAN PERTEMUAN #3 – 27 Agustus 2022

Hal yang paling utama untuk dipahami dalam dunia programming adalah pemahaman terkait logika.

Mas Trismono

IF STATEMENT

Baca Juga  Perbandingan Performa VPS Digital Ocean vs Linode vs Upcloud

Operasi IF Statement / IF-ELSE Condition sangat sering digunakan dalam pembuatan aplikasi dan analisa Machine Learning. IF berguna untuk menjadi percabangan dari suatu keadaan, yang mana memiliki dua nilai yang berlawanan apakah itu TRUE (benar) atau FALSE (salah). Jika tidak TRUE maka nilainya ELSE.

Bentuk dasar dari IF Statement ini adalah sebagai berikut:

if condition:
    if-block

Sedangkan IF yang memiliki ELSE, bentuk dasarnya adalah sebagai berikut:

if condition:
    if-block
else:
    else-block

Lebih lanjut, IF Statement juga memiliki mekanisme nested-loop, yang mana di dalam IF Statement (if-block) diberikan IF Statement lagi, di dalamnya lagi diisi IF Statement lagi, dan seterusnya. Lebih jelas, bisa lihat DISINI.

Contoh penulisan IF Statement pada Bahasa Python:

age = input('Enter your age:')
if int(age) >= 18:
    print("You're eligible to vote.")
else:
    print("You're not eligible to vote.")

Jika age bernilai 18,19,20,dst maka bernilai TRUE karena menggunakan operator >= yang menandakan nilai yang sama dan nilai yang lebih dari maka dianggap benar / TRUE sehingga mengeluarkan hasil You’re eligible to vote.. Selengkapnya terkait operator, bisa dilihat DISINI. Jika age bernilai 17,16,15,dst maka bernilai FALSE dan mengeluarkan hasil You’re not eligible to vote.

Ternary Operator adalah metode penulisan IF Statement dengan lebih simpel dan hemat baris kode, walau terkadang relatif lebih susah bagi pemula. Misal penulisan IF yang normal biasanya seperti ini:

if int(age) >= 18:
    ticket_price = 20
else:
    ticket_price = 5

Untuk membuatnya lebih ringkas, dapat menggunakan sintaks alternatif seperti ini:

ticket_price = 20 if int(age) >= 18 else 5

LOOP STATEMENT

Untuk melakukan sebuah perulangan (Looping) bisa menggunakan for dan while.

FOR itu biasanya untuk enghitung sesuatu untuk yang dimensinya sudah jelas, karena menggunakan forward model. Misal memiliki data pengukuran yang berjumlah 100 set, dan dari 1 setnya mau menghitung standar deviasinya, maka menggunakan FOR. Namun, jika mau menghitung sesuatu yang belum ditentukan secara pasti berapa jumlahnya, maka pakai WHILE. Misal ketika mencari model yang errornya dibawah 0.2, maka gunakan WHILE karena kita belum tau akan berapa kali looping.

Mas Trismono

Contoh dasar dari Forloop pada python adalah sebagai berikut:

for index in range(5):
    print(index)

Sedangkan Whileloop adalah sebagai berikut:

max = 5
counter = 0

while counter < max:
    print(counter)
    counter += 1

Kedua model looping diatas mengeluarkan hasil yang sama, yaitu: 0 1 2 3 4 (menurun, sesuai default print di python)

Baca Juga  Deepin OS in Review Distro Linux Yang "Memanjakan" Pengguna

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *