Modul Dasar-Dasar Pemrograman
Modul Dasar-Dasar Pemrograman
(MA1106)
Rifky Fauzi
19 Nopember 2022
KATA PENGANTAR
1 pendahuluan 1
1.1 Pengertian Pemrograman dan Bahasa Pemrograman 1
1.2 Bahasa Pemrograman Python 1
1.2.1 Beberapa Kelebihan 1
1.2.2 Penggunaan Python 2
1.2.3 Perbedaan dengan bahasa pemrograman lain 2
1.3 Instalasi Python 3
1.4 Interaksi dengan Python 6
1.4.1 IDLE: Python Shell 6
1.4.2 IDLE: Text Editor 7
1.4.3 Spyder 8
1.4.4 Jupyter Notebook 9
1.4.5 Google Colaboratory 10
1.5 Beberapa perintah dasar 12
1.5.1 Komentar 12
1.5.2 Operasi Aritmatika 13
1.5.3 Operasi Perbandingan 13
1.5.4 String 14
1.5.5 Variabel 14
2 tipe-tipe data 17
2.1 Tipe Numerik 17
2.2 Komputer Dalam Merepresentasikan Bilangan 18
2.2.1 Int 18
2.2.2 Floating Point 19
2.3 String str 20
2.3.1 Operasi-operasi yang berlaku 20
2.3.2 String slicing 21
2.4 Boolean 22
2.4.1 Operator Boolean 23
2.4.2 Boolean dan int 23
3 struktur pemrograman 25
3.1 Struktur Sekuensial (Urutan) 25
3.1.1 Penukaran Data (Swapping) 26
3.2 Flowchart dan Pseudocode 26
3.2.1 Flowchart 27
3.2.2 Pseudocode 28
3.3 Struktur Pencabangan 28
3.3.1 if 28
3.3.2 if-else 29
3.3.3 if-elif-else 30
3.4 Error Handling 31
4 pengulangan 35
4.1 While 35
4.2 For 39
4.3 Penghentian Pengulangan 40
4.3.1 Break 40
4.3.2 Continue 41
4.4 Pengulangan Bersarang 42
5 tipe-tipe container 45
5.1 List 45
5.1.1 range() 46
5.1.2 list() 47
5.1.3 Manipulasi Anggota List 47
5.1.4 Penggunaan list dalam loop 48
5.1.5 Pengisian list dengan menggunakan loop 49
5.2 Tuple 49
5.3 Dictionary 51
5.4 Numpy Array 51
6 subprogram 55
6.1 Fungsi yang Didefinisikan 56
6.1.1 Fungsi tanpa argumen 56
6.1.2 Fungsi dengan argumen 56
6.1.3 Fungsi yang mengembalikan nilai 57
6.1.4 Fungsi yang mengembalikan nilai lebih dari satu 57
6.1.5 Fungsi dengan argument baku 58
6.2 Fungsi lambda 58
6.2.1 Penggunaan Fungsi Lambda dengan map() 59
6.2.2 Fungsi Lambda dengan Banyak Argumen 59
6.3 Rekursi 59
7 modul 61
7.1 Math 61
7.2 Numpy 61
7.2.1 Numpy array 61
7.2.2 s 63
Appendix Chapter 65
.1 A Section 65
1
PENDAHULUAN
Program adalah suatu file atau software yang dibuat oleh seorang pro-
grammer, dibuat untuk mengoperasikan sebuah komputer menjadi lebih
berguna.
1. Bahasa beraras tinggi (high level language): Java, C++, C#, Python
4. penuh dengan library yang tersedia secara gratis, khususnya yang il-
miah (aljabar linier, alat visualisasi, plotting, analisis gambar, penyele-
saian persamaan diferensial, perhitungan simbolik, statistik, dll.)
9. kemudian ketik cmd lalu tekan enter. Pada antar muka cmd ketikkan
python
10. Apabila Python terinstal dengan baik maka akan muncul baris >>>
pada cmd
Untuk melihat program apa saja yang tersedia jalankan program Anaconda
Navigator. Berikut adalah antarmuka dari Anaconda Navigator
IDLE
Python dalam interactive mode biasa disebut sebagai Python shell. Berikut
adalah tampilan antarmukanya
Text editor bawaan Python dapat dibuka dari IDLE dengan langkah File
→ New File.
Dalam text editor, perintah-perintah yang ditulis perlu disimpan terlebih
dahulu yang disimpan ke dalam ekstensi .py. Program ini dapat dijalankan
dengan langkah Run → Run Module.
Sebagai contoh, mari kita coba tuliskan beberapa perintah lalu menyim-
pannya sebagai coba_python.py kemudian menjalankan program tersebut
Dapat dilihat bahwa program hanya menampilkan Halo Dunia dan hasil
operasi x2 . Sementara operasi penjumlahan 2 + 2, 3 / 2 dan 3 - 10 tetap
diproses namun tidak ditampilkan, begitu pula komentar.
1.4.3 Spyder
Bagian kiri Spyder merupakan teks editor yang berguna untuk menulis
perintah-perintah dalam bahasa pemrograman Python. Pada bagian kan-
an nampak ada Object dan Console. Bagian Object biasanya menampilkan
grafik, variabel, ataupun file-file data yang digunakan/dihasilkan oleh pro-
gram. Sedangkan bagian kiri bawah merupakan Python shell. Python shell
ini mirip dengan shell interaktif IDLE, demikian juga penggunaannya.
https://colab.research.google.com
1.5.1 Komentar
Dapat dilihat bahwa hanya baris program yang kedua yang dijalankan. Ba-
ris program pertama tidak menampilkan apapun. Penggunaan tanda pagar
hanya untuk kalimat yang ditulis dalam satu baris.
1.5.2 Operasi Aritmatika
Operator Aritmatika
Operator ini disajikan dalam tabel-tabel berikut
>>> 2 + 2 + 3 #pejumlahan
7
>>> 2*2 #perkalian
4
>>> 1/5 #pembagian
0.2
>>> 10%3#sisa pembagian
1
>>> 2**2 #pangkat
4
>>> 10//3 #pembagian dengan pembulatan
3
1. P : Parentheses ( ),
2. E : Exponents ab ,
Sebagai ilustrasi
1.5.4 String
1.5.5 Variabel
>>> satu-hati = 2
File "<stdin>", line 1
SyntaxError: cannot assign to operator
5. case sensitive,
>>> satu_hati = 2
>>> print(Satu_hati)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'Satu_hati' is not defined
latihan
>>> x = 2
>>> type(x)
<class 'int'>
>>> y = 2.0
>>> type(y)
<class 'float'>
>>> z = 1 + 1j
>>> type(z)
<class 'complex'>
Sebelum melangkah lebih lanjut, mari perhatikan perintah-perintah ber-
ikut
>>> x = 0.4
>>> y = 0.1
>>> x - y
0.30000000000000004
Operasi 0.4 − 0.1 harusnya secara mudah menghasilkan 0.3. Namun, kom-
puter memberikan hasil yang berbeda. Hal ini disebabkan karena keterba-
tasan komputer yang sebelumnya telah disebutkan.
Digit kedua dari kanan mewakili kelipatan 10 (puluhan). Digit ketiga dari
kanan mewakili kelipatan 100 (ratusan) dan seterusnya. Representasi se-
perti ini biasa disebut sistem bilangan berbasis posisi (positional numbering
system).
Terdapat representasi bilangan lain yakni representasi bilangan biner
atau bilangan berbasis 2. Dengan kata lain, sistem bilangan ini akan meng-
gunakan angka 0 dan 1. Komputer merepresentasikan bilangan menggu-
nakan sistem bilangan ini. Angka 0 merepresentasikan off, dan. angka 1
merepresentasikan in. Sebagai contoh, bilangan 11 dapat disajikan sebagai
11 = (1 × 21 ) + (1 × 20 ) = 2 + 1 = 3 (2)
2.2.1 Int
= −3
Contoh lain,
h i
00000010 → +1 × (0 × 27 ) + (0 × 26 ) + (0 × 25 ) + · · · + (1 × 21 ) + (1 × 20 )
= +2
R = (±1) × m × be (4)
1 01110 0000011001
Tanda besaran eksponen bagian mantisa
0 1 11 101
Tanda tanda eksponen besaran eksponen bagian mantisa
Dengan kata lain, eksponennya adalah −3. Terakhir, mantisanya adalah 101
berarti
1 × 2−1 + 0 × 2−2 + 1 × 2−3 = 0.5 + 0.125 = 0.625
sehingga
>>> type('2')
<class 'str'>
>>> '2' + 2
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: can only concatenate str (not "int") to str
Pada bagian ini akan dibahas lebih lanjut mengenai tipe data ini.
>>> x = 'halo'
>>> print(x)
halo
2. Penjumlahan str
Operasi penjumlahan string hanya berlaku dengan tipe data string
saja. Operasi penjumlahan dengan tipe data lain akan menghasilkan
eror.
>>> x = 'halo'
>>> y = 'semua'
>>> x + y
'halosemua'
>>> x = 'halo'
>>> x * 3
'halohalohalo'
Karakter dari indeks tertentu dari string dapat diakses dengan bantuan
kurung siku string[index]. Indeks merupakan sebagai urutan yang dimulai
dari 0 dari sisi kiri dan indeks negatif dimulai dari -1 dari sisi kanan.
String h a l o
Indeks positif 0 1 2 3
Indeks negatif -4 -3 -2 -1
2.4 boolean
Tipe data Booelan merupakan tipe data yang hanya memiliki satu da-
ri dua kemungkinan nilai yakni True atau False. Boolean diambil dari
nama matematikawan George Boole, yang pertama kali mendefinisikan sis-
tem aljabar logika atau yang biasa dikenal sebagai aljabar Boole. Pada mo-
dul sebelumnya contoh tipe data ini telah dibahas pada bagian hasil operasi
perbandingan. Lebih lanjut, mari simak contoh berikut
>>> x = True
>>> y = 1 > 4
>>> print(x)
True
>>> print(y)
False
Perhatikan baris kedua perintah terakhir di atas, dapat dilihat bahwa karena
1.5 ∈
/ [3, 4] (1.5 bukan anggota [3, 4]) maka program memberikan keluaran
False. Meski begitu perhatikan bahwa pada dua baris terakhir programnya
memberikan hasil benar karena untuk operator Boole, jika salah satunya
benar maka pernyataan tersebut benar.
Tipe data Boolean juga dapat diekspresikan dalam bilangan bulat yakni
1 untuk True dan 0 untuk False. Untuk lebih jelasnya, perhatikan contoh
berikut
>>> x = 1
>>> type(x)
<class 'int'>
>>> y = True
>>> type(y)
<class 'bool'>
>>> y + 1
2
>>> x + y
2
>>> y + y
2
>>> y*10
10
>>> type(y)
<class 'bool'>
Meski tipe variabel x dan y berbeda tetapi jika dilakukan operasi perban-
dingan maka akan menghasilkan keluaran bernilai benar atau True. Nam-
pak terlihat bahwa jika variabel Boolean dioperasikan dengan operasi ari-
tmatika, maka akan dianggap sebagai bilangan asli 1.
latihan
(a) (0111110)2
(b) (0111111)2
(c) (1111111)2
1. Tahap 1: Mulai
7. Tahap 7: Selesai
2. Tiap instruksi dilaksanakan tepat sekali, tidak ada instruksi yang diu-
lang
Proses pertukaran data antara 2 buah variabel bertipe data sama dapat
dilakukan dengan menggunakan sebuah variabel bantu yang tentunya tipe
datanya juga harus sama dengan kedua variabel yang datanya akan diper-
tukarkan.
Dengan menggunakan sebuah variabel bantu, maka proses pertukaran
data dilakukan dengan cara yang sederhana.
Contoh:
Terdapat dua buah gelas, gelas A dan gelas B. Gelas A berisi air berwarna
biru. Gelas B berisi air berwarna merah. Bagaimana cara menukarkan isi
kedua gelas tersebut, sehingga gelas A berisi warna merah dan gelas B ber-
isi warna biru?
4. Tahap 4: Selesai
Algoritma di atas tidak menghasilkan pertukaran yang benar, tahap-
tahapnya tidak logis, karena yang terjadi bukan pertukaran tetapi percam-
puran antara air di gelas A dengan air di gelas B. Sehingga algoritma di atas
salah.
2. Flowchart
3. Pseudocode
Notasi yang umum digunakan adalah Flowchart dan Pseudocode Menulis
algoritma dengan Flowchart dan Pseudocode biasanya dilakukan oleh pro-
grammer pemula (tahap belajar). Programmer yang mahir umumnya lang-
sung menuangkan algoritma dengan bahasa pemrograman tertentu. Na-
mun programmer mahir terkadang menggunakan Flowchart dan Pseudo-
code untuk dokumentasi. Digunakan untuk komunikasi dengan tim jika
dilakukan Bersama.
3.2.1 Flowchart
1. Tahap 1: Mulai
6. Tahap 6: Selesai
1. Input
4. Output (print)
Simbol flowchart
3.3.1 if
if kondisi:
blok program
Contoh: Memeriksa apakah input bilangan lebih kecil dari angka 5. Berikut
adalah algoritmanya dalam sebuah diagram alir
Mulai
Deklarasi n
Masukkan n
Salah
n<=5
Benar
n lebih kecil atau
sama dengan 5
Selesai
3.3.2 if-else
if kondisi:
blok program 1
else:
blok program 2
Contoh: Memeriksa apakah input bilangan lebih kecil dari angka 5, lalu
memberikan respon jika tidak memenuhi. Berikut adalah algoritmanya da-
lam sebuah diagram alir
Mulai
Deklarasi n
Masukkan n
Salah
n<=5
n lebih
Benar besar dari 5
n lebihkecil atau
sama dengan 5
Selesai
3.3.3 if-elif-else
Perintah if-else digunakan untuk memeriksa dua buah kondisi atau le-
bih. Jika kondisi-1 benar, maka kerjakan perintah di bahwa perintah kondisi-
1. Jika kondisi-1 bernilai salah, maka periksa kondisi-2. Jika kondisi-2 benar,
maka kerjakan perintah di bahwa perintah kondiisi-2. Jika kondisi-2 berni-
lai salah, maka periksa kondisi-3. Jika kondisi-3 benar, maka kerjakan perin-
tah di bahwa perintah kondiisi-3. Jika kondisi bernilai salah, maka periksa
kondisi selanjutnya hingga kondisi ke-n. Jika semua kondisi bernilai salah,
maka kerjakan perintah dibawah else.
if kondisi 1:
blok program 1
elif kondisi 2:
blok program 2
else:
blok program 3
Salah
Benar
Kondisi 2 Perintah 2
Salah
Perintah 3
try:
blok program 1
except:
blok program 3
latihan
8. Jika usia mahasiswa lebih besar atau sama dengan 17 maka orang
tersebut boleh masuk ruangan dosen. Jika tidak, selesai.
9. Jika usia mahasiswa lebih besar atau sama dengan 17 maka orang
tersebut boleh masuk ruangan dosen, selain itu dilarang masuk.
dengan s = 12 ( a + b + c).
14. Buatlah flowchart dan program untuk menghitung luas dan keliling
bangun datar, dengan ketentuan:
15. Buatlah flowchart dan program untuk konversi suhu dengan ketentu-
an:
4.1 while
1. Mulai
4. while i <=5
5. Selesai
Diagram alir untuk menampilkan angkar 1 sampai 5 ini adalah sebagai ber-
ikut
Berikut adalah contoh program dalam bahasa Python
>>> i = 1
>>> while i <=5:
... print(i)
... i = i + 1
...
1
2
3
4
5
4! = 4 × 3 × 2 × 1 = 24
1. Tahap 1: Mulai
>>> fak = 1
>>> i = 1
>>> while i < 5:
... fak = fak * i
... i = i + 1
...
>>> print(fak)
24
Contoh perintah di atas akan mencetak karakter a tanpa henti karena krite-
rianya selalu benar yaitu True.
4.2 for
Dalam program terakhir di atas, variabel email dicetak berurutan dari awal
hingga yakni karakter n hingga karakter terakhir yakni karakter m.
4.3.1 Break
Pada program terakhir di atas, angka 7 tidak dicetak karena program di-
hentikan saat i==5. Meskipun program menyediakan loop hingga 10 kali
pengulangan, lihat range(10).
Pada program terakhir di atas, harusnya akan berjalan tanpa henti karena
kondisi bernilai selalu benar. Program dihentikan karena saat i==5.
4.3.2 Continue
Dapat dilihat bahwa angka 3 tidak dicetak karena perintah Continue mele-
wati (skip) perintah print(i) saat i==3. Continue juga dapat diterapkan
pada pengulangan while, berikut adalah contohnya.
>>> i = 0
>>> while i < 7:
... i = i + 1
... if i == 3:
... continue
... print(i)
...
1
2
4
5
6
7
Dari struktur program terakhir di atas, for untuk variabel1 memuat perintah
berupa pengulangan for untuk variabel2, dan demikian juga dengan for
untuk variabel2 yang memuat program pengulangan for untuk variabel3.
Program ini tentu akan sangat berbeda hasilnya apabila for untuk variabel2
dan for untuk variabel3 berada pada satu indentation yang sama dengan for
untuk variabel1. Untuk lebih jelasnya, mari perhatikan diagram alir berikut
Loop
Nested
Loop
H = {(i, j) | 1 ≤ i ≤ 3, 1 ≤ j ≤ 4}
5. Tahap 5: cetak(i,j)
8. Tahap 8: Selesai
Diagram alir untuk algoritma ini adalah sebagai berikut
Implementasi dalam bahasa Python adalah sebagai berikut
latihan
*
* *
* * *
* * * *
5.1 list
List merupakan tipe data berupa koleksi objek-objek yang terurut (sequence).
List dapat berisikan berbagai tipe data. Sintaksis untuk membuat sebuah list
adalah dengan menggunakan kurung siku ‘[ ... ]‘ dan jika anggotanya le-
bih dari satu masing-masing anggotanya dipisahkan oleh koma ‘,’. Berikut
adalah contoh list
>>> listAngka = [12,-2,0,100, 1,1, -3,-5]
>>> print(type(listAngka))
<class 'list'>
>>> print(listAngka)
[12, -2, 0, 100, 1, 1, -3, -5]
Karena list merupakan koleksi yang terurut, anggotanya dapat diakses/ di-
panggil dengan menggunakan indeks. Misalnya dari listAngka ingin diak-
ses anggota ke dua yakni -2, caranya adalah dengan menuliskan listAng-
ka[1]. Sistem indeks Python dimulai dari angka nol.
>>> listAngka[1]
-2
>>> print(listAngka[1])
-2
Selain mengakses posisi tertentu, list Python juga bisa diakses untuk indeks-
indeks tertentu. Berikut adalah contohnya
>>> #mengambil anggota dari indeks pertama hingga kelima
>>> listAngka[:5]
[12, -2, 0, 100, 1]
>>> #mengambil anggota dari indeks ketiga hingga kelima
>>> listAngka[3:5]
[100, 1]
>>> #mengambil anggota dari indeks kelipatan dua
>>> listAngka[::2]
[12, 0, 1, -3]
Tidak hanya numerik saja atau satu buah tipe data saja, list dapat berisikan
tipe data yang berbeda-beda
>>> listBedaTipe = [12,1j,'hai',True,]
>>> print(type(listBedaTipe))
<class 'list'>
>>> print(listBedaTipe)
[12, 1j, 'hai', True]
List biasa dikenal sebagai mutable object yakni objek, dalam hal ini elemen-
elemen di dalamnya, yang dapat diganti. Sebagai contoh dari list listBeda-
Tipe akan diganti elemen kedua dengan sebuah list lain yakni [1,2,3]
Karena dapat berisi tipe data lain, list juga dapat berisi list lain (list
bersarang). Dalam hal ini, cara ini biasanya digunakan untuk membuat
sebuah matriks. Misal ingin dibuat matriks dengan ukuran 3x3, berikut
adalah contohnya
5.1.1 range()
>>> start = 2
>>> stop = 15
>>> step = 3
>>> contohRange = range(start, stop, step)
>>> print(type(contohRange))
<class 'range'>
>>> print(contohRange)
range(2, 15, 3)
>>> print(contohRange[2])
8
>>> print(contohRange[-1])
14
>>> print(contohRange[1:4])
range(5, 14, 3)
Dapat dilihat pada tipe sequence range bahwa meski bisa diakses untuk
indeks-indeks tertentu, pemanggilan untuk suatu rentang indeks tertentu
memberikan range juga. Meski berbeda list, range dan juga string memi-
liki kesamaan yakni sama-sama objek iterabel yakni objek yang mampu
mendaftarkan anggota satu per satu (anggotanya dapat dipanggil).
5.1.2 list()
Jelas bahwa range berbeda tipe dengan list, namun range dapat diubah
menjadi list yakni dengan list(). Berikut adalah contohnya
>>> print(type(contohRange))
<class 'range'>
>>> print(contohRange)
range(2, 15, 3)
>>> listDariRange = list(contohRange)
>>> print(listDariRange)
[2, 5, 8, 11, 14]
>>> print(listDariRange[1:4])
[5, 8, 11]
Konsep seperti ini biasanya dikenal sebagai fungsi. Dalam hal ini list(objek)
merupakan fungsi yang menerima input berupa objek iterabel dan meng-
embalikannya menjadi list. Misalkan ingin diubah sebuah string (objek ite-
rabel) menjadi list, berikut adalah contohnya
Karena list merupakan tipe data yang mutabel yakni tiap anggotanya
dapat dimodifikasi termasuk dihapus. Terdapat beberapa metode (metho-
ds) yang bersesuaian dengan manfaatnya masing-masing. Misalkan untuk
menambahkan anggota dari list dapat menggunakan metode append. Cara
menerapkan metode pada list adalah dengan memberi titik pada nama list
kemudian nama metode misalnya listSaya.append(2).
Metode append
>>> print(listSaya)
[2, 3, 'pulau terlampaui']
>>> listSaya.remove('pulau terlampaui')
>>> print(listSaya)
[2, 3]
5.2 tuple
Tuple merupakan salah satu objek iterabel yang dapat dibuat dengan
menggunakan tanda kurung dan tiap elemennya dipisahkan oleh tanda ko-
ma ( , ) atau tanpa kurung dengan pemisah berupa tanda koma saja. Sebagai
contoh
Dalam hal ini, perlu diperhatikan bahwa penulisan angka desimal menurut
KBBI adalah dengan menggunakan tanda koma.
Tuple memiliki kemiripan dengan list, khususnya dalam sistem pengin-
deksan serta dapat berisikan tipe data yang beragam. Sebagai contoh
>>> try:
... tupleBeragam[0] = 1
... except:
... print("tuple tidak mengizinkan penggantian anggota")
... print(tupleBeragam)
...
tuple tidak mengizinkan penggantian anggota
(1, 'halo', [12])
Karena tuple merupakan objek iterabel, maka tuple dapat dibuat menjadi
sebuah list dengan fungsi list()
Berbeda dengan list dan tuple, dictionary atau dict merupakan tipe data
yang menggunakan sistem kunci (key) dan nilai (value). Penulisan dict
adalah dengan menggunakan tanda kurung kurawal dan dengan terlebih
dahulu memberikan key lalu valuenya yakni {key : value}.
Dictionary juga merupakan objek iterable, namun tidak bisa diakses dengan
menggunakan indeks
>>> try:
... asal[-1]#error
... except:
... print('dict tidak menggunakan indeks, melainkan value')
...
...
dict tidak menggunakan indeks, melainkan value
Numpy array pada dasarnya adalah sequence seperti list yang berisikan
tipe data yang sama. Artinya numpy array hanya bisa menangani satu buat
tipe saja misal numerik atau string. Ada beberapa cara untuk membuat
numpy array baru, misalnya dari
Membuat numpy array dari list atau tuple yakni dengan perintah np.array()
>>> type(arraySaya)
<class 'numpy.ndarray'>
>>> type(matriksSaya)
<class 'numpy.ndarray'>
>>> start = 0
>>> stop = 1
>>> step = 0.1
>>> np.arange(start, stop, step)
array([0. , 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9])
Matriks/array khusus
2. Diketahui barisan
xn = xn−1 − 0.2xn−1
[ x0 , x1 , x2 , x3 , · · · , x9 , x10 ]
Secara umum terdapat dua jenis subprogram yakni subroutine dan fun-
ction. Terkadang keduanya sering digunakan untuk menyatakan hal yang
sama. Subprogram yang melakukan perintah tanpa mengembalikan nilai
disebut subroutine. Contoh dari subroutine adalah print(). Subprogram
ini akan menjalankan perintah untuk menampilkan nilai dari input yang
diberikan oleh pengguna. Perhatikan baris perintah berikut
def namaFungsi(argumenJikaPerlu):
blok program
Karena formatnya yang sederhana ini, biasanya fungsi lambda dikenal se-
bagai fungsi anonim. Dalam pendefinisian fungsi lambda tidak diperlukan
penamaan. Fungsi lambda cukup cocok apabila digunakan untuk sesekali
saja. Sebagai contoh
Program di atas menjadikan bilangan sebagai input dari fungsi yang meng-
hitung nilai kuadrat. Karena fungsi tersebut tidak bernama sehingga pengo-
perasiannya harus melibatkan tanda kurung () agar menjadi satu kesatuan
perintah. Kemudian untuk memudahkan penulisan, pada baris lima fungsi
lambda diassign ke sebuah variabel bernama fKuadrat. Dapat diamati bah-
wa penerapannya jadi lebih mudah karena fungsi lambda tersebut dapat
dipandang selayaknya fungsi def.
6.2.1 Penggunaan Fungsi Lambda dengan map()
Amati bahwa dapat diperoleh list hasil perkalian elemen list dengan bilang-
an bulat. Pada modul sebelumnya, telah diperlihatkan bahwa fungsi list
apabila dikalikan dengan bilangan bulat akan memberikan list baru dengan
isi duplikasi dari list sebelumnya.
>>> lambda x, y: x + y
<function <lambda> at 0x7fda2eb35160>
>>> _(4,18)
22
Dapat dilihat bahwa karena fungsi lambda yang anonim, cukup unik bahwa
dapat dipanggil dengan menggunakan karakter underscore. Perlu diperha-
tikan bahwa hal tersebut hanya bisa diimplementasikan sekali saja. Apabila
dilakukan lagi maka akan menghasilkan error.
6.3 rekursi
def fungsiRekursi(argumenJikaPerlu):
fungsiRekursi(argumenJikaPerlu)
7.1 math
7.2 numpy
Numpy array pada dasarnya adalah sequence seperti list yang berisikan
tipe data yang sama. Artinya numpy array hanya bisa menangani satu buat
tipe saja misal numerik atau string. Ada beberapa cara untuk membuat
numpy array baru, misalnya dari
>>> type(arraySaya)
<class 'numpy.ndarray'>
>>> type(matriksSaya)
<class 'numpy.ndarray'>
>>> start = 0
>>> stop = 1
>>> step = 0.1
>>> np.arange(start, stop, step)
array([0. , 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9])
>>> start = 0
>>> stop = 1
>>> num = 11
>>> np.linspace(start, stop, num)
array([0. , 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1. ])
Matriks/array khusus
7.2.2 s
APPENDIX CHAPTER
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut purus elit,
vestibulum ut, placerat ac, adipiscing vitae, felis. Curabitur dictum gravida
mauris. Nam arcu libero, nonummy eget, consectetuer id, vulputate a, mag-
na. Donec vehicula augue eu neque. Pellentesque habitant morbi tristique
senectus et netus et malesuada fames ac turpis egestas. Mauris ut leo. Cras
viverra metus rhoncus sem. Nulla et lectus vestibulum urna fringilla ultri-
ces. Phasellus eu tellus sit amet tortor gravida placerat. Integer sapien est,
iaculis in, pretium quis, viverra ac, nunc. Praesent eget sem vel leo ultrices
bibendum. Aenean faucibus. Morbi dolor nulla, malesuada eu, pulvinar
at, mollis ac, nulla. Curabitur auctor semper nulla. Donec varius orci eget
risus. Duis nibh mi, congue eu, accumsan eleifend, sagittis quis, diam. Duis
eget orci sit amet orci dignissim rutrum.
.1 a section
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Ut purus elit,
vestibulum ut, placerat ac, adipiscing vitae, felis. Curabitur dictum gravida
mauris. Nam arcu libero, nonummy eget, consectetuer id, vulputate a, mag-
na. Donec vehicula augue eu neque. Pellentesque habitant morbi tristique
senectus et netus et malesuada fames ac turpis egestas. Mauris ut leo. Cras
viverra metus rhoncus sem. Nulla et lectus vestibulum urna fringilla ultri-
ces. Phasellus eu tellus sit amet tortor gravida placerat. Integer sapien est,
iaculis in, pretium quis, viverra ac, nunc. Praesent eget sem vel leo ultrices
bibendum. Aenean faucibus. Morbi dolor nulla, malesuada eu, pulvinar
at, mollis ac, nulla. Curabitur auctor semper nulla. Donec varius orci eget
risus. Duis nibh mi, congue eu, accumsan eleifend, sagittis quis, diam. Duis
eget orci sit amet orci dignissim rutrum.