Anda di halaman 1dari 79

i

TIM PENYUSUN

Dr. Abdiansah, S.Kom., M.CS.

Alvi Syahrini Utami, S.Si., M.Kom.

Novi Yusliani, S.Kom, M.T.

Kanda Januar Miraswan, S.Kom., M.T.

Ahmad Fali Oklilas, S.T., M.T.

Ari Wedhasmara, S.Kom., M.T.I.

Gerald Plakasa

Ferza Reyaldi

Asraf Shafiyyurrahman

Muhammad Agil Arrifqi

Artamananda

Arya Mulya Kusuma

Dini Andriani

Yulya Anita

FAKULTAS ILMU KOMPUTER

UNIVERSITAS SRIWIJAYA

2021

ii
KATA PENGANTAR

Assalamu’alaikum Warahmatullahi Wabarakatuh

Alhamdulillah saya panjatkan puja dan puji syukur kehadirat Allah swt yang
senantiasa melimpahkan segala rahmat, taufik dan hidayah-Nya sehingga
penyusun dapat menyelesaikan modul ini.

Modul ini disusun untuk memenuhi kebutuhan peserta pendidikan dalam


rangka Pengabdian ke sekolah menengah atas. Sesuai dengan segmentasi peserta,
maka modul ini disusun dengan kualifikasi yang tidak diragukan lagi.

Teknik penyajian yang diangkat dilakukan secara terpadu tanpa pemilihan


berdasarkan jenjang pendidikan. Cara ini diharapkan bisa meminimalisir
terjadinya pengulangan topik berdasarkan jenjang pendidikan.

Pembahasan modul ini dimulai dengan menjelaskan tujuan yang akan dicapai.
Kelebihan modul ini, Anda bisa melihat keterpaduan bahasa pemprograman
Python.

Pembahasan yang akan disampaikan pun disertai dengan contoh-contoh soal


yang dapat digunakan untuk meningkatkan ketercapaian dan ketuntasan.

Penyusun menyadari bahwa di dalam pembuatan modul masih banyak


kekurangan, untuk itu penyusun sangat membuka saran dan kritik yang sifatnya
membangun. Mudah-mudahan modul ini memberikan manfaat.

Palembang, 26 Agustus 2021

Penulis

iii
DAFTAR ISI

COVER ................................................................................................................... i

TIM PENYUSUN .................................................................................................. ii

KATA PENGANTAR .......................................................................................... iii

DAFTAR ISI ........................................................................................................ iiii

PEMBAHASAN .................................................................................................... 1
1. Overview ...................................................................................................... 1
1.1 Mengapa Belajar Python?......................................................................... 1
1.2 Karakteristik Python ................................................................................. 2
1.3 Aplikasi .................................................................................................... 2
1.4 Prasyarat ................................................................................................... 3
1.5 Contoh ...................................................................................................... 3
2. Pengenalan Python ..................................................................................... 4
2.1 Definisi ..................................................................................................... 4
2.2 Sejarah ...................................................................................................... 4
2.1 Fitur .......................................................................................................... 5
3. Environment Setup...................................................................................... 6
3.1 Instalasi Python ........................................................................................ 6
3.1.1 Linux ................................................................................................. 7
3.1.2 Windows ........................................................................................... 7
3.1.3 Mac OS ............................................................................................. 7
3.2 Menjalankan Python ................................................................................. 8
3.2.1 Linux ................................................................................................. 8
3.2.2 Windows ........................................................................................... 8
3.2.3 Mac OS ........................................................................................... 11
3.2.4 Online ............................................................................................. 11
4. Sintaksis Dasar ......................................................................................... 12
4.1 Pengidentifikasian .................................................................................. 12
4.2 Kata yang Dicandangkan ........................................................................ 13
4.3 Baris dan Indentasi ................................................................................. 13
4.4 Satu Pernyataan dalam Beberapa Baris .................................................. 14
4.5 Kutipan dalam Python ............................................................................ 14
4.6 Komentar dalam Python ......................................................................... 15
4.7 Menunggu Baris Kosong ........................................................................ 15
4.8 Menunggu User ...................................................................................... 16
4.9 Beberapa Pernyataan dalam Satu Baris .................................................. 16
4.10 Beberapa pernyataan kelompok Suite ................................................... 16
5. Tipe Variabel ............................................................................................. 17
5.1 Menerapkan Nilai ................................................................................... 17
5.2 Multiple Assignment .............................................................................. 17
5.3 Tipe Data Standar ................................................................................... 18
5.4 Python Numbers ..................................................................................... 18

iv
5.5 Python Strings ........................................................................................ 19
5.6 Python List ............................................................................................. 19
5.7 Python Tuples ......................................................................................... 20
5.8 Python Dictionary................................................................................... 21
5.9 Konversi Tipe Data ................................................................................. 22
6. Operator Dasar ......................................................................................... 23
6.1 Tipe-Tipe Operator ................................................................................. 23
6.2 Operator Aritmatika ............................................................................... 23
6.3 Operator Perbandingan ........................................................................... 24
6.4 Operator Assignment .............................................................................. 25
6.5 Operator Bitwise..................................................................................... 25
6.6 Operator Logika ..................................................................................... 27
6.7 Operator Membership ............................................................................. 27
6.8 Operator Identitas ................................................................................... 27
6.9 Prioritas Operator ................................................................................... 28
7. Pengkondisian .......................................................................................... 29
7.1 Kondisi if ................................................................................................ 29
7.2 Kondisi if else ......................................................................................... 29
7.3 Kondisi elif ............................................................................................. 30
7.4 and Dan or .............................................................................................. 31
7.5 Kondisi bersarang ................................................................................... 31
8. Perulangan ............................................................................................... 32
8.1 While Loop ............................................................................................. 32
8.2 For Loop ................................................................................................. 33
8.3 Nested Loop ........................................................................................... 34
8.4 Break Statement ..................................................................................... 34
8.5 Continue Statement ................................................................................ 35
9. Numbers .................................................................................................... 35
9.1 Integer ..................................................................................................... 36
9.2 Float ........................................................................................................ 37
9.3 Complex ................................................................................................. 37
9.4 Konversi Tipe Data Number .................................................................. 38
10. Strings ....................................................................................................... 39
10.1 Penulisan Nilai ...................................................................................... 39
10.2 Mendefinisikan Variabel ....................................................................... 40
10.3 String Multiline ..................................................................................... 40
10.4 Mengindex String .................................................................................. 40
10.5 Panjang String ....................................................................................... 41
10.6 Menguji Keanggotaan Karakter ............................................................ 41
10.7 Menggabung String ............................................................................... 42
11. Struktur Data List ..................................................................................... 42
11.1 Pengertian List ...................................................................................... 42
11.2 Membuat dan Mengakses List .............................................................. 42
11.3 Memanipulasi List ................................................................................. 43
11.3.1 Menambah Data ............................................................................ 43
11.3.2 Menghapus Data ........................................................................... 44

v
11.3.3 Memotong Data ............................................................................ 44
11.3.4 Operasi .......................................................................................... 45
11.4 Multi Dimensi List ................................................................................ 45
11.5 List Methods ......................................................................................... 46
12. Struktur Data Tuple ................................................................................. 46
12.1 Pengertian Tuple ................................................................................... 46
12.2 Membuat dan Mengakses Tuple ........................................................... 47
12.3 Manipulasi Tuple .................................................................................. 47
12.4 Tuple Bersarang .................................................................................... 47
12.5 Tuple Methods ...................................................................................... 48
13. Dictionary .................................................................................................. 48
13.1 Akses Nilai ............................................................................................ 48
13.2 Update Nilai .......................................................................................... 49
13.3 Hapus Elemen ....................................................................................... 49
13.4 Fungsi Build-in ..................................................................................... 49
13.5 Method Build-in .................................................................................... 50
14. Date & Time .............................................................................................. 50
14.1 Tick ...................................................................................................... 51
14.2 Time Tuple ........................................................................................... 51
14.3 Waktu Saat ini ...................................................................................... 52
14.4 Waktu yang berformat .......................................................................... 52
14.5 Kalender dalam Sebulan ...................................................................... 53
14.6 Modul Time .......................................................................................... 53
14.7 Modul Kalender ................................................................................... 55
15. Fungsi ........................................................................................................ 56
15.1 Pengertian .............................................................................................. 56
15.2 Mendefinisikan ...................................................................................... 57
15.3 Memanggil ............................................................................................ 57
15.4 Fungsi dengan Parameter ...................................................................... 58
15.4.1 Mendefinisikan ............................................................................. 58
15.4.2 Memanggil .................................................................................... 58
15.5 Fungsi mengembalikan nilai ................................................................. 59
15.5.1 Mendefinisikan ............................................................................. 59
15.5.2 Memanggil .................................................................................... 60
15.6 Variabel Lokal dan Global .................................................................... 61
16. Modul ......................................................................................................... 61
16.1 Pengertian .............................................................................................. 62
16.2 Import Statment ..................................................................................... 62
16.3 From Import Statment ........................................................................... 63
16.4 From Import * Statment ........................................................................ 64
17. Files I/O ..................................................................................................... 64
17.1 Fungsi I/O Dasar ................................................................................... 64
17.2 Fungsi I/O Lanjutan .............................................................................. 65
17.2.1 Buka File ...................................................................................... 65
17.2.2 Tutup File ..................................................................................... 66
17.2.3 Menulis File .................................................................................. 66

vi
17.2.4 Membaca File ............................................................................... 67
18. Exceptions ................................................................................................. 68
18.1 Exceptions Handling ............................................................................. 68
18.2 Assertions .............................................................................................. 71

vii
PEMBAHASAN

1. Overview

Python adalah jika ditafsirkan itu , interaktif, berorientasi objek, dan bahasa
pemrograman tingkat tinggi. Ini diciptakan oleh Guido van Rossum selama tahun
1985-1990. Seperti Perl, kode sumber Python juga tersedia di bawah GNU
General Public License (GPL). Tutorial ini memberikan pemahaman yang cukup
tentang bahasa pemrograman Python.

1.1 Mengapa Belajar Python

 Python adalah bahasa scripting tingkat tinggi, ditafsirkan, interaktif dan


berorientasi objek. Python dirancang agar sangat mudah dibaca. Ini sering
menggunakan kata kunci bahasa Inggris sedangkan bahasa lain
menggunakan tanda baca, dan memiliki konstruksi sintaksis yang lebih
sedikit daripada bahasa lain.
 Python adalah KEHARUSAN bagi siswa dan profesional yang bekerja
untuk menjadi Insinyur Perangkat Lunak yang hebat khususnya ketika
mereka bekerja di Domain Pengembangan Web. Saya akan membuat
daftar beberapa keuntungan utama dari belajar Python.
 Python Diinterpretasikan Python diproses saat runtime oleh interpreter.
Anda tidak perlu mengkompilasi program Anda sebelum menjalankannya.
Ini mirip dengan PERL dan PHP.
 Python bersifat Interaktif Anda sebenarnya dapat duduk di prompt Python
dan berinteraksi dengan juru bahasa secara langsung untuk menulis
program Anda.
 Python Berorientasi Objek Python mendukung gaya Berorientasi Objek
atau teknik pemrograman yang merangkum kode di dalam objek.
 Python adalah Bahasa Pemula Python adalah bahasa yang bagus untuk
programmer tingkat pemula dan mendukung pengembangan berbagai
aplikasi mulai dari pemrosesan teks sederhana hingga browser WWW
hingga game.

1
1.2 Karakteristik Python

Berikut ini adalah karakteristik penting dari Pemrograman Python


 Ini mendukung metode pemrograman fungsional dan terstruktur serta
OOP.
 Ini dapat digunakan sebagai bahasa scripting atau dapat dikompilasi ke
byte-code untuk membangun aplikasi besar.
 Ini menyediakan tipe data dinamis tingkat tinggi dan mendukung
pemeriksaan tipe dinamis.
 Ini mendukung pengumpulan sampah otomatis.
 Itu dapat dengan mudah diintegrasikan dengan C, C++, COM, ActiveX,
CORBA, dan Java.

1.3 Aplikasi Python

Seperti disebutkan sebelumnya, Python adalah salah satu bahasa yang paling
banyak digunakan di web. Saya akan daftar beberapa dari mereka di sini:
 Mudah dipelajari Python memiliki sedikit kata kunci, struktur sederhana,
dan sintaks yang jelas. Hal ini memungkinkan siswa untuk mengambil
bahasa dengan cepat.
 Mudah dibaca Kode Python lebih jelas dan terlihat oleh mata.
 Mudah dirawat Kode sumber Python cukup mudah dirawat.
 Pustaka standar yang luas Pustaka Python sangat portabel dan kompatibel
lintas platform di UNIX, Windows, dan Macintosh.
 Mode Interaktif Python memiliki dukungan untuk mode interaktif yang
memungkinkan pengujian interaktif dan debugging potongan kode.
 Portabel Python dapat berjalan di berbagai platform perangkat keras dan
memiliki antarmuka yang sama di semua platform.
 Dapat diperpanjang Anda dapat menambahkan modul tingkat rendah ke
interpreter Python. Modul-modul ini memungkinkan pemrogram untuk
menambah atau menyesuaikan alat mereka agar lebih efisien.
 Database Python menyediakan antarmuka ke semua database komersial
utama.

2
 Pemrograman GUI Python mendukung aplikasi GUI yang dapat dibuat
dan porting ke banyak panggilan sistem, perpustakaan, dan sistem
windows, seperti Windows MFC, Macintosh, dan sistem X Window dari
Unix.
 Scalable Python menyediakan struktur dan dukungan yang lebih baik
untuk program besar daripada skrip shell.
Tutorial Python ini dirancang untuk programmer perangkat lunak yang perlu
mempelajari bahasa pemrograman Python dari awal.

1.4 Prasyarat sebelum belajar Bahasa Pemprograman Python

 Anda harus memiliki pemahaman dasar tentang istilah Pemrograman


Komputer. Pemahaman dasar tentang salah satu bahasa pemrograman
adalah nilai tambah.
 Python adalah bahasa pemrograman interpretatif multiguna. Tidak seperti
bahasa lain yang susah untuk dibaca dan dipahami, python lebih
menekankan pada keterbacaan kode agar lebih mudah untuk memahami
sintaks. Hal ini membuat Python sangat mudah dipelajari baik untuk
pemula maupun untuk yang sudah menguasai bahasa pemrograman lain.

1.5 Contoh Code

Dengan kode yang simpel dan mudah diimplementasikan, seorang


programmer dapat lebih mengutamakan pengembangan aplikasi yang dibuat,
bukan malah sibuk mencari syntax error.

Hanya dengan menuliskan kode print seperti yang diatas, anda sudah bisa
mencetak apapun yang anda inginkan di dalam tanda kurung (). Dibagian akhir
kode pun, anda tidak harus mengakhirinya dengan tanda semicolon ;

3
2. Pengenalan Python

2.1 Definisi

Python adalah bahasa scripting tingkat tinggi, ditafsirkan, interaktif dan


berorientasi objek. Python dirancang agar sangat mudah dibaca. Ini sering
menggunakan kata kunci bahasa Inggris sedangkan bahasa lain menggunakan
tanda baca, dan memiliki konstruksi sintaksis yang lebih sedikit daripada bahasa
lain.

Python Diinterpretasikan Python diproses saat runtime oleh interpreter. Anda


tidak perlu mengkompilasi program Anda sebelum menjalankannya. Ini mirip
dengan PERL dan PHP.

Python bersifat Interaktif Anda sebenarnya dapat duduk di prompt Python dan
berinteraksi dengan juru bahasa secara langsung untuk menulis program Anda.

Python Berorientasi Objek Python mendukung gaya Berorientasi Objek atau


teknik pemrograman yang merangkum kode di dalam objek.

Python adalah Bahasa Pemula Python adalah bahasa yang bagus untuk
programmer tingkat pemula dan mendukung pengembangan berbagai aplikasi
mulai dari pemrosesan teks sederhana hingga browser WWW hingga game.

2.2 Sejarah Python

Python dikembangkan oleh Guido van Rossum pada akhir tahun delapan
puluhan dan awal tahun sembilan puluhan di National Research Institute for
Mathematics and Computer Science di Belanda. Python berasal dari banyak
bahasa lain, termasuk ABC, Modula-3, C, C++, Algol-68, SmallTalk, dan Unix
shell dan bahasa scripting lainnya. Python memiliki hak cipta. Seperti Perl, kode
sumber Python sekarang tersedia di bawah GNU General Public License (GPL).
Python sekarang dikelola oleh tim pengembangan inti di institut, meskipun Guido
van Rossum masih memegang peran penting dalam mengarahkan kemajuannya.

4
2.3 Fitur Python

Fitur Python termasuk:


 Mudah dipelajari Python memiliki sedikit kata kunci, struktur sederhana,
dan sintaks yang jelas. Hal ini memungkinkan siswa untuk mengambil
bahasa dengan cepat.

 Mudah dibaca Kode Python lebih jelas dan terlihat oleh mata.

 Mudah dirawat Kode sumber Python cukup mudah dirawat.

 Pustaka standar yang luas Pustaka Python sangat portabel dan kompatibel
lintas platform di UNIX, Windows, dan Macintosh.

 Mode Interaktif Python memiliki dukungan untuk mode interaktif yang


memungkinkan pengujian interaktif dan debugging potongan kode.

 Portabel Python dapat berjalan di berbagai platform perangkat keras dan


memiliki antarmuka yang sama di semua platform.

 Dapat diperpanjang Anda dapat menambahkan modul tingkat rendah ke


interpreter Python. Modul-modul ini memungkinkan pemrogram untuk
menambah atau menyesuaikan alat mereka agar lebih efisien.

 Database Python menyediakan antarmuka ke semua database komersial


utama.

 Pemrograman GUI Python mendukung aplikasi GUI yang dapat dibuat


dan porting ke banyak panggilan sistem, perpustakaan, dan sistem
windows, seperti Windows MFC, Macintosh, dan sistem X Window dari
Unix.

 Scalable Python menyediakan struktur dan dukungan yang lebih baik


untuk program besar daripada skrip shell.

Terlepas dari fitur yang disebutkan di atas, Python memiliki daftar besar fitur
bagus, beberapa di antaranya tercantum di bawah ini Ini mendukung metode
pemrograman fungsional dan terstruktur serta OOP.

 Ini dapat digunakan sebagai bahasa scripting atau dapat dikompilasi ke


byte-code untuk membangun aplikasi besar.

5
 Ini menyediakan tipe data dinamis tingkat tinggi dan mendukung
pemeriksaan tipe dinamis.

 Ini mendukung pengumpulan sampah otomatis.

 Itu dapat dengan mudah diintegrasikan dengan C, C++, COM, ActiveX,


CORBA, dan Java.

Python adalah bahasa pemrograman yang mudah dipelajari dan kuat. Ini
memiliki struktur data tingkat tinggi yang efisien dan pendekatan yang sederhana
namun efektif untuk pemrograman berorientasi objek. Sintaks Python yang elegan
dan pengetikan dinamis, bersama dengan sifatnya yang ditafsirkan,
menjadikannya bahasa yang ideal untuk pembuatan skrip dan pengembangan
aplikasi yang cepat di banyak area di sebagian besar platform.

Penerjemah Python dan perpustakaan standar yang luas tersedia secara bebas
dalam bentuk sumber atau biner untuk semua platform utama dari situs Web
Python, https://www.python.org/, dan dapat didistribusikan secara bebas. Situs
yang sama juga berisi distribusi dan petunjuk ke banyak modul, program dan alat
Python pihak ketiga gratis, dan dokumentasi tambahan.

Interpreter Python mudah diperluas dengan fungsi dan tipe data baru yang
diimplementasikan dalam C atau C++ (atau bahasa lain yang dapat dipanggil dari
C). Python juga cocok sebagai bahasa ekstensi untuk aplikasi yang dapat
disesuaikan.

3. Environment Setup

3.1 Instalasi Python

Buka jendela terminal (Command Prompt) dan ketik "python" untuk


mengetahui apakah sudah diinstal dan versi mana yang diinstal. Sebelum Kalian
menggunakan Python, Kalian harus menginstalnya terlebih dahulu di sistem
operasi komputer Kalian. Saat ini Python memiliki versi 3.9. Disini kita akan
belajar bahasa pemrograman Python menggunakan versi terbaru 3.9. Cara
menginstal python sangat mudah, ikuti panduan dibawah ini. Dibawah adalah
panduan cara instal python di platform Linux, Windows dan Mac OS.

6
3.1.1 Linux

a. Buka browser,
kunjungi http://www.python.org/downloads/source/

b. Download versi terbaru Python berbentuk file zip untuk


Unix/Linux
c. Ekstrak file zip yang baru saja di download
d. Edit file Modules/Setup jika Anda ingin kostumisasi Python
e. Jalankan ./configure script
f. make
g. make install

Langkah ini akan menginstal Python di lokasi


standar /usr/local/bin dan library
di /usr/local/lib/pythonXX dimana XX adalah versi terbaru
Python yang anda gunakan.

3.1.2 Windows

a. Buka browser,
kunjungi http://www.python.org/downloads/windows/
b. ATAU, klik direct
link https://www.python.org/ftp/python/3.8.1/python-3.8.1.exe
c. Buka (klik 2x) file installer python yang baru saja di download
d. Ikuti langkah instalasi sampai selesai

3.1.3 Mac OS

a. Buka browser, kunjungi http://www.python.org/download/mac/


b. Download versi terbaru Python untuk Macintosh
c. Buka file yang baru saja di download
d. Ikuti langkah instalasi sampai selesa

7
3.2 Menjalankan Python

Untuk menjalankan Python ada banyak cara yang bisa dilakukan. Anda bisa
menggunakan shell, terminal atau menggunakan IDE (Integrated Development
Environment). Di bawah ini adalah langkah-langkah menjalankan Python dengan
cara yang paling mudah.

3.2.1 Linux
a. Buka terminal CTRL + ALT + T
b. Ketik python maka Anda akan masuk ke Python shell.
c. Tuliskan script Python Anda, contoh: print("Selamat datang di
Python"). jika sudah tekan tombol ENTER, dan script Python
akan dijalankan/eksekusi.
d. Untuk keluar dari Python shell ketik exit()
Atau

a. Gunakan teks editor, misalnya gedit.


b. Buat file baru, dan ketikan script python Anda,
contoh: print("Selamat datang di Python").
c. Save As dengan ekstensi .py (contoh: cetak.py).
d. Jalankan file dengan menggunakan Terminal.
e. Buka terminal CTRL + ALT + T
f. Masuk ke direktori dimana file Python Anda disimpan (contoh: cd
/Users/admin/Desktop/).
g. Jalankan script Python dengan menggunakan python diikuti
dengan nama file (contoh: python cetak.py).
h. Script Python Anda akan dieksekusi/dijalankan.

3.2.2 Windows
a. Buka IDLE (python shell di windows), Anda bisa mencarinya di
tombol START.
b. Script Python Anda, contoh: print("Selamat datang di Python").
jika sudah tekan tombol ENTER, dan script Python akan
dijalankan/eksekusi.

8
c. Untuk keluar dari Python shell ketik exit()

atau

a. Untuk menjalankan script yang disimpan dalam file, buka IDLE


(python shell di windows), Anda bisa mencarinya di
tombol START.
b. Klik menu File - New File
c. Tulis script Python pada window yang muncul, contoh:
print(“Belajar Python”)
d. Simpan script lewat menu File - Save
e. Jalankan program dengan klik menu Run - Run Module

9
Atau

a. Download salah satu code editor Sublime, Notepad++, dll atau


download IDE PyCharm
b. Lalu jika menggunakan Sublime Text klik File – New File dan
simpan file tersebut dengan test.py
c. Lalu coba ketik print(“Hello World”)
d. Untuk eksekusinya silahkan buka CMD (Command Prompt)
e. Ubah path menuju tempat kita menyimpan file
f. Lalu ketik python test.py

10
3.2.3 Mac OS
a. Buka terminal.
b. Ketik python maka Anda akan masuk ke Python shell.
c. Tuliskan script Python Anda, contoh: print("Selamat datang di
Python"). jika sudah tekan tombol ENTER, dan script Python
akan dijalankan/eksekusi.
d. Untuk keluar dari Python shell ketik exit()
Atau
a. Gunakan teks editor.
b. Buat file baru, dan ketikan script python Anda,
contoh: print("Selamat datang di Python").
c. Save As dengan ekstensi .py (contoh: cetak.py).
d. Jalankan file dengan menggunakan Terminal.
e. Buka terminal CTRL+ALT+T
f. Masuk ke direktori dimana file Python Anda disimpan (contoh: cd
/Users/admin/Desktop/).
g. Jalankan script Python dengan menggunakan python diikuti
dengan nama file (contoh: python cetak.py).
h. Script Python Anda akan dieksekusi/dijalankan.

11
3.2.4 Online

a. Buka link https://colab.research.google.com/


b. Pilih “New notebook”
c. Lalu ketikan “Hello World”
d. Untuk menjalankannya bisa Shift + ENTER atau klik tombol play
di samping kiri

4. Sintaksis Dasar

4.1 Pengidentifikasi Python

Pengidentifikasi Python adalah nama yang digunakan untuk mengidentifikasi


variabel, fungsi, kelas, modul, atau objek lain. Pengidentifikasi dimulai dengan
huruf A sampai Z atau a sampai z atau garis bawah (_) diikuti dengan nol atau
lebih huruf, garis bawah dan angka (0 sampai 9).

Python tidak mengizinkan karakter tanda baca seperti @, $, dan % dalam


pengidentifikasi. Python adalah bahasa pemrograman yang peka huruf besar/kecil.
Dengan demikian, Manwoper dan manpower adalah dua pengidentifikasi
berbeda di Python.

Berikut adalah konvensi penamaan untuk pengidentifikasi python.

a. Nama kelas dimulai dengan huruf besar. Semua pengenal lainnya dimulai
dengan huruf kecil.

12
b. Memulai pengidentifikasi dengan satu garis bawah utama menunjukkan
bahwa pengidentifikasi bersifat pribadi.
c. Memulai pengidentifikasi dengan dua garis bawah di depan menunjukkan
pengidentifikasi yang sangat pribadi.

Jika pengidentifikasi juga diakhiri dengan dua garis bawah tambahan,


pengidentifikasi adalah nama khusus yang ditentukan bahasa.

4.2 Kata yang Dicadangkan

Daftar berikut menunjukkan kata kunci Python. Ini adalah kata-kata yang
dicadangkan dan Anda tidak dapat menggunakannya sebagai konstanta atau
variabel atau nama pengenal lainnya. Semua kata kunci Python hanya berisi huruf
kecil.

and exec not


assert finally or
break for pass
class from print
continue global raise
def if return
del import try
elif in while
else is with
except lambda yield

4.3 Baris dan Indentasi

Python tidak menyediakan kurung kurawal untuk menunjukkan blok kode


untuk definisi kelas dan fungsi atau kontrol aliran. Blok kode dilambangkan
dengan indentasi garis, yang diterapkan secara kaku.

Jumlah spasi dalam indentasi adalah variabel, tetapi semua pernyataan di dalam
blok harus diindentasi dengan jumlah yang sama. Sebagai contoh :

13
Berikut contoh kode blok yang menghasilkan error.

Jadi, dalam Python semua garis kontinu yang diindentasi dengan jumlah spasi
yang sama akan membentuk blok.

4.4 Satu Pernyataan dalam Beberapa Baris

Pernyataan dalam Python biasanya diakhiri dengan baris baru. Namun, Python
mengizinkan penggunaan karakter kelanjutan baris ( \ ) untuk menunjukkan
bahwa baris harus dilanjutkan. Sebagai contoh :

Pernyataan yang terdapat dalam tanda kurung [], {}, atau () tidak perlu
menggunakan karakter kelanjutan baris. Sebagai contoh.

4.5 Kutipan Dalam Python

Python menerima tanda kutip tunggal ('), ganda (") dan rangkap tiga (''' atau
""") untuk menunjukkan literal string, selama jenis kutipan yang sama memulai
dan mengakhiri string. Tanda kutip tiga digunakan untuk merentangkan string ke
beberapa baris. Misalnya, semua yang berikut ini legal:

14
4.6 Komentar dalam Python

Tanda tagar (#) yang tidak ada di dalam literal string merupakan awal dari
komentar. Semua karakter setelah # dan hingga akhir baris fisik adalah bagian dari
komentar dan Python Interpreter mengabaikannya.

Kode tersebut akan menghasilkan

Anda bisa menuliskan komentar di baris yang sama setelah pernyataan.

Anda bisa memberikan komentar di beberapa baris dengan cara

String yang dikutip tiga kali juga diabaikan oleh Python Interpreter dan dapat
digunakan sebagai komentar multi-baris.

4.7 Menggunakan Baris Kosong

Baris yang hanya berisi spasi, mungkin dengan komentar, dikenal sebagai
baris kosong dan Python benar-benar mengabaikannya. Dalam sesi interpreter
interaktif, Anda harus memasukkan baris fisik kosong untuk mengakhiri
pernyataan multi-baris.

15
4.8 Menunggu User

Baris program berikut menampilkan prompt, pernyataan yang mengatakan


"Tekan tombol enter untuk keluar", dan menunggu pengguna untuk mengambil
Tindakan.

Di sini, "\n\n" digunakan untuk membuat dua baris baru sebelum


menampilkan baris yang sebenarnya. Setelah pengguna menekan tombol, program
berakhir. Ini adalah trik yang bagus untuk menjaga jendela konsol tetap terbuka
sampai pengguna selesai dengan aplikasi.

4.9 Beberapa pernyataan dalam satu baris

Titik koma ( ; ) memungkinkan beberapa pernyataan pada satu baris


mengingat bahwa tidak ada pernyataan yang memulai blok kode baru. Berikut
adalah contoh snip menggunakan titik koma.

4.10 Beberapa pernyataan kelompok Suite

Sekelompok pernyataan individu, yang membuat satu blok kode disebut suite
di Python. Pernyataan majemuk atau kompleks, seperti if, while, def, dan class
memerlukan baris header dan suite. Baris header memulai pernyataan (dengan
kata kunci) dan diakhiri dengan titik dua ( : ) dan diikuti oleh satu atau lebih baris
yang membentuk rangkaian. Sebagai contoh

16
5. Tipe Variabel

5.1 Menerapkan Nilai ke Variabel

Variabel Python tidak memerlukan deklarasi eksplisit untuk memesan ruang


memori. Deklarasi terjadi secara otomatis ketika Anda menetapkan nilai ke
variabel. Tanda sama dengan (=) digunakan untuk memberikan nilai ke variabel.

Operan di sebelah kiri operator = adalah nama variabel dan operan di sebelah
kanan operator = adalah nilai yang disimpan dalam variabel. Sebagai contoh

Di sini, 100, 1000.0 dan "John" masing-masing adalah nilai yang ditetapkan
untuk variabel penghitung, mil, dan nama. Ini menghasilkan hasil berikut:

5.2 Multiple Assignment

Python memungkinkan Anda untuk menetapkan satu nilai ke beberapa


variabel secara bersamaan. Sebagai contoh

Di sini, objek integer dibuat dengan nilai 1, dan ketiga variabel ditugaskan ke
lokasi memori yang sama. Anda juga dapat menetapkan beberapa objek ke
beberapa variabel. Sebagai contoh

17
Di sini, dua objek integer dengan nilai 1 dan 2 ditugaskan ke variabel a dan b
masing-masing, dan satu objek string dengan nilai "john" ditugaskan ke variabel
c.

5.3 Tipe Data Standar

Data yang disimpan dalam memori dapat terdiri dari banyak jenis. Misalnya,
usia seseorang disimpan sebagai nilai numerik dan alamatnya disimpan sebagai
karakter alfanumerik. Python memiliki berbagai tipe data standar yang digunakan
untuk menentukan operasi yang mungkin dilakukan pada mereka dan metode
penyimpanan untuk masing-masingnya.

Python memiliki lima tipe data standar :

 Numbers
 String
 List
 Tuple
 Dictionary

5.4 Python Numbers

Tipe data Number menyimpan nilai numerik. Objek angka dibuat saat Anda
menetapkan nilai padanya. Sebagai contoh

Anda juga dapat menghapus referensi ke objek angka dengan menggunakan


pernyataan del. Sintaks dari pernyataan del adalah

Anda dapat menghapus satu objek atau beberapa objek dengan menggunakan
pernyataan del. Sebagai contoh

18
Python mendukung empat tipe numerik yang berbeda

 int (bilangan bulat)


 long (bilangan bulat Panjang, dapat juga direprentasikan dalam oktal dan
desimal)
 float (bilangan desimal/berkoma)
 complex (bilangan kompleks)

5.5 Python Strings

String dalam Python diidentifikasi sebagai serangkaian karakter yang


berdekatan yang diwakili dalam tanda kutip. Python memungkinkan pasangan
tanda kutip tunggal atau ganda. Subset string dapat diambil menggunakan
operator slice ([ ] dan [:] ) dengan indeks mulai dari 0 di awal string dan bekerja
dari -1 di akhir. Tanda plus (+) adalah operator rangkaian string dan tanda bintang
(*) adalah operator pengulangan. Sebagai contoh

Ini akan menghasilkan hasil sebagai berikut.

5.6 Python List

List adalah tipe data majemuk Python yang paling serbaguna. List berisi item
yang dipisahkan dengan koma dan diapit dalam tanda kurung siku ([]). Sampai
batas tertentu, daftar mirip dengan array di C. Satu perbedaan di antara mereka

19
adalah bahwa semua item yang termasuk dalam daftar dapat memiliki tipe data
yang berbeda.

Nilai yang disimpan dalam list dapat diakses menggunakan operator irisan ([ ]
dan [:]) dengan indeks mulai dari 0 di awal daftar dan bekerja hingga akhir -1.
Tanda plus (+) adalah operator rangkaian daftar, dan tanda bintang (*) adalah
operator pengulangan. Sebagai contoh

Ini akan menghasilkan hasil sebagai berikut

5.7 Python Tuples

Tuple adalah tipe data urutan lain yang mirip dengan daftar. Tuple terdiri dari
sejumlah nilai yang dipisahkan dengan koma. Tidak seperti daftar, bagaimanapun,
tupel diapit dalam tanda kurung.

Perbedaan utama antara daftar dan tupel adalah: Daftar diapit dalam tanda
kurung ( [ ] ) dan elemen serta ukurannya dapat diubah, sedangkan tupel diapit
dalam tanda kurung ( ( ) ) dan tidak dapat diperbarui. Tuple dapat dianggap
sebagai read-only list. Sebagai contoh

20
Ini akan menghasilkan hasil output sebagai berikut.

Kode berikut tidak valid dengan tuple, karena kami mencoba memperbarui
tuple, yang tidak diperbolehkan. Kasus serupa dimungkinkan dengan list.

5.8 Python Dictionary

Dictionary adalah jenis tipe tabel hash. Mereka bekerja seperti array asosiatif
atau hash yang ditemukan di Perl dan terdiri dari pasangan nilai kunci. Kunci
kamus dapat berupa hampir semua jenis Python, tetapi biasanya berupa angka
atau string. Nilai, di sisi lain, dapat berupa objek Python arbitrer apa pun.
Dictionary diapit oleh kurung kurawal ({}) dan nilai dapat ditetapkan dan diakses
menggunakan kurung siku ([]). Sebagai contoh

21
Ini akan menghasilkan hasil output sebagai berikut.

Dictionary tidak memiliki konsep keteraturan antar elemen. Tidak benar untuk
mengatakan bahwa unsur-unsur itu "rusak"; mereka hanya tidak teratur.

5.9 Konversi Tipe Data

Terkadang, Anda mungkin perlu melakukan konversi antara tipe bawaan.


Untuk mengonversi antar tipe, Anda cukup menggunakan nama tipe sebagai
fungsi. Ada beberapa fungsi bawaan untuk melakukan konversi dari satu tipe data
ke tipe data lainnya. Fungsi-fungsi ini mengembalikan objek baru yang mewakili
nilai yang dikonversi.

Fungsi Penggunaan
Mengonversi x menjadi bilangan bulat. base
int(x [,base])
menentukan basis jika x adalah string.
Mengonversi x menjadi bilangan bulat panjang.
long(x [,base] )
base menentukan basis jika x adalah string.
float(x) Mengonversi x ke bilangan floating-point.
complex(real [,imag]) Membuat bilangan kompleks.
str(x) Mengonversi objek x ke representasi string.
repr(x) Mengonversi objek x menjadi string ekspresi.
eval(str) Mengevaluasi string dan mengembalikan objek.
tuple(s) Mengonversi s menjadi tupel.
list(s) Mengonversi s ke list.
set(s) Mengonversi s menjadi satu set.
Membuat kamus. d harus berupa urutan tupel
dict(d)
(kunci, nilai).
frozenset(s) Mengonversi s ke set beku.
chr(x) Mengonversi bilangan bulat menjadi karakter.

22
Mengonversi bilangan bulat menjadi karakter
unichr(x)
Unicode.
ord(x) Mengonversi satu karakter ke nilai integernya.
Mengonversi bilangan bulat menjadi string
hex(x)
heksadesimal.
oct(x) Mengonversi bilangan bulat menjadi string oktal.

6. Operator Dasar

6.1 Tipe-tipe Operator

Bahasa Python mendukung jenis operator berikut.

 Operator Aritmatika
 Operator Perbandingan
 Operator Assignment
 Operator Bitwise
 Operator Logika
 Operator Membership
 Operator Identitas
6.2 Operator Aritmatika
Asumsikan variabel a berisi 10 dan variabel b berisi 20, maka

Operator Deskripsi Contoh


Menambahkan nilai di kedua sisi
Pertambahan (+) a + b = 30
operator.
Mengurangi operan tangan kanan dari
Pengurangan (-) a – b = -10
operan tangan kiri.
Perkalian (*) Mengalikan nilai di kedua sisi operator. a * b = 200
Membagi operan tangan kiri dengan
Pembagian (/) b/a=2
operan tangan kanan.
Membagi operan tangan kiri dengan
Modulus (%) operan tangan kanan dan b%a=0
mengembalikan sisanya.

23
Melakukan perhitungan eksponensial a**b =10 to the
Eksponen (**)
(daya) pada operator. power 20
Pembagian operan di mana hasilnya
adalah hasil bagi di mana digit setelah 9//2 = 4 dan
titik desimal dihilangkan. Tetapi jika 9.0//2.0 = 4.0, -
Floor Division (//)
salah satu operan negatif, hasilnya 11//3 = -4, -
berlantai, yaitu, dibulatkan menjauh 11.0//3 = -4.0
dari nol (menuju tak terhingga negatif).

6.3 Operator Perbandingan

Operator-operator ini membandingkan nilai-nilai di kedua sisinya dan


memutuskan hubungan di antara mereka. Mereka juga disebut operator relasional.

Asumsikan variabel a berisi 10 dan variabel b berisi 20, maka

Operator Deskripsi Contoh


Jika nilai dua operan sama, maka kondisinya (a == b) is not
==
menjadi benar. true.
Jika nilai dua operan tidak sama, maka
!= (a != b) is true.
kondisi menjadi benar.
(a <> b) is true.
Jika nilai dua operan tidak sama, maka
<> This is similar to
kondisi menjadi benar.
!= operator.
Jika nilai operan kiri lebih besar dari nilai
> (a > b) is not true.
operan kanan, maka kondisi menjadi benar.
Jika nilai operan kiri lebih kecil dari nilai
< (a < b) is true.
operan kanan, maka kondisi menjadi benar.
Jika nilai operan kiri lebih besar atau sama
(a >= b) is not
>= dengan nilai operan kanan, maka kondisi
true.
menjadi benar.
Jika nilai operan kiri lebih kecil atau sama
<= dengan nilai operan kanan, maka kondisi (a <= b) is true.
menjadi benar.

24
6.4 Operator Assignment

Asumsikan variabel a berisi 10 dan variabel b berisi 20, maka

Operator Deskripsi Contoh


Menetapkan nilai dari operan sisi kanan c = a + b memberikan
=
ke operan sisi kiri. nilai a + b ke dalam c
Menambahkan operan kanan ke operan
c += a setara dengan c
+= kiri dan menetapkan hasilnya ke operan
=c+a
kiri.
Mengurangkan operan kanan ke operan
c -= a setara dengan c =
-= kiri dan menetapkan hasilnya ke operan
c-a
kiri.
Mengalikan operan kanan ke operan kiri c *= a setara dengan c
*=
dan menetapkan hasilnya ke operan kiri. =c*a
Membagi operan kiri dengan operan
c /= a sama dengan c =
/= kanan dan menetapkan hasilnya ke
c/a
operan kiri.
Mengambil modulus menggunakan dua
c %= a setara dengan c
%= operan dan menetapkan hasilnya ke
=c%a
operan kiri.
Melakukan perhitungan eksponensial
c **= a setara dengan c
**= (daya) pada operator dan menetapkan
= c ** a
nilai ke operan kiri.
Melakukan pembagian lantai pada
c //= a sama dengan c =
//= operator dan menetapkan nilai ke operan
c // a
kiri.

6.5 Operator Bitwise

Operator bitwise bekerja pada bit dan melakukan operasi bit demi bit.
Asumsikan jika a = 60; dan b = 13; Sekarang dalam format biner nilainya masing-
masing adalah 0011 1100 dan 0000 1101. Tabel berikut mencantumkan operator

25
bitwise yang didukung oleh bahasa Python dengan masing-masing contoh di
dalamnya, kami menggunakan dua variabel di atas (a dan b) sebagai operan.

a = 0011 1100

b = 0000 1101

-----------------

a&b = 0000 1100

a|b = 0011 1101

a^b = 0011 0001

~a = 1100 0011

Berikut operator bitwise yang didukung oleh Bahasa python.

Operator Deskripsi Contoh


Operator menyalin bit ke hasil jika ada (a & b) (means 0000
&
di kedua operan. 1100)
Menyalin bit jika ada di salah satu (a | b) = 61 (means
|
operan. 0011 1101)
Menyalin bit jika diatur dalam satu (a ^ b) = 49 (means
^
operan tetapi tidak keduanya. 0011 0001)
(~a ) = -61 (means
1100 0011 in 2's
Itu unary dan memiliki efek 'membalik'
~ complement form
bit.
due to a signed
binary number)
Nilai operan kiri dipindahkan ke kiri
a << 2 = 240 (means
<< dengan jumlah bit yang ditentukan oleh
1111 0000)
operan kanan.
Nilai operan kiri dipindahkan ke kanan a >> 2 = 15 (means
>>
dengan jumlah bit yang ditentukan oleh 0000 1111)

26
operan kanan.

6.6 Operator Logika

Berikut operator logika yang didukung oleh bahasa Python. Asumsikan


variabel a menampung 10 dan variabel b menampung 20 maka

Operator Deskripsi Contoh


Jika kedua operan benar maka kondisi
and (a and b) is true.
menjadi benar.
Jika salah satu dari dua operan tidak nol
or (a or b) is true.
maka kondisi menjadi benar.
Digunakan untuk membalikkan keadaan not(a and b) is
not
logis operandnya. false.

6.7 Operator Membership

Operator Membership Python menguji keanggotaan secara berurutan, seperti


string, list, atau tuple. Ada dua operator keanggotaan seperti yang dijelaskan di
bawah ini

Operator Deskripsi Contoh


x in y, di sini
Mengevaluasi ke true jika menemukan
menghasilkan 1
in variabel dalam urutan yang ditentukan dan
jika x adalah
false jika sebaliknya.
anggota barisan y.
x not in y, di sini
Mengevaluasi ke true jika tidak
tidak menghasilkan
not in menemukan variabel dalam urutan yang
1 jika x bukan
ditentukan dan false jika sebaliknya.
anggota barisan y.

6.8 Operator Identitas

Operator identitas membandingkan lokasi memori dari dua objek. Ada dua
operator Identitas yang dijelaskan di bawah ini.

27
Operator Deskripsi Contoh
x is y, di sini
Mengevaluasi ke true jika variabel di adalah hasil 1 jika
is kedua sisi operator menunjuk ke objek id(x) sama dengan
yang sama dan false jika sebaliknya. id(y).

x is not y, di sini
adalah hasil 1 jika
Mengevaluasi menjadi false jika variabel
is not id(x) tidak sama
di kedua sisi operator menunjuk ke objek
dengan id(y).
yang sama dan true jika sebaliknya.

6.9 Prioritas Operator

Tabel berikut mencantumkan semua operator dari prioritas tertinggi hingga


terendah

No. Operator
1 **
2 ~ + -
3 * / % //
4 + -
5 >> <<
6 &
7 ^ |
8 <= < > >=
9 <> == !=
10 = %= /= //= -= += *= **=
11 is is not
12 in not in
13 not or and

28
7. Pengkondisian

7.1 Kondisi if

Pengambilan keputusan (kondisi if) digunakan untuk mengantisipasi kondisi


yang terjadi saat jalanya program dan menentukan tindakan apa yang akan
diambil sesuai dengan kondisi. Pada Python ada beberapa statement/kondisi
diantaranya adalah if, else dan elif Kondisi if digunakan untuk mengeksekusi kode
jika kondisi bernilai benar True. Jika kondisi bernilai salah False maka
statement/kondisi if tidak akan di-eksekusi.

Di bawah ini contoh penggunaan if pada Python

Dari contoh diatas, jika program dijalankan maka akan mencetak


string "Sembilan Lebih Besar Dari Angka Tujuh" sebanyak 1 kali yaitu pada if
pertama. Di if kedua statement bernilai salah, jadi perintah print("Sembilan
Lebih Besar Dari Angka Sepuluh") tidak akan dieksekusi.

7.2 Kondisi if else

Pengambilan keputusan (kondisi if else) tidak hanya digunakan untuk


menentukan tindakan apa yang akan diambil sesuai dengan kondisi, tetapi juga
digunakan untuk menentukan tindakan apa yang akan diambil/dijalankan jika
kondisi tidak sesuai.

Pada python ada beberapa statement/kondisi diantaranya adalah if, else dan
elif Kondisi if digunakan untuk mengeksekusi kode jika kondisi bernilai benar.
Kondisi if else adalah kondisi dimana jika pernyataan benar True maka kode

29
dalam if akan dieksekusi, tetapi jika bernilai salah False maka akan mengeksekusi
kode di dalam else.

Di bawah ini contoh penggunaan if else pada Python

Pada contoh diatas, jika program dijalankan maka akan mencetak


string "Maaf Anda Tidak Lulus" karena pernyataan pada if bernilai False.

7.3 Kondisi elif

Pengambilan keputusan (kondisi if elif) merupakan lanjutan/percabangan


logika dari kondisi if. Dengan elif kita bisa membuat kode program yang akan
menyeleksi beberapa kemungkinan yang bisa terjadi. Hampir sama dengan
kondisi else, bedanya kondisi elif bisa banyak dan tidak hanya satu.

Di bawah ini contoh penggunaan elif pada Python

30
Pada contoh diatas, jika program dijalankan maka akan mencetak string "Saya
akan libur".

7.4 and Dan or

Kata kunci and dan or adalah Operator Logika. Dimana berguna untuk
menambahkan syarat dari sebuah kondisi.

Di bawah ini contoh penggunaan and dan or pada Python

Pada contoh penggunaan and diatas, jika program dijalankan maka akan
mencetak string "D" , karena nilai 45 masuk ke kondisi lebih dari sama dengan
40 dan kurang dari 50. Dan untuk contoh penggunaan or diatas, jika program
dijalankan maka akan menceta string “Berlebih”, karena nilai 105 itu masuk ke
salah satu kondisi antara kurang dari 0 atau lebih dari 100.

7.5 Kondisi Bersarang

Sebuah kondisi bisa bersarang yang mana di dalam sebuah kondisi terdapat
kondisi lain.

Di bawah ini contoh kondisi Bersarang pada Python

31
Pada contoh kondisi bersarang diatas, jika program dijalankan maka akan
mencetak string “Saya Bukan Balita lagi” Lalu akan mencetak string “Saya
sudah deawasa!”. Karena umur 21 tahun pada kondisi tersebut akan mencetak
2x.

8. Perulangan
Secara umum, pernyataan pada bahasa pemrograman akan dieksekusi secara
berurutan. Pernyataan pertama dalam sebuah fungsi dijalankan pertama, diikuti
oleh yang kedua, dan seterusnya. Tetapi akan ada situasi dimana harus menulis
banyak kode, dimana kode tersebut sangat banyak. Jika dilakukan secara manual
maka hanya akan membuang-buang tenaga dengan menulis beratus-ratus bahkan
beribu-ribu kode. Untuk itu perlu menggunakan pengulangan di dalam bahasa
pemrograman Python.

Di dalam bahasa pemrograman Python pengulangan dibagi menjadi 3 bagian,


yaitu :

 While Loop
 For Loop
 Nested Loop

8.1 While Loop

Pengulangan While Loop di dalam bahasa pemrograman Python dieksesusi


statement berkali-kali selama kondisi bernilai benar atau True.

Dibawah ini adalah contoh penggunaan pengulangan While Loop.

32
Pada contoh di atas jika di eksekusi akan menghasilkan

Jadi contoh di contoh di atas pertama akan meriksa kondisi apakah variabel
count kurang dari 9, jika hasilnya True maka akan masuk ke dalam perulangan
yang mana mencetak kata “The count is: “, langkah di atas di ulang sampai
kondisi tidak memenuhi lagi.

8.2 For Loop

Pengulangan for pada Python memiliki kemampuan untuk mengulangi item


dari urutan apapun, seperti list atau string.
Dibawah ini adalah contoh penggunaan pengulangan For Loop.

Pada contoh di atas jika di eksekusi akan mencetak angka 1 samapi 5. Pada
contoh for sederhana akan mengulang berdasarkan isi item dari sebuah list ( list
akan di jelaskan lebih lanjut di materi berikutnya ). Untuk yang for range akan
mengulang berdasarkan range dari 1 sampai 5.

33
8.3 Nested Loop

Bahasa pemrograman Python memungkinkan penggunaan satu lingkaran di


dalam loop lain. Bagian berikut menunjukkan beberapa contoh untuk
menggambarkan konsep tersebut.

Dibawah ini adalah contoh penggunaan Nested Loop.

Pada contoh di atas akan mencetak angka-angka yang meupakan bilangan


prima, dimana melakukan perulangan di dalam perulangan untuk cek kondisi
bilangan.

8.4 Break Statement

Dengan Break, dapat menghentikan perulangan secara paksa walaupun dalam


kondisi benar.

Dibawah ini adalah contoh penggunaan Break.

Pada contoh di atas jika di jalankan akan mencetak angka dari 1 sampai 3,
karena ketika i sama dengan 3 maka akan break atau perulangan berhenti.

34
8.5 Continue Statement

Dengan pernyataan continue kita dapat menghentikan iterasi saat ini, dan
melanjutkan dengan yang berikutnya.

Dibawah ini adalah contoh penggunaan Continue.

Pada contoh di atas jika di jalankan akan mencetak

Jadi ketika i sama dengan 3 maka akan di skip bagian bawahnya, langsung
lanjut ke i selanjutnya.

9. Numbers
Number adalah tipe data Python yang menyimpan nilai numerik. Number
adalah tipe data yang tidak berubah. Ini berarti, mengubah nilai dari sejumlah tipe
data akan menghasilkan objek yang baru dialokasikan. Tipe data number adalah
tipe data berupa bilangan, dan pada umumnya digunakan dalam operasi
matematika. Contohnya yaitu penjumlahan, pengurangan, perkalian, pembagian,
dan sebagainya. Dalam bahasa Python ini ada tiga jenis tipe data yang sering
digunakan, yaitu : integer, float, dan complex number. Sama seperti tipe data lain
dalam Python, kita bisa langsung menginput angka- angka ini ke dalam sebuah
variabel.

35
Hasilnya

Hasilnya

Dalam hasil bisa kita lihat bahwa variabel “data1” yang berisi angka 100
merupakan tipe data int. Variabel “data2” berisi angka 100.5 merupakan tipe data
float, dan variabel “data3” yang diisi dengan angka 10j merupakan tipe data
complex.

9.1 Integer

Integer merupakan tipe data yang menampung atau menyimpan bilangan bulat
baik itu positif maupun negative. Contohnya 1, 20, 100, -1, -10, -100 dan lain
sebagainya. Yang unik di dalam python, nilai maksimum integer (angka bulat)
hanya dibatasi dengan jumlah memory. Berikut percobaannya:

36
Sebagai tambahan, di python versi 2, terdappat tipe data long untuk
menampung angka integer yang besar, tapi di dalam python versi 3, tipe data long
sudah tidak ada lagi dana digabung dengan tipe data int biasa.

9.2 Float

Untuk tipe data float, kita bisa menulisnya menggunakan notasi ilmiah atau
dalam bahasa inggris disebut dengan scientific notation. Dalam matematika,
notasi ilmiah harus dinyatakan dalam 1 angka di depan koma. Angka 125 jika
ditulis dalam bentuk notasi ilmiah menjadi 1,25 x 102.

Di dalam bahasa Python (dan sebagian besar bahasa pemrograman lain),


pangkat 10 ini diganti dengan huruf e atau E. Sebagai contoh 1,2 x 102 bisa ditulis
sebagai 1.2e2 atau 1.2E2. Berikut contoh penggunaannya:

Perhatikan isi variabel data1. Disana saya menginput angka 3e2 yang berarti 3
x 102 atau angka 300. Meskipun 300 ini terlihat seperti integer, namun karena
ditulis menggunakan notasi ilmiah, maka akan dianggap sebagai tipe data float,
yakni 300.0.

9.3 Complex

Dalam teori matematika, complex number atau bilangan kompleks bisa juga
disebut bilangan imajiner adalah sebutan untuk angka yang mengandung nilai
akar kuadrat dari -1. Angka akar kuadrat dari -1 ini ditulis dalam Python dengan
huruf j. Bilangan 5j sama artinya dengan 5√-1.

37
Dari ketiga tipe data ini, tipe data Complex Number adalah tipe data yang bisa
dikatakan unik dan jarang tersedia di bahasa pemograman lain. Dalam bahasa
python nilai maksimum dari tipe data integer hanya dibatasi dengan memori.
Sedangkan tipe data float maksimum adalah 1.7976931348623157e+308, ini sama
seperti tipe data float pada bahasa C++.

9.4 Konversi Tipe Data Number

Kita dapat mengonversi dari satu jenis ke jenis lainnya dengan metode int(),
float(), dan complex().

38
Dibawah ini adalah beberapa fungsi untuk mengkonversi tipe data number
Python.

 int(x) untuk meng-konversi x menjadi plain integer.


 long(x) untuk meng-konversi x menjadi long integer.
 float(x) untuk meng-konversi x menjadi floating point number.
 complex(x) untuk meng-konversi x menjadi complex number dengna real
part x dan imaginary part zero.
 complex(x, y) untuk meng-konversi x dan y menjadi complex number
dengan real part x dan imaginary part y. x dan numeric expressions y.

10. String
String adalah jenis yang paling populer di bahasa pemrograman. Kita bisa
membuatnya hanya dengan melampirkan karakter dalam tanda kutip. Python
memperlakukan tanda kutip tunggal sama dengan tanda kutip ganda. Membuat
string semudah memberi nilai pada sebuah variabel.

String pada Python adalah tipe data yang memuat satu karakter atau lebih
karakter (sequences of character) yang diapit oleh tanda petik tunggal (') atau
tanda petik ("). Dalam bahasa pemrograman Python, deklarasi suatu string tidak
dibedakan penggunaan tanda petik atau tanda petik tunggal. Hal ini berbeda
dengan bahasa pemrograman yang mendekati bahasa mesin seperti C++ dan C,
dimana penggunaan (') untuk mendefinisikan satu karakter dan (") untuk
mendefinisikan banyak karakter.

10.1 Penulisan Nilai String

Untuk menulis string serta menampilkan langsung, dapat menggunakan


syntax. Sistematika menampilkan string dengan syntax print().

 Syntax print() digunakan untuk menampilkan string berupa output pada


console.
 Di dalam syntax dituliskan string atau variabel.

39
10.2 Mendefinisikan Variabel String

Untuk mendefinisikan variabel string, praktiknya hampir sama dengan


mendefinisikan variabel numerik. Misalkan dibuat suatu variabel x yang berisi
nilai string "Kuy Belajar Python".

10.3 String Multiline

Kita dapat menetapkan stirng multiline ke variabel dengan menggunakan tiga


tanda kuti, baik itu kutip satu ataupun kutip dua.

Hasilnya, jeda baris yang dimasukkan akan sama seperti pada kode awal.

10.4 Mengindex String

Variabel yang menyimpan suatu nilai berupa barisan karakter, sehingga dapat
dilakukan index string untuk menampilkan karakter dengan index tertentu. Index
String menggunakan bilangan bulat dari 0.

nama_variabel[index_karakter]

Misalnya akan ditampilkan karakter dengan index 1 pada suatu variabel


string x berikut.

40
Terlihat variabel x memuat string "Hello World", dimana x[0] = "H", x[1] =
"e", x[2] = "l", dan seterusnya.

10.5 Panjang String

Untuk mengetahui panjang dari string, kita bisa menggunakan fungsi len().
Bukan hanya huruf saja yang dihitung, namun tanda-tanda dan spasi akan
terhitung dalam panjang.

10.6 Menguji keanggotaan karakter dalam String

Kita bisa menguji apakah sebuah substring ada terdapat di dalam suatu string
atau tidak. Caranya adalah dengan menggunakan kata kunci in apabila ada di
kalimat tersebut outpunya akan “true” jika tidak “false”. Sebaliknya, kata kunci
not in output ketika terdapat dalam kalimat adalah “false” apabila tidak ada di
kalimat “true”. Berikut contohnya:

41
10.7 Menggabung String

Kita bisa menggabungkan dua atau lebih string menjadi satu dengan
menggunakan operator +. Selain itu kita juga bisa melipatgandakan string
menggunakan operator *.

11. Struktur Data List

11.1 Pengertian List

List adalah tipe data yang berfungsi untuk menyimpan berbagai banyak dan
jenis data pada satu list. List dapat diisi dengan string, integer, float, maupun
object lain. Selain itu, list bersifat mutable dan ordered, alias bisa diedit-edit dan
bisa diakses via indeks.

Sifat List

Ordered (Bisa diakses via indeks) ✔

Mutable (Bisa diubah via indeks) ✔

Changeable (Bisa ditambah anggota baru atau dihapus) ✔

Unique (Semua anggota harus unik) ❌

11.2 Cara Membuat dan Mengakses List pada Python

List dapat kita buat seperti membuat variabel biasa, namun nilai variabelnya
diisi dengan tanda kurung siku ([ ]) yang setiap nilainya dipisahkan oleh sebuah
koma (,) . Bisa dilihat seperti berikut :

42
1. "pena" adalah tipe data string
2. 3 adalah tipe data integer
3. True adalah tipe data boolean
4. dan 2.5 adalah tipe data float

Setelah kita membuat dan menyimpan data pada sebuah list, kita dapat
mengakses data tersebut melalui index. Setiap list memiliki index dimulai dengan
angka 0,1,2, dan seterusnya.

Maka outpunya :

11.3 Cara Memanipulasi Data pada List

11.3.1 Menambahkan Data Baru

Kita bisa menambahkan data baru pada list dengan menggunakan


perintah append() untuk menambahkan data dari belakang, perintah
prepend() untuk menambahkan data di depan, dan perintah insert() untuk
menambahkan data pada index tertentu

43
11.3.2 Menghapus Data

Kita bisa menghapus data pada list menggunakan perintah del dan
remove(). Untuk contoh bisa dilihat dibawah :

11.3.3 Memotong (Slicing) Data

Slicing merupakan salah satu perintah di list untuk memotong data di


dalam list dengan syntax “nama_list[index awal, index akhir]”.

44
11.3.4 Operasi pada List

Ada beberapa operasi yang bisa dilakukan terhadap List, diantaranya:

 Penggabungan (+)
 Perkalian (*)

Sedangkan untuk operasi perkalian hanya dapat dilakukan dengan


bilangan.

11.4 List Multi Dimensi (List Bersarang)

List Multi Dimensi dikenal juga dengan List Bersarang, maksudnya yaitu
sebuah List dimana di dalam List tersebut mempunyai List lagi. List multi

45
dimensi biasanya digunakan untuk menyimpan struktur data yang kompleks
seperti tabel, matriks, graph, tree, dan sebagainya.

11.5 Methods yang Sering digunakan di List

Perintah (Methods) Deskripsi


Append() Menambahkan item baru ke list dari belakang
Clear() Menghapus semua item dari list
Copy() Menyalin List
Count() Menghitung jumlah item dalam List
Index() Mengetahui index pertama dari item yang dicari
Insert() Menambahkan item baru ke list dengan spesifik index
Pop() Menghapus item terakhir dalam list
Remove() Menghapus spesifik item dalam list
Reverse() Membalikan urutan list
Sort() Mengurutkan List
Len() Mencari tahu panjang list
Min() Mencari tahu nilai minimal atau nilai terkecil dalam list
Max() Mencari tahu nilai maksimal atau nilai terbesar dalam
list

12. Struktur Data Tuples

12.1 Pengertian Tuple

Tuple adalah tipe data yang sama seperti List yaitu berfungsi untuk
menyimpan sekumpulan data. Tuple juga dapat diisi dengan string, integer, float,
maupun object lain. Akan tetapi, Tuple bersifat immutable dan ordered, dalam
artian tuple sama dengan list tapi tidak bisa diedit-edit.

46
Sifat Tuple

Ordered (Bisa diakses via indeks) ✔

Mutable (Bisa diubah via indeks) ❌

Changeable (Bisa ditambah anggota baru atau dihapus) ❌

Unique (Semua anggota harus unik) ❌

12.2 Cara Membuat dan Mengakses Nilai pada Tuple

Cara membuat Tuple mirip dengan cara membuat List, namun perbedaannya
nilai variabelnya Tuple diisi dengan tanda kurung ( ( ) ) yang setiap nilainya
dipisahkan oleh sebuah koma (,) . Bisa dilihat seperti berikut :

12.3 Manipulasi Tuple

Tuple tidak mendukung perubahan data, penghapusan data, dan penambahan


data baru. Akan tetapi Tuple masih mendukung slicing data

12.4 Tuple Bersarang (Nested Tuple)

Tuple Nested atau Tuple bersarang artinya Tuple bisa diisi dengan Tuple.
Selain itu, Tuple juga bisa diisi dengan object lain, seperti List, Dictionary, object,
dan lain-lain.

Output :

47
12.5 Methods yang sering digunakan pada Tuple

Perintah (Methods) Deskripsi


Len() Mencari tahu panjang list
Min() Mencari tahu nilai minimal atau nilai terkecil dalam list
Max() Mencari tahu nilai maksimal atau nilai terbesar dalam
list
Tuple() Mengkonversi List ke Tuple
Cmp() Membandingkan element kedua Tuple

13. Dictionary

Dictionary Python berbeda dengan List ataupun Tuple. Karena setiap urutanya
berisi key dan value. Setiap key dipisahkan dari value-nya oleh titik dua (:), item
dipisahkan oleh koma, dan semuanya tertutup dalam kurung kurawal. Dictionary
kosong tanpa barang ditulis hanya dengan dua kurung kurawal, seperti ini: {}.
Nilai kamus bisa berupa tipe apa pun, namun key harus berupa tipe data yang
tidak berubah seperti string, angka, atau tupel.

13.1 Akses Nilai Dalam Dictionary Python

Untuk mengakses elemen Dictionary, disini dapat menggunakan tanda kurung


siku yang sudah dikenal bersama dengan key untuk mendapatkan nilainya.
Berikut adalah contoh sederhananya :

48
13.2 Update Nilai Dalam Dictionary Python

Disini dapat memperbarui Dictionary dengan menambahkan entri baru atau


pasangan nilai kunci, memodifikasi entri yang ada, atau menghapus entri yang ada
seperti ditunjukkan pada contoh sederhana yang diberikan di bawah ini.

13.3 Hapus Elemen Dictionary Python

Untuk dapat menghapus elemen Dictionary individual atau menghapus


keseluruhan isi Dictionary. Dan juga dapat menghapus seluruh Dictionary dalam
satu operasi. Untuk menghapus seluruh Dictionary secara eksplisit, cukup
gunakan del statement. Berikut adalah contoh sederhana :

13.4 Fungsi Build-in Pada Dictionary Python

Python menyertakan fungsi built-in sebagai berikut :

Fungsi Python Penjelasan

cmp(dict1, dict2) Membandingkan unsur keduanya.

49
Memberikan panjang total Dictionary. Ini sama dengan
len(dict)
jumlah item dalam Dictionary.
Menghasilkan representasi string yang dapat dicetak dari
str(dict)
Dictionary

Mengembalikan tipe variabel yang lulus. Jika variabel


type(variable) yang dilewatkan adalah Dictionary, maka akan
mengembalikan tipe Dictionary.

13.5 Method Build-in Pada Dictionary Python

Python menyertakan method built-in sebagai berikut :

Method Python Penjelasan

dict.clear() Menghapus semua elemen Dictionary

dict.copy() Mengembalikan salinan Dictionary

Buat Dictionary baru dengan kunci dari seq dan nilai


dict.fromkeys()
yang disetel ke nilai.

dict.get(key, For key, nilai pengembalian atau default jika tombol


default=None) tidak ada dalam Dictionary

Mengembalikan true jika key dalam Dictionary, false


dict.has_key(key)
sebaliknya
Mengembalikan daftar dari pasangan tuple dictionary
dict.items()
(key, value)
dict.keys() Mengembalikan daftar key dictionary

dict.setdefault(key, Mirip dengan get (), tapi akan mengatur dict [key] =
default=None) default jika kunci belum ada di dict

dict.update(dict2) Menambahkan pasangan kunci kata kunci dict2 ke dict

dict.values() Mengembalikan daftar nilai dictionary

50
14. Date and Time

Program Python dapat menangani tanggal dan waktu dengan beberapa cara.
Konversi antara format tanggal adalah tugas umum untuk komputer. Modul waktu
dan kalender Python melacak tanggal dan waktu.

14.1 Tick

Interval waktu adalah bilangan floating-point dalam satuan detik. Instansi


tertentu dalam waktu dinyatakan dalam hitungan detik sejak pukul 12:00 1 Januari
1970. Dibawah ini adalah contoh penggunanaya.

14.2 Time Tuple

Banyak fungsi waktu Python menangani waktu sebagai tuple dari 9 nomor,
seperti yang terdapat pada tabel di bawah ini.

Index Field Value


0 4-digit year 2008
1 Bulan 1 sampai 12
2 Hari 1 sampai 31
3 Jam 0 sampai 23
4 Menit 0 sampai 59
5 Detik 0 sampai 61
6 Hari dalam Minggu 0 sampai 6 (0 adalah Senin)
7 Hari dalam Bulan 1 sampai 366

8 Daylight savings -1, 0, 1, -1 means library determines DST

Tuple di atas setara dengan struktur struct_time. Struktur ini memiliki atribut
berikut

51
Index Atribut Value

0 tm_year 2008

1 tm_mon 1 sampai 12

2 tm_mday 1 sampai 31

3 tm_hour 0 sampai 23

4 tm_min 0 sampai 59

5 tm_sec 0 sampai 61

6 tm_wday 0 sampai 6 (0 adalah Senin)

7 tm_yday 1 sampai 366

8 tm_isdst -1, 0, 1, -1 means library determines DST

14.3 Waktu Saat ini

Untuk menerjemahkan waktu instan dari satu detik sejak nilai floating-point
ke waktu menjadi tupel waktu, lewati nilai floating-point ke fungsi (mis.,
Localtime) yang mengembalikan waktu tupel dengan semua sembilan item valid.

14.4 Waktu yang berformat

Anda dapat memformat kapan saja sesuai kebutuhan Anda, namun metode
sederhana untuk mendapatkan waktu dalam format yang mudah dibaca adalah
asctime ().

52
14.5 Kalender dalam Sebulan

Modul kalender memberikan berbagai macam metode untuk dimainkan


dengan kalender tahunan dan bulanan. Di sini, kami mencetak kalender untuk
bulan tertentu (Jan 2008).

14.6 Modul Time

Ada modul waktu populer yang tersedia dengan Python yang menyediakan
fungsi untuk bekerja dengan waktu dan untuk mengkonversi antara representasi.
Dibawah ini adalah tabel dari modul time pada python yang ada.

Fungsi Python Penjelasan

Diimbangi zona waktu DST lokal, dalam detik


di sebelah barat UTC, jika seseorang
didefinisikan. Ini negatif jika zona waktu DST
time.altzone
lokal berada di sebelah timur UTC (seperti di
Eropa Barat, termasuk Inggris). Gunakan saja
ini jika siang hari tidak nol.
Menerima time-tupel dan mengembalikan
time.asctime([tupletime]) string 24-karakter yang dapat dibaca seperti
„Tue Dec 11 18:07:14 2008‟.
Mengembalikan waktu CPU saat ini sebagai
jumlah floating-point detik. Untuk mengukur
time.clock() biaya komputasi dari berbagai pendekatan, nilai
time.clock lebih bermanfaat daripada time.time
().

Seperti asctime (localtime (detik)) dan tanpa


time.ctime([secs])
argumen seperti asctime ()

Menerima instan yang diungkapkan dalam


hitungan detik sejak zaman dan mengembalikan
time.gmtime([secs])
waktu tuple t dengan waktu UTC. Catatan:
t.tm_isdst selalu 0

53
Menerima instan yang dinyatakan dalam
hitungan detik sejak zaman dan mengembalikan
waktu tuple t dengan waktu setempat
time.localtime([secs])
(t.tm_isdst adalah 0 atau 1, tergantung pada
apakah DST berlaku seketika oleh peraturan
lokal).
Menerima instan dinyatakan sebagai time-tuple
di waktu setempat dan mengembalikan nilai
time.mktime(tupletime)
floating-point dengan instan yang dinyatakan
dalam hitungan detik sejak zaman.

time.sleep(secs) Menangguhkan panggilan untuk beberapa detik.

Menerima instan dinyatakan sebagai tupel


waktu di waktu lokal dan mengembalikan
time.strftime(fmt[,tupletime])
sebuah string yang mewakili instan seperti yang
ditentukan oleh string fmt.

time.strptime(str,fmt=‟%a Parses str sesuai dengan format string fmt dan


%b %d %H:%M:%S %Y‟) mengembalikan format instant-tuple.

Mengembalikan waktu saat ini secara instan,


time.time() jumlah detik mengambang beberapa detik sejak
zaman itu.
Mengatur ulang aturan konversi waktu yang
digunakan oleh rutinitas perpustakaan. Variabel
time.tzset()
lingkungan TZ menentukan bagaimana hal ini
dilakukan.

Ada dua atribut penting yang tersedia dengan modul waktu:

Method Python Penjelasan

Atribut time.timezone adalah offset dalam detik zona


time.timezone waktu lokal (tanpa DST) dari UTC (> 0 di Amerika; <= 0
di sebagian besar Eropa, Asia, Afrika).

Atribut time.tzname adalah sepasang string yang


time.tzname bergantung pada lokal, yang merupakan nama zona waktu
lokal tanpa dan dengan DST.

54
14.7 Modul Kalender

Modul kalender menyimpan fungsi yang berhubungan dengan kalender,


termasuk fungsi untuk mencetak kalender teks untuk bulan atau tahun tertentu.
Secara default, kalender mengambil hari Senin sebagai hari pertama dalam
minggu dan minggu sebagai yang terakhir. Untuk mengubah ini, fungsi call
calendar.setfirstweekday ().

Berikut adalah daftar fungsi yang tersedia dengan modul kalender:

Fungsi Python Penjelasan

Mengembalikan string multiline


dengan kalender untuk tahun tahun
yang diformat menjadi tiga kolom
yang dipisahkan oleh ruang c. W
calendar.calendar(year,w=2,l=1,c=6)
adalah lebar karakter setiap tanggal;
Setiap baris memiliki panjang 21 * w
+ 18 + 2 * c. L adalah jumlah baris
untuk setiap minggu.
Mengembalikan pengaturan saat ini
untuk hari kerja yang dimulai setiap
calendar.firstweekday( ) minggu. Secara default, saat kalender
pertama kali diimpor, ini adalah 0,
yang berarti Senin.

Pengembalian True jika tahun adalah


calendar.isleap(year)
tahun kabisat; Jika tidak, False

Mengembalikan jumlah lompatan hari


calendar.leapdays(y1,y2) dalam tahun-tahun dalam rentang (y1,
y2).
Mengembalikan string multiline
dengan kalender untuk bulan bulan
tahun, satu baris per minggu ditambah
calendar.month(year,month,w=2,l=1) dua baris header. W adalah lebar
karakter setiap tanggal; Setiap baris
memiliki panjang 7 * w + 6. L adalah
jumlah baris untuk setiap minggu.

55
Mengembalikan daftar daftar int.
Setiap sublist menunjukkan
seminggu. Hari di luar bulan bulan
calendar.monthcalendar(year,month)
tahun diatur ke 0; Hari dalam bulan
ditetapkan ke hari ke bulan, 1 dan ke
atas.
Mengembalikan dua bilangan bulat.
Yang pertama adalah kode hari kerja
untuk hari pertama bulan bulan di
calendar.monthrange(year,month) tahun; Yang kedua adalah jumlah hari
dalam sebulan. Kode hari kerja adalah
0 (Senin) sampai 6 (Minggu); Angka
bulan adalah 1 sampai 12.
Seperti kalender cetak.calendar
calendar.prcal(year,w=2,l=1,c=6)
(tahun, w, l, c).
Seperti kalender cetak. Bulan (tahun,
calendar.prmonth(year,month,w=2,l=1)
bulan, w, l).
Mengatur hari pertama setiap minggu
sampai hari kerja kode hari kerja.
calendar.setfirstweekday(weekday)
Kode hari kerja adalah 0 (Senin)
sampai 6 (Minggu).
Kebalikan dari time.gmtime:
menerima waktu instan dalam bentuk
tupel waktu dan mengembalikan detik
calendar.timegm(tupletime)
yang sama seperti jumlah floating-
point dalam hitungan detik sejak
zaman.
Mengembalikan kode hari kerja untuk
tanggal yang ditentukan. Kode hari
calendar.weekday(year,month,day) kerja adalah 0 (Senin) sampai 6
(Minggu); Bulan adalah 1 (Januari)
sampai 12 (Desember).

15. Fungsi ( Function )

15.1 Pegertian

Fungsi adalah blok kode terorganisir yang dapat digunakan kembali untuk
melakukan sebuah tindakan/action. Fungsi memberikan modularitas yang lebih
baik untuk aplikasi Anda dan tingkat penggunaan kode yang tinggi.

56
15.2 Mendefinisikan fungsi

Cara mendefinisikan fungsi dalam python cukup dengan menggunakan kata


kunci def kemudian diikuti dengan nama fungsinya dan tanda kurung. Contoh

Mari kita pahami blok kode diatas. def merupakan kata kunci untuk
mendefinisikan suatu fungsi. hello_fungsi yang merupakan nama dari fungsi
tersebut dan diikuti oleh tanda kurung (tanda kurung ini akan dibahas pada
pembahasan selanjutnya). Blok kode dalam setiap dimulai dengan titik dua (:).

Ketika fungsi tersebut dipanggil maka semua baris kode yang ada di dalam
blok kode fungsi tersebut akan dijalankan. Untuk contoh diatas, ketika fungsi
dipanggil maka akan menampilkan kalimat “Ini adalah fungsi”.

Berikut adalah contoh fungsi dengan blok kode yang lebih panjang:

15.3 Memanggil Fungsi

Seperti yang sudah dijelaskan sebelumnya fungsi adalah blok kode yang dapat
digunakan kembali, artinya fungsi yang sudah kita buat dapat kita gunakan
berkali-kali sesuai dengan kebutuhan kita. Lantas bagaimana cara
menggunakan/memanggil suatu fungsi? Cara nya kita tinggal menuliskan nama
fungsi dan diikuti oleh tanda kurung (()). Contoh:

57
Hasilnya:

Jika dipanggil 5x:

Hasilnya:

15.4 Fungsi dengan Parameter

15.4.1 Mendefinisikan Fungsi dengan parameter

Parameter adalah variabel yang menampung nilai untuk diproses


didalam fungsi. Parameter dapat dibuat didalam tanda kurung (()) ketika
mendefinisikan fungsi. Contoh:

Pada contoh diatas, kita membuat fungsi bicara() dengan parameter


kalimat. Lalu nilai dari parameter kalimat tersebut kita tampilkan
menggunakan fungsi print().

15.4.2 Memanggil fungsi dengan Argumen

Lalu bagaimana cara memanggil fungsi yang memiliki parameter? Kita


dapat memanggil fungsi tersebut dengan memberinya argumen. Contoh:

58
Argumen adalah nilai yang akan mengisi parameter dalam suatu
fungsi. Pada kode diatas kita memanggil fungsi bicara() dengan argumen
“Halo semuanya!”. Hasilnya:

Suatu fungsi dapat memiliki parameter sebanyak apapun, untuk


memisahkan tiap parameter nya gunakan tanda koma (,). Contoh:

Hasilnya

15.5 Fungsi yang mengembalikan nilai

Fungsi yang sudah kita buat sejauh ini adalah fungsi yang tidak
mengembalikan nilai atau biasa disebut juga dengan istilah prosedur. Ketika
prosedur dipanggil maka blok kode yang didalamnya akan dijalankan, berbeda
dengan fungsi yang mengembalikan nilai, ketika fungsi tersebut dipanggil bukan
hanya blok kode nya saja yang dijalankan tetapi fungsi tersebut akan
menghasilkan suatu nilai.

15.5.1 Mendefinisikan Fungsi yang mengembalikan Nilai

Untuk mendefinisikan fungsi yang mengembalikan nilai kita dapat


menggunakan kata kunci return.

59
Fungsi di atas akan mengalikan dua buah parameter lalu disimpan
dalam variabel hasil, setelah itu nilai dari variabel hasil akan
dikembalikan.

15.5.2 Memanggil fungsi yang mengembalikan

Untuk memanggil fungsi tersebut sama seperti dengan yang


sebelumnya sudah kita lakukan.

Kosong? Mengapa demikian? Ini terjadi karena kita tidak


menampilkan apapun ke layar. Berbeda dengan prosedur yang sebelumnya
kita buat, ketika prosedur tersebut dipanggil maka prosedur akan
menampilkan argumen ke layar. Sedangkan pada fungsi ini kita hanya
mengembalikan nilai dan tidak memanggilnya.

Untuk menampilkan nilai ke layar kita dapat menyimpan nilai yang


dikembalikan ke dalam suatu variabel seperti contoh berikut:

Hasilnya:

60
15.6 Variabel Lokal dan Variabel Global

Variabel Global adalah variabel yang bisa diakses dari semua fungsi,
sedangkan variabel lokal hanya bisa diakses di dalam fungsi tempat ia berada saja.

Pada Python, urutan pengaksesan variabel (scope) dikenal dengan sebutan


LGB (Local, Global, dan Build-in). Jadi program python mulai mencari vairabel
lokal terlebih dahulu, kalau ada maka itu yang digunakan. Tapi kalau tidak ada,
pencarian terus ke Global, dan Build-in. Variabel Build-in adalah variabel yang
sudah ada di dalam Python. Contoh:

Terdapat dua variabel nama. Variabel nama yang berada di dalam fungsi
help() adalah variabel lokal. Jadi, saat kita memanggil fungsi help() maka nilai
yang akan tampil adalah nilai yang ada di dalam fungsi help(). Hasilnya:

16. Modul (Modules )

Ketika kita mengerjakan suatu project, maka tidak mungkin kita mengetikkan
seluruh kode dalam satu file, karena kode akan sangat sulit untuk dibaca dan

61
diubah. Oleh karena itu kita dapat memisahkan setiap kode kedalam file yang
berbeda-beda. Untuk itu kita dapat menggunakan konsep modul.

16.1 Pengertian

Modul adalah file yang terdiri dari kode Python. Modul dapat mendefinisikan
fungsi, kelas dan variabel. Modul juga bisa menyertakan kode yang bisa
dijalankan (runnable).

16.2 Import Statement

Misal kita memiliki dua file yang bernama rumus.py dan kalkulator.py. File
rumus.py berisi fungsi-fungsi untuk melakukan perhitungan. File kalkulator.py
berisi program kalkulator sederhana.

File rumus.py:

File kalkulator.py:

62
Seperti yang dapat dilihat, terdapat error pada file kalkulator.py hal ini terjadi
dikarenakan fungsi dan variabel yang ingin ditampilkan berada pada file
rumus.py. Agar file kalkulator.py dapat membaca fungsi-fungsi tersebut maka kita
dapat menggunakan import statement. Ubah file kalkulator.py menjadi seperti
berikut

Untuk menggunakan fungsi dan variabel dari rumus.py gunakan cara seperti
diatas yakni dengan mengetikkan nama_modul.nama_fungsi_atau_variabel.
Hasilnya:

16.3 From … import statement

Dengan import statement kita dapat menggunakan seluruh fungsi dan/atau


variabel yang berada di dalam file berbeda. Bagaimana jika kita hanya ingin
menggunakan satu fungsi atau satu variabel secara spesifik? Kita dapat
menggunakan from...import statement. Contoh:

Kita mengambil variabel PHI dari modul rumus.py. Dengan begitu kita tidak
perlu mengetikkan nama modul setiap ingin menggunakan variabel dari file PHI.
Kita juga dapat mengambil lebih dari satu fungsi dan/atau variabel:

63
16.4 From … import * statement

Tanda bintang (*) dapat kita artikan sebagai all (semua). Jadi dengan
menggunakan from...import * statement kita dapat mengambil semua fungsi
dan/atau variabel dari suatu modul. Contohnya:

17. Files I/O

17.1 Fungsi I/O Dasar

 Mencetak Keluaran (Output) ke Layar

Cara paling sederhana untuk menghasilkan keluaran adalah dengan


menggunakan pernyataan print(). Fungsi ini mengubah expression yang
anda berikan menjadi string dan menulis hasilnya ke output standar.

 Membaca Masukan (Input) dari Keyboard

Untuk membaca masukan dari keyboard, Python menyediakan built-in


function input().

Contoh:

Output

64
17.2 Fungsi I/O Lanjutan

Sampai sekarang, kita hanya mengambil input dari konsol dan menulisnya
kembali ke konsol untuk berinteraksi dengan pengguna. Terkadang, tidak cukup
hanya menampilkan data di konsol. Data yang akan ditampilkan mungkin sangat
besar, dan hanya sejumlah data saja yang dapat ditampilkan di konsol karena
memori tidak stabil dan tidak mungkin untuk memulihkan data yang dihasilkan
secara terprogram berulang kali.

Penanganan file (File handling) memainkan peran penting ketika data perlu
disimpan secara permanen ke dalam file. File adalah lokasi bernama pada disk
untuk menyimpan informasi terkait.

Dalam Python, file diperlakukan sebagai teks atau biner. File mungkin dalam
format teks atau biner, dan setiap baris file diakhiri dengan karakter khusus. Oleh
karena itu, operasi file dapat dilakukan dalam urutan berikut.

 Buka file
 Baca atau tulis - Melakukan operasi
 Tutup file

17.2.1 Buka File

Sebelum Anda dapat membaca atau menulis file, Anda harus


membukanya menggunakan built-in function open() Python. Fungsi ini
membuat objek file, yang akan digunakan untuk memanggil metode
dukungan lain yang terkait dengannya.

Keterangan:

 file_name: Argumen file_name adalah nilai string yang berisi


nama file yang ingin Anda akses.
 access_mode: Access_mode menentukan mode di mana file harus
dibuka, yaitu, membaca, menulis, menambahkan, dll. Daftar

65
lengkap nilai yang mungkin diberikan di bawah ini dalam tabel. Ini
adalah parameter opsional dan mode akses file default dibaca (r).
 buffering: Jika nilai buffering diatur ke 0, tidak ada buffering yang
terjadi. Jika nilai buffering adalah 1, buffering baris dilakukan saat
mengakses file. Jika Anda menentukan nilai buffering sebagai
bilangan bulat yang lebih besar dari 1, maka tindakan buffering
dilakukan dengan ukuran buffer yang ditunjukkan. Jika negatif,
ukuran buffer adalah default sistem (perilaku default).

17.2.2 Tutup File

Metode close() dari objek file menghapus informasi yang tidak tertulis
dan menutup objek file, setelah itu tidak ada lagi penulisan yang dapat
dilakukan.

Python secara otomatis menutup file ketika objek referensi file


dipindahkan ke file lain. Ini adalah praktik yang baik untuk menggunakan
metode close() untuk menutup file.

17.2.3 Menulis File

Metode write() menulis string apa pun ke file yang terbuka. Penting
untuk dicatat bahwa string Python dapat memiliki data biner dan bukan
hanya teks. Metode write() tidak menambahkan karakter baris baru ('\n')
ke akhir string

66
Contoh:

Output:

Metode di atas akan membuat file hello.txt dan akan menulis konten
yang diberikan dalam file itu dan akhirnya akan menutup file itu. Jika
Anda akan membuka file ini, itu akan memiliki konten berikut.

17.2.4 Membaca File

Metode read() membaca string dari file yang terbuka. Penting untuk
dicatat bahwa string Python dapat memiliki data biner selain data teks.

Di sini, parameter yang diteruskan adalah jumlah byte yang akan


dibaca dari file yang dibuka. Metode ini mulai membaca dari awal file dan
jika hitungannya hilang, maka mencoba membaca sebanyak mungkin,
mungkin sampai akhir file.

Contoh:

67
Output:

18. Exceptions

Exceptions dapat didefinisikan sebagai kondisi yang tidak biasa dalam suatu
program yang mengakibatkan gangguan pada aliran program.

Python menyediakan dua fitur yang sangat penting untuk menangani kondisi
tersebut dalam program Python Anda dan menambahkan kemampuan debugging
di dalamnya.

 Exceptions handling
 Assertions

18.1 Exceptions Handling

Masalah yang Ditimbulkan Jika tidak Memakai Exceptions Handling.


Misalkan kita memiliki dua variabel a dan b, yang mengambil input dari pengguna
dan melakukan pembagian nilai-nilai ini. Bagaimana jika pengguna memasukkan
angka nol sebagai penyebut? Mari kita lihat contoh berikut.

Contoh:

Output:

Program di atas secara sintaksis benar, tetapi tetap mengalami error karena
input yang tidak biasa. Pemrograman semacam itu mungkin tidak cocok atau

68
direkomendasikan untuk proyek karena proyek memerlukan eksekusi tanpa
gangguan. Itu sebabnya exceptions handling memainkan peran penting dalam
menangani pengecualian tak terduga ini. Kita dapat menangani pengecualian
tersebut dengan cara berikut.

Jika program Python berisi kode mencurigakan yang mungkin menyebabkan


terjadi exceptions, kita harus menempatkan kode itu di blok try. Blok try harus
diikuti dengan statement except, yang berisi blok kode yang akan dieksekusi jika
ada pengecualian pada blok try.

Contoh:

Output:

Kita juga dapat menggunakan pernyataan else setelah pernyataan try-except.


Di dalam blok else kita dapat menempatkan kode yang akan dieksekusi dalam
skenario jika tidak ada pengecualian yang terjadi di blok try.

69
Contoh:

Ouput:

Selain itu, Python juga menyediakan pernyataan finally sebagai opsional.


Blok pernyataan finally selalu dieksekusi walaupun terjadi pengecualian ataupun
tidak.

70
Contoh:

Output:

18.2 Assertions

Assertions adalah ekspresi sederhana boolean yang memeriksa apakah kondisi


kembali benar atau tidak. Jika benar, program ini tidak apa-apa dan pindah ke
baris berikutnya kode. Namun, jika itu palsu, program berhenti dan melempar
kesalahan. Programmer sering menempatkan assertions di awal fungsi untuk
memeriksa input yang valid, dan setelah pemanggilan fungsi untuk memeriksa
output yang valid.

Sintaks:

Contoh:

71
Output:

72

Anda mungkin juga menyukai