<jupyter_start><jupyter_text>Python Basic Pertemuan 3oleh: Muon Edukasi (www.muonedu.com)**Link Materi**https://github.com/muonedu/python-basic**Mentor**:- <NAME>- <NAME>**Overview**:- Modular programming- Pip- Membaca dan menulis berkas- Error handling- Iterable, iterator dan generator- Mutable dan immutable- Fungsi lambda**Waktu**: 120 menit Modular programming---Modular programming artinya memisahkan kode menjadi beberapa bagian, tujuannya agar memudahkan dalam memantain kode tersebut. Pemanggilan struktur kode yang dipisah dilakukan dengan menggunakan perintah `import`. `sum.py````def sum_list(x):   sum = 0   for i in x:      sum += i   return sum````main.py````from sum import sum_listx = list(range(10))print(sum_list(x))```Python memiliki standar library, antara lain:- `math` operasi matematika- `random` operasi pengacakan- `hashlib` operasi kriptografi- `string` operasi string/teks- ...  Pengenalan pip---Pip adalah paket manager untuk manajemen pustaka/library external pada Python. Pip digunakan untuk menginstall pustaka/library yang tidak ada pada Python standard libary.  Membaca dan menulis berkas---berkenalan dengan `open` dan atribute pengaksesan berkas seperti:- `w` write- `wb` write binary- `a` append- `r` read<jupyter_code>f = open('a.txt', 'a+')
f.write('hello world\n')
f.close()
f = open('a.txt', 'r')
data = f.readlines()
print(len(data))<jupyter_output>9<jupyter_text>Error handling---berkenalan dengan `try` dan `except`<jupyter_code>x = [0, 1]

try:
    c = x[3]
    print(c)
except Exception as err:
    print(err)<jupyter_output>list index out of range<jupyter_text>Iterable, iterator dan generator---<jupyter_code>def gen(n):
    for i in range(n):
        yield i

n = gen(10)

for i in n:
    print(i)<jupyter_output>0
1
2
3
4
5
6
7
8
9<jupyter_text>Mutable dan immutable---Konsep mutable berhubungan dengan apakah suatu data bisa diupdate isinya atau tidak. Mutable artinya data bisa diupdate isinya, sebaliknya immutable merupakan sifat dari data yang isinya tidak dapat diupdate kembali setelah dibuat. Fungsi lambda---Lambda merupakan keyword untuk membuat inline function. sintaks:```nama_fungsi = lambda parameter1, parameter_2: operasi param1 dan param 2```fungsi di atas dipanggil dengan cara berikut:```nilai = nama_fungsi(param1, param2)```<jupyter_code>x = lambda n: n+2
print(x(2))<jupyter_output>4
{'fraction_non_alphanumeric': 0.11337579617834395, 'fraction_numerical': 0.013588110403397028, 'mean_word_length': 5.26595744680851, 'pattern_counts': {'":': 0, '<': 15, '<?xml version=': 0, '>': 15, 'https://': 1, 'lorem ipsum': 0, 'www.': 1, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '4', 'dir': 'jupyter-structured-clean-dedup', 'id': '578117', 'license': 'MIT', 'n_tokens_mistral': 908, 'n_tokens_neox': 860, 'n_words': 251, 'path': 'pertemuan-3.ipynb', 'repo_name': 'muonedu/python-basic', 'size': '2367'}