Be A Smart Programmer With Python 2020
Be A Smart Programmer With Python 2020
KATA PENGANTAR
Penyusun
i
DAFTAR ISI
ii
I. Operator Python .............................................................................. 25
J. Latihan .............................................................................................. 27
VARIABEL DAN TIPE DATA .................................................................. 29
A. Definisi Variabel .............................................................................. 29
B. Jenis-Jenis Tipe Data ....................................................................... 29
C. Fungsi – Fungsi Yang Mengubah Tipe Data ................................. 32
D. Latihan .............................................................................................. 33
INPUT DAN OUTPUT................................................................................ 35
A. Mekanisme Output .......................................................................... 37
B. Mengubah Tipe Data Pada Perintah Input ................................... 38
C. Pemformatan String pada Output ................................................. 40
D. Latihan .............................................................................................. 42
STRUKTUR KONTROL PERCABANGAN ............................................ 45
A. Definisi Struktur Kontrol Percabangan ........................................ 45
B. Jenis-jenis Struktur Percabangan .................................................. 46
C. Latihan .............................................................................................. 52
STRUKTUR KONTROL PERULANGAN............................................... 55
A. Definisi Looping ............................................................................... 55
B. Istirahat (break) ............................................................................... 58
C. Lanjutkan (continue) ....................................................................... 59
D. Latihan .............................................................................................. 60
ARRAY ......................................................................................................... 62
A. Definisi Array ................................................................................... 62
iii
B. Pembagian Array ............................................................................. 63
C. Pengaplikasian Array Didalam Python ......................................... 64
D. Latihan .............................................................................................. 68
FUNGSI ........................................................................................................ 71
A. Pengertian Fungsi Pada Python ..................................................... 71
B. Cara Membuat Sebuah Fungsi ....................................................... 71
C. Parameter Pada Fungsi ................................................................... 73
D. Mengembalikan Nilai Pada Fungsi ................................................ 74
E. Variabel Global Dan Lokal ............................................................. 75
F. Latihan .............................................................................................. 76
PYTHON LIBRARY ................................................................................... 78
A. Pustaka Python ................................................................................ 78
B. Pustaka Dasar .................................................................................. 79
C. Pustaka Pengerjaan Tanggal dan Waktu ...................................... 82
D. Pustaka Penggunaan String ............................................................ 84
E. Pustaka Math ................................................................................... 86
F. Latihan .............................................................................................. 87
PEMROSESAN FILE ................................................................................. 89
A. Dasar Pemrosesan File .................................................................... 89
B. Membuka File .................................................................................. 91
C. Membaca File yang Telah Ada ....................................................... 92
D. Membuat dan Menulis File Baru. .................................................. 94
E. File Sebagai Input/Output. ............................................................. 95
iv
F. Latihan .............................................................................................. 95
DAFTAR PUSTAKA................................................................................... 97
v
vi
DASAR ALGORITMA
A. Pengertian Algoritma
1
dalam menyelesaikan masalah yang sedang dijalaninya. Dari beberapa
definisi diatas dapat disimpulkan logaritma merupakan cara
penyelesaian suatu masalah mengunakan urutan langkah-langkah yang
sistematis dan mengunakan bahasa yang logis.
3
b. Tidak tergantung pada bahasa pemrograman tertentu.
4
5
DASAR PEMROGRAMAN
1. Menurut Sukrisno
Program adalah suatu ekskresi, kata, atau pernyataan yang
dirangkai dan disusun menjadi sebuah satu kesatuan prosedur
ataupun urutan langkah-langkah yang bertujuan untuk
menyelesaikan masalah yang diberikan dengan memakai bahasa
pemrograman sehigga dapat dijalankan oleh komputer.
2. Menurut kkbi
Program dalam ilmu komputer merupakan program yang
dibuat secara khusus sehingga memungkinkan komputer
melakukan fungsi atau tindakan tertentu.
3. Menurut Amikom Yogyakarta
Program merupakan suatu kumpulan intruksi komputer.
4. Menurut Sugiyono (2005:21)
Program adalah rangkaian tahapan atau instruksi-instruksi
pada bahasa komputer yang dibuat dan disusun secara sistematis
dan logis.
1. Originating
Originating merupakan tahap yang berhubungan dengan
pengumpulan suatu data yang umumnya adalah pencatatan data
ke dokumen dasar. Setelah dikumpulkan selanjutnya dilakukan
proses input.
2. Input
Input adalah suatu proses memasukkan data kedalam proses
komputer yang melalui alat pemasukkan atau alat input.
7
3. Proses
Proses adalah tahapan pengolahan data yang sudah diinput
yaitu berupa proses menghitung, membandinkan, mengurutkan,
mengklasifikasikan, mengendalikan, dan mencari di storage atau
penyimpanan.
4. Output
Output merupakan tahap proses untuk menghasilkan
keluaran atau hasil dari suatu proses pengolahan data ke peralatan
output yang berupa informasi.
5. Distribution
Tahap distribution ini merupakan suatu penyebaran
informasi kepada pihak yang memebutuhkan dan berhak
menerima informasi.
6. Storage
Storage merupakan tahap perekaman hasil pengolahan data
yang nantinya akan digunakan untuk proses input selanjutnya.
7. Data
Data ialah bahan mentah yang akan diproses menjadi
informasi sehingga dapat digunakan oleh pengguna atau user. Ada
4 macam tipe data yaitu :
8
Yaitu tipe data tidak terstruktur ynag didefinisikan
oleh suatu bahasa pemrograman.
b. Tipe data terstruktur
Yaitu tipe data campuran dari berbagai tipe data
dasar seperti array, record, string, list, dan file.
c. Tipe data didefinisikan oleh pengguna
d. Tipe data petunjuk
8. Model Komputasi
Model komputasi yaitu sekumpulan dari nilai dan operasi-
operasi.
a. Sintask
Sintaks menjelaskan bagaimana struktur suatu
program yang benar.
b. Tipe sistem dan semantik
Tipe sistem dan semantik menunjukkan tipe dari suatu
nilai yang bisa dimanipulasi oleh program yang juga
mencakup aturan penamaan entitas seperti variabel, fungsi,
class, parameter, dan lain lain.
c. Manajemen memori
Manajemen memori merujuk kepada suatu kumpulan
teknik yang membantu kita dalam memahami pemetaan
letak dari nilai, struktur data, maupun struktur program
didalam suatu memori.
d. Exception handling
9
Exception handling adalah hal-hal yang terduga
seperti kesalahan dalam proses input dalam menjalankan
suatu program.
1. Generasi Pertama
2. Generasi Kedua
10
Bahasa generasi kedua yaitu assembly language seacara
bahasa yang artinya bahasa rakitan. Bahasa pemrograman
assembly ini mirip dengan bahasa pemrograman generasi pertama
yaitu bahasamesin. Namun, bahasa pemrograman assembly ini
memiliki kata kunci yang lebih kompleks sehingga para
programmer relatif lebih mudah mengerti. Assembly language
lebih akrab dikenal dengan sebutan Assembler.
Jenis kode pada bahasa pemrograman Assembler ini biasa
berupa singkatan-singkatan yang lazimnya dikenal dengan
sebutan kode mnemonic misalnya LOOP, JGE, CMP, MOV,
SUB, dan lainnya. Kode-kode tersebut mirip sekali dengan kode
Terminal yang pada pada sistem operasi linux ataupun kode
command pompt yang ada pada sistem operasi windows.
3. Generasi Ketiga
Pada generasi ketiga muncul sebuah bahasa pemrograman
yang mirip sekali dengan bahasa manusia namun yang dicampur
dengan beberapa simbol seperti >>, <<, {, }, :, ;. ||, dan sebagainya
yang dikenal dengan istilah procedural programming atau bahasa
pemrograman prosedural.
4. Generasi Keempat
11
Bahasa pemrograman pada kegenarsi keempat yaitu 4 GL
(fourth-generation language) atau lebih akrab dikenal dengan
sebutan generasi bahasa query terstruktur. Bahasa query
terstruktur lazimnya dipakai sebagai bahasa sekunder dengan
library built in atau secara terpisah, query terstruktur yang
dimasukkan kedalam kode suatu bahasa pemrograman
mempunyai tujuan untuk mendefinisikan basis data dan atau
memanipulasi basis data yang biasa dikenal dengan istilah DDL
yaitu Data Definition Language dan DML yaitu Data
Manipulation Language.
5. Generasi Kelima
Bahasa pemrograman pada generasi kelima dikenal dengan
istilah Programming Language Based Object Oriented & Web
Development. Pada bahasa ini lebih menekankan kearah efesiensi
aspek dan menggunakan kembali odul yang telah dibuat
menggunakan bahasa tingat tinggi tertentu. Bahasa generasi
kelima ini akrab dikenal dengan istilah “intellegent programming”
yang artinya kecerdasan pemrograman yang lebih menekankan
pada aspek otomatisasinya dalam setiap proses.
1. Pseudocode
Secara bahasa Pseudocode memiliki arti yaitu pseudo yang
artinya mirip, menyerupai, atau imitasi sedangkan code yang
12
berarti kode. Pseudocode adalah algoritma yang sudah dikonfersi
atau diubah kedalam bentu suatu kode tertentu.
2. Flowchart
Flowchart tidak mirip dengan pseudocode ataupun
algoritma. Flowchart lazimnya adalah sebuah diagram yang
memiliki aliran dan arah yang berkesinambungan. Fungsi utama
flowchart yaitu untuk mengkonsep dan mempresentasikan sebuah
program yang akan dibuat berdasarkan pola pikir programmer.
Ada empat komponen yang ada pada flowchart yaitu.
a. Input.
b. Percabangan, biasanya menggunakan “if” dan “elife”.
c. Perulangan, biasanya menggunakan kode “while” dan”for”.
d. Output
13
Langkah-langkah dalam pembuatan flowchart yaitu:
14
Contoh flowchart sederhana.
15
E. Latihan
Penyelesaian :
Mulai
16
BAHASA PEMROGRAMAN PYTHON
A. Definisi Python
17
Ketiga bahasa tersebut sama sama menghasilkan “Hello world” di
bagian outputnya. Namun dengan tipe penulisan yang berbeda. Python
tertu saja terlihat sangat sederhana dibandingkan dengan bahasa yang
lainnya. Bahkan tagline dari websitenya menerangkan kalau python
akan membuatmu bekerja lebih cepat dan efisien.
Tanpa kita sadari teks editor ada banyak sekali pilihan. Mulai dari
yang sederhana sampai yang fiturnya sangat lengkap dengan berbagai
plugin tambahan yang tersedia. Namun, teks editor yang lain tersebut
perlu kita download dan intal sendiri.
20
D. Syntax Dasar
21
F. Komentar Python
22
G. Tipe Data Python
Menyatakan bilangan
Hexadesimal 2b atau 1c9 heksadesimal atau bilangan
yang memiliki 16 basis.
23
Menyatakan rangkaian data
[ “abc” , 128, yang menyimpan berbagai jenis
List
78.1] data dan isinya masih dapat
diubah – ubah.
H. Variabel Python
24
3. Aksara pada nama varibel bersifat sensitif. Artinya huruf
kapital dan huruf kecil dibedakan. Sebagai contoh, variabel
namaLengkap dan namalengkap adalah variabel yang
berbeda.
I. Operator Python
25
Mengurangi nilai bilangan kiri
Pengurangan - 7-2=5
menggunakan bilangan kanan
26
J. Latihan
Penyelesaian:
27
28
VARIABEL DAN TIPE DATA
A. Definisi Variabel
30
5. Tipe data array
Tipe data Tuple adalah tipe data yang memiliki nilai lebih dari
satu. Tipe data tuple hampir sama dengan tipe data list, namun
31
tuple bersifat immutable, artinya nilai didalamnya tidak dapat
diubah.
Penyelesaian:
33
34
INPUT DAN OUTPUT
35
Kemudian, untuk melihat data yang sudah diinput tadi
menggunakan perintah print(). Perintah inilah yang dimaksud dengan
output.
36
A. Mekanisme Output
Selain itu, teks dan variabel dapat digabungkan kedalam output dengan
menambahkan tanda koma (,).
37
⚫ Objects : berupa data string, integer, atau float yang akan
ditampilkan.
39
Begitu juga dengan tipe data float. Cukup menambah “float” di
depan perintah input.
40
2. Pemformatan Dengan Simbol Persen (%)
Keterangan:
41
D. Latihan
Penyelesaian
42
persen (%) atau tanpa pemformatan dengan langsung memanggil
variabelnya.
43
44
STRUKTUR KONTROL PERCABANGAN
46
Karena kondisinya benar yaitu nilai 15 lebih kceil dari
17 maka blok kode if tersebut dapat di eksekusi dan
mengeluarkan output berupa kata “Ini Benar” sesuai
perintah dari user.
angka = 15
if angka < 17:
print("Ini Benar")
if angka < 20:
print("Ini Juga Benar")
if angka > 10:
print("Inipun Juga Benar")
47
Karena ketiga kondisi dari blok kode if benar maka
ketiganya dapat di eksekusi dan mengeluarkan output
seperti pada gambar tersebut sesuai keinginan dari user.
angka = 20
if angka < 23:
print("Ini Benar")
else:
48
print("Ini Salah")
angka = 20
if angka < 18:
print("Ini Benar")
else:
print("Ini Salah")
49
Karena statement pertama salah yaitu nilai 20
seharusnya lebih besar dari 18 maka statement kedua yang
akan dieksekusi. Sehingga output yang di hasilkan berupa
“Ini Salah”.
angka = 20
if angka < 18:
print("Ini Benar")
else:
if angka == 20:
print("Angkanya adalah 20")
else:
print("Angkanya Bukan 20")
50
angka = 25
if angka < 17:
print("Ini Salah")
elif angka == 20:
print("Angkanya adalah 20")
elif angka == 75:
print("Angkanya adalah 75")
else:
print("Angka sebenrnya adalah 25")
51
C. Latihan
Penyelesaian :
lebar = 5
panjang = 8
luas = lebar * panjang
if luas == 20:
print("Luas Persegi Panjang Adalah 20")
elif luas == 29:
print("Luas Persegi Panjang Adalah 29")
elif luas == 15:
print("Luas Persegi Panjang Adalah 15")
else:
print("Luas Persegi Panjang Adalah 40")
52
53
Struktur Kontrol Percabangan
Anggota dari data list dapat berupa list ataupun integer. Data list
berisi data yang berurut-urut.
Tipe data Dictionary merupakan tipe data array yang dimana key
atau index dari array dapat berbentuk string. Dalam membuat
dictionary menggunakan tanda kurung kurawal {} dan antar
elemen dipisah dengan tanda koma.
54
STRUKTUR KONTROL PERULANGAN
A. Definisi Looping
1. While loop
55
Pada kondisi ini bagian kode akan terus dieksekusi berulang-ulang
selama masih dalam kondisi TRUE.
Hasil outputnya:
2. For loop
56
Hasil outputnya:
Hasil outputnya:
57
3. Nasted loop
Hasil outputnya:
B. Istirahat (break)
58
C. Lanjutkan (continue)
59
D. Latihan
Buatlah sebuah program dengan meminta input dari user pilihan genap
atau ganjil, lalu menghasil kan output angka sesuai input yang di
masukkan
Penyelesaian:
60
61
ARRAY
A. Definisi Array
Array adalah variabel yang dapat menyimpan data lebih dari satu
dan memiliki tipe data yang sama. Array mengumpulkan data-data
tunggal dan menjadi satu variabel array yang dimana alamat memorinya
berbeda , lalu disebut elemen-elemen array yang dapat diakses
berdasarkan indeks sesuai dengan urutannya.
B. Pembagian Array
Dilihat dari dimensinya array dibagi menjadi dua yaitu array satu
dimensi dan array dua dimensi.
Contoh :
AnggotaKeluarga = ["ayah", "ibu", "kakak", "abang", "adik"]
64
Jika ingin mengubah abang menjadi paman, maka contoh kodenya
adalah:
65
Menambah Nilai Dalam Array
66
Contoh remove:
67
D. Latihan
Buatlah suatu program untuk mengambil data sekaligus dari list variabel
daftar siswa, dan cobalah buat kode untuk :
Penyelesaian :
2. Mengambil data terakhir dari list daftar siswa, dimulai dari indeks
ke-2
68
3. Mengambil data yang dimulai dari indeks ke-1, hingga sebelum
indeks ke-3
69
70
FUNGSI
Setelah titik dua dan dibawah perintah def merupakan isi dari
fungsi. Untuk memanggil fungsi diatas cukup menulis nama fungsi dan
fungsi tersebut akan menghasilkan output berdasarkan isi dari fungsi itu
sendiri.
Fungsi juga dapat dipanggil oleh fungsi lain dan dirinya sendiri:
72
C. Parameter Pada Fungsi
73
Dapat dilihat penggunaan dua parameter diatas. Untuk membuat
lebih dari satu parameter menggunakan tanda koma (,) sebagai
pemisah antar parameter. Output yang dihasilkan:
74
E. Variabel Global Dan Lokal
75
F. Latihan
Penyelesaian :
76
77
PYTHON LIBRARY
A. Pustaka Python
78
B. Pustaka Dasar
Berikut ini diantara pustaka dasar python yang telah tersedia ketika kita
memakai python 3 adalah sebagai berikut:
• abs( )
• min( )
79
• max( )
• sum( )
• pow( )
80
Melakukan pengubahan dari
hex( ) bilangan integer ke dalam bentuk
bilangan hexadecimal
81
Melakukan pengubahan menjadi
oct( )
bilangan okta
Tanggal dan waktu terdapat dua jenis, yakni “naive” dan “aware”
“aware” mempunyai pengetahuan beradaptasi tentang penyesuain
waktu yang berlaku di suatu tempat, seperti zona waktu dan informasi
tentang cuaca yang sedang berlangsung.
82
tergantung pada program. Objek “naif” lebih mudah digunakan, dengan
tidak fokus pada beberapa aspek realitas.
83
D. Pustaka Penggunaan String
84
2. String Boolean
85
Kenapa pada variabel nomor_ bernilai false False padahal sama
sama berisikan alfanumerik seperti variabel nomor?, pada variabel
nomor_ mengandung tanda sombol yakni koma(,) sehingga tidak
termasuk dalam str.isnumeric dan akan bernilai False.
E. Pustaka Math
86
F. Latihan
Penyelesaian:
87
88
PEMROSESAN FILE
File Teks, merupakan file yang berisi teks dan setiap barisnya
memiliki EOL (End Of Line). Baris-baris tersebut dipisihkan oleh
special character, yang disebut newline., seperti
TXT,MD,CSV,JSON,dsb.
Contoh
Mode Keterangan
90
Membuka file dalam mode teks.
t Defaultnya sudah dalam mode
teks.
B. Membuka File
Contoh:
Jika file ada dan memiliki izin untuk membuka file tersebut, maka
system akan mengembalikan sebuah file handle, seperti contoh diatas
91
disimpan dalam variabel fread. Jika file yang diminta tidak ada maka
akan terjadi error.
Jika pengguna meminta file yang tidak ada maka akan terjadi
error. Anda bisa menggunakan exception supaya program tidak
langsung error dan berhenti saat memasukan input yang tidak valid.
92
Contoh program menghitung jumlah baris (termasuk baris
kosong) yang ada didalam file chairil-anwar-aku.txt.
93
D. Membuat dan Menulis File Baru.
Untuk membuat file gunakan open( ), tapi kali ini dengan menggunakan
‘w’ sebagai parameter kedua.
Jika file belum ada, maka akan dibuat sebuah file baru. Jika sudah ada
maka file yang lama akan dihapus.
94
E. File Sebagai Input/Output.
File sangat dibantu jika berurusa dengan data input atau output dalam
jumlah yang banyak dan repot jika mesti di-input() atau di-print() satu
persatu.
Contoh program menghasilkan output_daftar_provinsi.txt.
F. Latihan
Buatlah sebuah file CSV sederhana yang menulis sejumlah tuple yang
berisi data siswa, yang hasilnya akan dihasilkan sebuah file CSV yang
satu tempat dengan file python penulis file CSV.
Penyelesaian :
95
Dijalankan kode diatas dengan “python write-to-csv.py” dikonsol, maka
akan muncul file seperti ini :
96
DAFTAR PUSTAKA
97