Anda di halaman 1dari 60

Modul Pemrograman Python Dasar

Disusun Oleh :
WILLY PRATAMA
0102509025

















PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS AL AZHAR INDONESIA
2014
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

1
Kata Pengantar


Puji dan syukur kita panjatkan atas kehadirat- Nya karena dengan rahmatnya modul ini
dapat disusun hingga versi pertama ini. Python merupakan salah satu bahasa pemrograman dan
penunjang pada perkembangan FOSS dan Linux. Tidak hanya kedua itu di perkembangan teknologi
lainnya Python hadir sebagai salah satu teknologi mumpuni yang patut kita pelajari. Biasanya
Python sudah tertanam di distro distro tertentu seperti Ubuntu, Fedora, dan Slackware. Python
sendiri merupakan bahasa pemrograman yang mendukung paradigma object oriented programming
ataupun scripting. Python hadir di ranah sistem operasi, virtualisasi, jaringan komputer, grafika
komputer, kecerdasan buatan, teknologi web, game, dan lain sebagainya.

Modul ini ditujukan bagi programmer pemula atau yang sudah ahli tapi ingin mencoba
bahasa pemrograman Python. Modul ini juga merupakan penghantar untuk maju ke teknologi
Python lainnya.

Kritik dan saran kami tunggu demi kemajuan modul ini. Semoga Anda mendapatkan
manfaat dalam mempelajari bahasa pemrograman Python dan ikut memajukan teknologi informasi
dan komunikasi di Indonesia.


Jakarta, 1 Mei 2014


Willy Pratama
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

2
DAFTAR ISI
Kata Pengantar ..................................................................................................................................... 1
1. Pengenalan Python ........................................................................................................................... 4
1.1 Sejarah Python ............................................................................................................................. 4
1.2 Menggunakan Python Interpreter Prompt dan Python Compiler ................................................. 4
1.3 Elemen Dasar Python.................................................................................................................... 5
a) Himpunan Karakter ................................................................................................................... 5
b) Pengenal .................................................................................................................................... 6
c) Kata Kunci ................................................................................................................................ 6
2. Instalasi Python ................................................................................................................................ 7
2.1 Lingkungan Python ...................................................................................................................... 7
2.2 Install Python di Linux ................................................................................................................. 7
2.3 Install Python di Windows ........................................................................................................... 8
3. Operasi Input, Output dan Assignment ............................................................................................ 9
3.1 Operasi Input................................................................................................................................. 9
Membaca Masukan ...................................................................................................................... 9
Membaca Dari File Text ............................................................................................................ 10
3.2 Operasi Output ............................................................................................................................ 13
Mencetak ke Layar ..................................................................................................................... 13
Menyimpan Ke File ................................................................................................................... 14
3.3 Operasi Assignment .................................................................................................................... 16
4. Mengenal Tipe Data dan Operator ................................................................................................. 18
4.1 Tipe Data di Python .................................................................................................................... 18
4.2 Operator ...................................................................................................................................... 21
5. Perintah Kondisional ...................................................................................................................... 25
5.1 Satu Kondisi (if).......................................................................................................................... 25
5.2 Dua Kondisi (if - else) ................................................................................................................ 25
5.3 Lebih dari dua kondisi (if - elif).................................................................................................. 26
5.4 Kondisi : if bersarang (nested if) ................................................................................................ 28
6. Menyusun Pengulangan ................................................................................................................. 29
6.1 Mengenal Pengulangan for dan while ................................................................................. 29
6.2 Menyusun Pengulangan dengan for ........................................................................................ 29
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

3
6.3 Memahami Function range...................................................................................................... 32
6.4 Menggunakan Function range pada Pengulangan for ......................................................... 34
6.5 Menyusun Pengulangan dengan while .................................................................................... 38
7. Mengenal Data Struktur Python Tingkat Lanjut ............................................................................ 42
7.1 Mengenal List, Dictionary dan Tuple ......................................................................................... 42
7.2 Cara Akses List, Tuple, dan Dictionary ...................................................................................... 43
7.3 Mengubah Isi List, Tuple, dan Dictionary .................................................................................. 46
7.4 Menambahkan Data pada List, Tuple, dan Dictionary ............................................................... 48
7.5 Menghapus Isi List, Tuple, dan Dictionary ................................................................................ 50
7.6 Menghapus List, Tuple, dan Dictionary ..................................................................................... 52
7.7 Menggunakan Built-in Function pada List, Tuple, dan Dictionary ............................................ 54
Daftar Pustaka .................................................................................................................................... 59
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

4
1. Pengenalan Python
1.1 Sejarah Python
Bahasa pemrograman Python pertama kali dikembangkan oleh Guido van Rossum
pada tahun 1990 di CWI, Belanda. Python termasuk bahasa pemrograman tingkat tinggi
(high-level language) dan juga merupakan bahasa pemrograman dinamis berorientasi objek
(object-oriented dynamic language). Python tidak hanya sebagai bahasa lain untuk dapat
membuat suatu aplikasi, tapi merupakan sebuah bahasa jenis baru yang menawarkan :
Berorientasi objek
Struktur pemrograman yang handal
Arsitektur yang dapat dikembangkan (extensible) dan ditanam (embedable) dalam
bahasa lain
Sintaks yang mudah dibaca
Dengan ciri orientasi objeknya, Python dapat digabungkan dengan modul lain yang
ditulis dengan bahasa pemrograman C++. Python sebagai tools yang berdiri sendiri,
sering dipakai untuk system administrator (di Red Hat Linux konfigurasi network bisa
menggunakan netcfg yang ditulis dengan Python dan berantarmuka grafis), antar-muka
grafis, script internet, dan pemrograman database.

1.2 Menggunakan Python Interpreter Prompt dan Python Compiler
Untuk menggunakan Python, kita bisa memilih dua cara yang umum digunakan,
yaitu lewat Python Interpreter Prompt dan mengeksekusi file Python dari command line .
Anda bisa menggunakan interpreter prompt untuk sekedar menulis program kecil, atau
menguji coba modul modul yang dimiliki Python. Untuk menggunakannya jika sistem
operasi Anda sudah di-install Python, pada aplikasi python tinggal membuka program python.
Pada linux coba anda tulis perintah python pada terminal Linux anda. Dan jika pengaturan
telah ter-install dengan benar, akan muncul gambar seperti berikut:

Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

5

Gambar 1.1 Python Interpreter Prompt

Untuk keluar dari mode interpreter prompt, gunakan kombinasi ctrl+d atau ctrl+z kemudian
tekan enter atau menekan tombol X yang ada di sudut kanan atas.

Lalu jika ingin menggunakan Python tanpa melalui interpreter prompt, Anda bisa
menggunakan text editor yang Anda sering gunakan dan simpan file Python dengan ekstensi
file *.py . Di dalam linux maupun windows, script Python dapat dibuat sedemikian rupa
sehingga bisa langsung dieksekusi, seperti shell- script menggunakan command prompt
(cmd), dengan mengarahkan ke direktori file tersebut seperti gambar berikut ini :


Gambar 1.2 Executable Python Script pada windows

Dari gambar diatas dapat kita lihat direktori yang mengarah ke dalam program Python yang
berada di C:\Python27, dengan script yang akan dieksekusi dengan nama file bacaseq1.py.

1.3 Elemen Dasar Python
a) Himpunan Karakter
Semua karakter di Python terdiri dari huruf besar, huruf kecil, angka dan simbol-simbol
lainnya yang terdapat pada keyboard dapat digunakan untuk menandai atau memberi
nama terhadap sebuah data atau object.
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

6
b) Pengenal
Pengenal (identifier) merupakan suatu nama yang biasa dipakai oleh user (programmer)
untuk menamakan : variabel, konstanta, tipe data, fungsi, label, objek, serta hal-hal lain.
Penamaan tersebut dapat berupa huruf, angka, maupun garis bawah asalkan bukan kata
kunci (keywords), penamaan di Python merupakan penamaan yang case sensitive,
maksudnya huruf besar dan huruf kecil berbeda.
Contoh :
No_mahasiswa berbeda dengan no_mahasiswa

c) Kata Kunci
Kata kunci (keywords) merupakan pengenal ke sistem Python yang mempunyai arti
khusus bagi interpreter Python. Kegunaan dari kata kunci ini tidak dapat dirubah.
Jangan menggunakan kata kunci untuk keperluan pribadi user (programmer) yang
diartikan lain selain dari arti yang ditetapkan oleh interpreter Python menggunakan
huruf kecil.
Tabel dibawah ini mencantumkan kata kunci yang ada di Python :
Tabel 1.1 kata kunci yang terdapat pada python
and elif global or
assert else if pass
break except import print
class exec in raise
continue finally is return
def for lambda try
del from not while

Catatan : Kata kunci diatas tidak boleh digunakan sebagai pengenal (identifier) untuk
suatu variabel.
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

7
2. Instalasi Python
2.1 Lingkungan Python
Dari http://www.tutorialspoint.com/python/python_environment.htm, terdapat
beberapa lingkungan yang dapat dihuni Python. Berikut adalah beberapa lingkungan sistem
operasi yang bisa dihuni Python:

Win 9x/NT/2000
Unix (Solaris, Linux, FreeBSD, AIX, HP/UX, SunOS, IRIX, dan lain -
lain)
Macintosh (Intel, PPC, 68K)
OS/2
DOS
PalmOS
Nokia mobile phones
Windows CE
Acorn/RISC
OS BeOS
Amiga
VMS/Open VM
QNX
VxWorks
Psion
Python juga dirancang ulang di Java dan .NET Virtual Machine

2.2 Install Python di Linux
1. Buka terminal pada linux dengan menekan ctrl+alt+t
2. Lalu ketik pada terminal : sudo apt-get install python
3. Tunggu hingga proses download dan install selesai
4. Python siap digunakan

Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

8
Catatan :
Di beberapa sistem operasi kadang sudah tertanam di dalamnya dan langsung bisa digunakan
seperti di Ubuntu dan Fedora, untuk mengeceknya ketik python pada terminal anda maka
akan terlihat apakah sudah terinstall atau belum python pada operating sistem anda.

2.3 Install Python di Windows
1. Download python dari http://www.python.org/download
2. Ikuti alur proses instalasi sampai dengan selesai
3. Biasanya hasil instalasi Python disimpan di direktori C:/PythonX.X dimana X.X
adalah versi dari Python yang digunakan
4. Buka Control Panel System Advanced Environment Variables
5. Klik variabel yang dinamakan PATH di bagian System Variables
6. Edit dan tambahkan ;C\PythonX.X tanpa tanda petik X.X adalah versi python anda
7. Tekan ok, dan siap dijalankan di cmd


Gambar 2.1 Konfigurasi pada path
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

9
3. Operasi Input, Output dan Assignment
Setelah mempelajari sintaks dasar bahasa Python kita tidak boleh melupakan salah
satu komponen penting dalam sebuah program, yaitu input dan output. Input dan output ini
tidak hanya dari keyboard dan layar saja. Tetapi meliputi semua proses transfer data secara
umum.
3.1 Operasi Input
Proses input bisa berupa proses baca dari keyboard (papan ketik) atau dari file yang terdapat
dalam media penyimpan magnetik, yang kemudian bisa disimpan lagi pada media penyimpan
tersebut.
Membaca Masukan
Python menyediakan dua fungsi bawaan untuk mengambil masukan, yaitu raw_input() dan
input().
Format dari instruksi raw_input dan input adalah :
raw_input([prompt]), input([prompt])
Setiap masukan yang diterima oleh fungsi raw_input() dari standard input dianggap sebagai
string. Untuk membuktikan hal ini jalankan interpreter Python dan ketikkan baris berikut,
>>> raw_input("Nama Anda : ")
Nama Anda : Willy Pratama
'Willy Pratama'
>>>_

Coba lagi dengan memberikan masukan berupa bilangan,
>>> raw_input("Bilangan Anda : ")
Bilangan Anda : 17
'17'
>>>_
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

10

Tampak di sini masukan benar-benar dianggap sebagai string. Perhatikan tanda petik yang
mengapit keluaran interpreter.

Karena input yang diberikan pada fungsi ini dianggap sebagai string maka tidak bisa kita
operasikan dengan operator aritmetika.
Berbeda dengan raw_input(), fungsi input() akan memasukkan bilangan yang dibaca ke
dalam sebuah variable sehingga bisa kita olah dengan operator aritmetika. Coba perhatikan
contoh dibawah ini :

>>> x = input("Bilangan I:")
Bilangan I:12
>>> y = input("Bilangan II:")
Bilangan II:3
>>> print x+y
15
>>> print x*y
36
>>> print x/y
4
>>>_


Membaca Dari File Text
Akhirnya sampailah kita pada pembahasan operasi baca tulis ke file. Kita akan melakukan
beberapa percobaan. Sebelumnya kita siapkan dahulu file teks normal dengan isi yang
ditunjukkan di bawah ini. Ketik menggunakan notepad dan beri nama dumpfile.txt.
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

11
ini baris pertama
ke-2
dan ketiga

Buka Python (interpreter) kemudian coba buka file dumpfile.txt tadi dengan python,
>>> file = open(dumpfile.txt,r)
>>> print file.read()
>>> file.close()

Fungsi open mempunyai sintaks umum,
open(filename[, mode[, buffering]])

Fungsi open berguna untuk membuka file sesuai dengan operasi yang ingin kita lakukan.
Secara default mode adalah file dibuka untuk dibaca saja, yaitu mode diisi dengan "r". Mode
yang lain yang bisa kita berikan adalah "w" dan "a". Berturut-turut berfungsi untuk menulis
dan menambahkan. Untuk sementara parameter buffering kita tinggalkan lebih dahulu. Anda
dapat mendalami lebih lanjut di lain waktu.
Beberapa informasi yang penting sehubungan dengan manipulasi file bisa kita dapatkan
dengan mengetikkan command file ditambah parameter yang diperlukn, seperti contoh
berikut ini,

Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

12
>>> file.name #mencetak nama file
'dumpfile.txt'
>>> file.mode #file dibuka dengan mode ini
'r'
>>> file.close #cek apakah file telah ditutup
0
>>> file.fileno() #mencetak file deskriptor yang dipakai
3
>>>_
Pembacaan data dari file tidak hanya bisa dilakukan per karakter tetapi bisa juga dibaca per
baris dengan fungsi readline(), seperti contoh dibawah ini :
file = open('dumpfile.txt', 'r')
print file.readlines()
file close()

Apabila di eksekusi akan menghasilkan :
ini baris pertama

Terdapat fungsi lain agar membaca seluruh file yang telah dieksekusi dengan menggunakan
fungsi readlines()
file = open('dumbfile.txt', 'r')
print file.readlines()
file.close()

Apabila di eksekusi akan menghasilkan :
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

13
ini baris pertama
ke-2
dan ketiga

3.2 Operasi Output
Mencetak ke Layar
Membahas bagaimana cara kita meminta masukan data tidak bisa terlepas bagaimana kita
akan menampilkan data.. Perintah print akan melayani semua permintaan pencetakan ke layar.
Baik yang sederhana maupun yang terformat. Dengan bantuan beberapa modul penanganan
string, perintah print lebih baik lagi penampilannya. Mari kita mulai mengekplorasi perintah
ini.
Buatlah sebuah file bernama kali.py menggunakan notepad atau notepad++ yang berisi
statement di bawah ini :
def kali(x, y):
return x*y
for x in range(1,11):
for y in range(1,11):
print "%3d " % kali(x,y),
print
Lakukan kompilasi dan ekseskusi script di atas dengan menjalankannya melalui command
prompt seperti berikut ini :
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

14

Gambar 3.1 Hasil eksekusi kali.py

Modul yang mendukung format pencetakan adalah modul string. Modul ini berisi fungsi-
fungsi yang ada hubungannya dengan manipulasi string.
Menyimpan Ke File
Sejauh ini kita sudah melakukan eksperimen-eksperimen membaca file. Tentu saja kita juga
ingin bisa menyimpan data yang telah selesai kita olah ke dalam file. Langkah-langkanya
adalah :
1. Buka file untuk proses tulis,
2. Siapkan data yang akan disimpan,
3. Simpan data,
4. Tutup file.
Sebagai contoh, kita akan menyalin satu baris text dari file yang telah kita buat ke file yang
lain. Perhatikan contoh dibawah ini :
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

15
>>> asal = open("dumpfile.txt")
>>> tujuan = open("hasil.txt", "w")
>>> satu = asal.readline()
>>> tujuan.write(satu)
>>> asal.close()
>>> tujuan.close()
>>>_

Sekarang Anda bisa melihat apakah file hasil.txt berisi baris pertama dari file dumpfile.txt.
Jika kita ingin menyimpan string berbentuk list, kita bisa menggunakan fungsi writeline().
Sebagai contoh kita akan menyalin isi file dumpfile.txt ke file salinan.txt.

>>> asal = open("dumpfile.txt")
>>> tujuan = open("salinan.txt", "w")
>>> isi = asal.readlines()
>>> tujuan.writelines(isi)
>>> asal.close()
>>> tujuan.close()
>>>_


Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

16
3.3 Operasi Assignment

Tabel 3.1 Operasi Assignment
Oper
ator
Penjelasan Contoh
=
Mengisikan nilai di sebelah kanan operator
ke nilai di sebelah kiri operator
c = a+b ekivalen dengan nilai a + b = c
+=
Menambahkan operan sebelah kiri
operator dengan operan sebelah kanan
operator kemudian hasilnya diisikan ke
operan sebelah kiri
c += a ekivalen dengan c = c + a
-=
Menambahkan operan sebelah kiri
operator dengan operan sebelah kanan
operator kemudian hasilnya diisikan ke
operan sebelah kiri
c -= a ekivalen dengan c = c - a
*=
Mengalikan operan sebelah kiri operator
dengan operan sebelah kanan operator
kemudian hasilnya diisikan ke operan
sebelah kiri
c *= a ekivalen dengan c = c * a
/=
Membagi operan sebelah kiri operator
dengan operan sebelah kanan operator
kemudian hasilnya diisikan ke operan
sebelah kiri
c /= a ekivalen dengan = c / a
%=
Mengambil sisa bagi dari operan sebelah
kiri operator dengan operan sebelah kanan
operator kemudian hasilnya diisikan ke
operan sebelah kiri
c %= a ekivalen dengan c = c % a
**=
Memangkatkan operan sebelah kiri operator
dengan operan sebelah kanan operator kenudian
hasilnya diisikan ke operan sebelah kiri
c **= a ekivalen dengan c = c ** a
//=
Membagi bulat operan sebelah kiri
operator dengan operan sebelah kanan
operator kemudian hasilnya diisikan ke
operan sebelah kiri

c //= a ekivalen dengan c = c // a

Berikut contoh program operator assignment :
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

17
a = 21
b = 10
c = 0

c = a + b
print "Line 1 - Value of c is ", c

c += a
print "Line 2 - Value of c is ", c

c *= a
print "Line 3 - Value of c is ", c

c /= a
print "Line 4 - Value of c is ", c

c = 2
c %= a
print "Line 5 - Value of c is ", c

c **= a
print "Line 6 - Value of c is ", c

c //= a
print "Line 7 - Value of c is ", c

Berikut hasil eksekusi program assignment.py :

Gambar 3.2 Hasil eksekusi assignment.py



Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

18
4. Mengenal Tipe Data dan Operator
4.1 Tipe Data di Python
Tipe data adalah kumpulan nilai yang dapat dikenakan operasi padanya. Kali ini kita
akan sama-sama belajar bahasa pemrograman Python tentang bagaimana cara menggunakan
tipe data variable. Sama halnya dengan bahasa-bahasa pemrograman yang lain python juga
tentu memiliki tipe-tipe data yang pada umumnya disebut sebagai tipe objek default. Ada
beberapa tipe data antara lain:


1. Boolean
Type data Boolean memiliki 2 nilai, yaitu True dan False. Tipe data ini adalah sebuah
tipe data fundamental, karna banyak digunakan hampir di semua bahasa pemrograman.
Boolean sangat penting dalam mengevaluasi suatu kondisi dan sering digunakan untuk
menentukan alur program. Berikut adalah contohnya :
>>> print bool(True)
True
>>> print bool(False)
False
>>> print bool("text")
True
>>> print bool("")
False
>>> print bool(" ")
True
>>> print bool(0)
False
>>> print bool()
False
>>> print bool(3)
True
>>> print bool(None)
False

Pada contoh diatas kita bisa menyimpulkan bahwa jika data yang kita masukan adalah
0, None, , (data kosong) dst, maka akan menghasilkan nilai FALSE, sebaliknya jika
kita isi dengan nilai selain nilai2 tsb maka akan bernilai TRUE.
Selain itu tipe data ini bisa juga digunakan untuk membandingkan beberapa kondisi,
berikut contohnya :


Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

19
>>> a = 3
>>> b = 10
>>> if a < b :
print 'Nilai A lebih kecil dari B'
>>> if a > b :
print 'Nilai A lebih besar dari B'
>>> Nilai A lebih kecil dari B


Dari contoh diatas kita dapat lihat bahwa jika kondisi if bernilai true, maka perintah
dibawahnya akan dieksekusi, dan jika bernilai false maka perintah dibawahnya tidak
akan dieksekusi.

2. Number
Python memiliki 3 jenis tipe data number, yaitu Integer, Float, dan Complex number.
Integer digunakan untuk bilangan bulat. Berikut contoh integer :
>>> keranjang = 10
>>> jumlah_apel = 5
>>> jumlah_keranjang = 10
>>> jumlah_total = jumlah_apel * jumlah_keranjang
>>> print 'Jumlah Apel Yang Ada Di Semua Keranjang = ', jumlah_total
Jumlah Apel Yang Ada Di Semua Keranjang = 50


Float merupakan bilangan real dalam komputasi. Float digunakan untuk bilangan
pecahan ataupun decimal. Berikut contoh float :
>>> jarak_kM = 0.1
>>> waktu_yang_dibutuhkan = 9.87 / 3600
>>> kecepatan = jarak_kM / waktu_yang_dibutuhkan
>>> print "Rata-rata kecepatan berlari adalah " , kecepatan, " km/jam"
Rata-rata kecepatan berlari adalah 36.4741641337 km/jam


3. String
Strings adalah tipe data yang mewakili data tekstual dalam program computer. String
merupakan salah satu tipe data yang penting dalam bahasa pemrograman.
String pada python dapat dibuat dengan menggunakan tanda satu kutip (), dua kutip
(), ataupun tiga kutip (). Jika menggunakan tiga kutip, maka string dapat
direnggangkan menjadi beberapa baris tanpa menggunakan tanda escape (\). Perhatikan
contoh dibawah ini :
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

20
>>> a = 'String menggunakan 1 kutip'
>>> b = "String menggunakan 2 kutip"
>>> c = '''String
menggunakan
3
kutip'''
>>> print a
String menggunakan 1 kutip
>>> print b
String menggunakan 2 kutip
>>> print c
String
menggunakan
3
kutip


Tanda escape (\) juga dapat digunakan dengan tujuan khusus ketika kita menggunakan
string, seperti contoh dibawah ini :
>>> print 'Hari ini adalah hari jum\'at'
Hari ini adalah hari jum'at
>>> print 'Besok adalah\thari sabtu'
Besok adalah hari sabtu
>>> print 'Lusa adalah hari \nAhad'
Lusa adalah hari
Ahad


Selain itu tipe data string juga memiliki fungsi-fungsi yang dapat digunakan untuk
melakukan suatu operasi yang kita inginkan. seperti contoh dibawah ini :
>>> A = "Assalamu'alaikum"
>>> len(A)
16


4. List, sebuah data berupa untaian yang menyimpan berbagai tipe data dan isinya bisa
diubah. Lebih lengkapnya akan dibahas di bab 7.
5. Tuple, sebuah data berupa untaian yang menyimpan berbagai tipe data tapi isinya tidak
bisa diubah. Lebih lengkapnya akan dibahas di bab 7.
6. Dictionary, sebuah data berupa untaian yang menyimpan berbagai tipe data berupa
pasangan penunjuk dan nilai. Lebih lengkapnya akan dibahas di bab 7.


Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

21
4.2 Operator
Selain variabel diatas, terdapat juga beberapa operator untuk pemrosesan data
di Python, antara lain sebagai berikut :
1. Aritmatika (Arithmetic Operator)
Kita asumsikan a = 10 dan b = 20
Oper
ator
Penjelasan Contoh
+
Penjumlahan,menambahkan dua buah operan
a + b = 30
-
Pengurangan, mengurangkan operan disebelahkiri
operator dengan operan disebelah kanan operator

a - b = -10
*
Perkalian, mengalikan operan disebelah kiri dengan
operan di sebelah kanan operator
a * b = 200
/
Pembagian, membagi operan disebelah kiri dengan
operan disebelah kanan operator
a / b = 2
%
Modulus, mendapatkan sisa pembagian dari operan di
sebelah kiri operator ketika dibagi oleh operan di
sebelah kanan
b + a = 0
**
Pemangkatan, memangkatkan operan disebelah kiri
operator dengan operan di sebelah kanan operator
a**b = 10
20

//
Pembagian bulat, prosesnya sama seperti pembagian.
Hanya saja angka dibelakang koma dihilangkan
9//2 = 4

2. Perbandingan (Comparison Operator)
Untuk contoh dibawah ini kita asumsikan a = 10 dan b = 20
Operat
or
Penjelasan Contoh
==
Memeriksa apakah kedua nilai (operan) yang
dibandingkan sama atau tidak. Jika sama
akan dikembalikan nilai True jika tidak akan
sama dikembalikan nilai False
(a == b) is not true
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

22
!=
Memeriksa apakah kedua nilai yang
dibandingkan sama atau tidak. Jika tidak
sama akan dikembalikan nilai True jika
sama akan dikembalikan nilai False.
(a != b) is true
<> Fungsinya sama dengan operator != (a <> b) is true
>
Memeriksa apakah nilai di sebelah kiri
operator lebih besar dari nilai di sebelah
kanan operator

(a > b) is not true
<
Memeriksa apakah nilai di sebelah kiri
operator lebih kecil dari nilai di sebelah
kanan operator

(a < b) is true
>=
Memeriksa apakah nilai di sebelah kiri
operator lebih besar dari nilai di sebelah
kanan operator atau memiliki nilai yang
sama
(a >= b) is not true
<
<=
Memeriksa apakah nilai di sebelah kiri
operator lebih kecil dari nilai di sebelah
kanan operator atau memiliki nilai yang
sama
(a <= b) is true

3. Biner (Bitwise Operator)
Bitwise operator bekerja pada bit per bit operasi. Untuk contoh dibawah ini kita
asumsikan jika a = 60 dan b = 13. Sekarang format binary akan mengikuti seperti
dibawah ini :
a = 0011 1100
b = 0000 1101
----------------------
a&b = 0000 1100
a|b = 0011 1101
a^b = 0011 0001
~a = 1100 0011

Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

23

Operat
or
Penjelasan Contoh
&
Operator biner AND, memeriksa apakah
operan di sebelah kiri dan operan sebelah
kanan mempunyai angka biner 1 di setiap
bit. Jika keduanya bernilai 1 maka bit hasil
operasi akan bernilai 1
(a & b) = 12 dengan binary 0000
1100
|
Operator biner OR, memeriksa apakah
operan di sebelah kiri dan operan sebelah
kanan mempunyai angka biner 1 di setiap
bit. Jika salah satunya bernilai 1 maka bit
hasil operasi akan bernilai 1
(a | b) = 61 dengan binary 0011
1101
^
Operator biner XOR, memeriksa apakah
operan di sebelah kiri dan operan sebelah
kanan mempunyai angka biner 1 di setiap
bit. Jika keduanya bernilai 1 maka bit hasil
operasi akan bernilai 0
(a ^ b) = 49 dengan binary 0011
0001
~
Operator biner Negative, membalik nilai
bit. Misal dari 1 menjadi 0, dari 0 menjadi
1
(~a ) = -61 dengan binary 1100
0011
<<
Operator penggeser biner ke kiri, deret bit
akan digeser ke kiri sebanyak n kali
a << 2 = 240 dengan binary 1111
0000
>>
Operator penggeser biner ke kanan, deret
bit akan digeser ke kanan sebanyak satu
kali

a >> 2 = 15 dengan binary 0000
1111

4. Logika (Logical Operator)
Untuk contoh dibawah ini kita asumsikan a = 10 dan b = 20
Operat
or
Penjelasan Contoh
and
Jika kedua operan bernilai True, maka
kondisi akan bernilai True. Selain kondisi
tadi maka akan bernilai False
(a and b) is true.
or
Jika salah satu atau kedua operan bernilai
True maka kondisi akan bernilai True. Jika
keduanya False maka kondisi akan bernilai
False
(a or b) is true.

not Membalikkan nilai kebeneran pada operan not(a and b) is false.

Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

24

5. Keanggotaan (Membership Operator)
Operat
or
Penjelasan Contoh
in
Memeriksa apakah nilai yang dicari berada
pada list atau struktur data python lainnya.
Jika nilai tersebut ada maka kondisi akan
bernilai True
sebuah_list = [1, 2, 3,4 ,5]

print 5 in sebuah_list
not
in
Memeriksa apakah nilai yang dicari tidak
ada pada list atau struktur data python
lainnya. Jika nilai tersebut tidak ada maka
kondisi akan bernilai True
sebuah_list = [1, 2, 3,4 ,5]

print 10 not in sebuah_list

6. Identitas (Identity Operator)
Operat
or
Penjelasan contoh
is
Memeriksa apakah nilai di sebelah kiri
operan memiliki identitas memori yang
sama dengan nilai di sebelah kanan operan.
Jika sama maka kondisi bernilai True
a, b = 10, 10
# hasil akan True
print a is b
is not
Memeriksa apakah nilai di sebelah kiri
operan memiliki identitas memori yang
berbeda dengan nilai di sebelah kanan
operan. Jika berbeda maka kondisi bernilai
True
a, b = 10, 5
# hasil akan True
print a is not b




Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

25
5. Perintah Kondisional
5.1 Satu Kondisi (if)
Sama dengan bahasa pemrograman lainnya, Python juga menggunakan pernyataan
if. Pernyatan if ini berisi sebuah ekspresi logika menggunakan data yang telah
dibandingkan, dan menghasilkan sebuah keputusan yang dibuat berdasarkan
perbandingan tersebut. Aturan penulisan untuk pernyataan if sebagai berikut:
if kondisi:
pernyataan_benar

Semua pernyataan dituliskan dengan indentasi (alinea) setelah bagian kondisi bersyarat.
Python menggunakan indentasi untuk mengelompokkan satu atau beberapa pernyataan.

Pada pernyataan if, syarat kondisi akan dijalankan pertama kali. Jika kondisi tersebut
benar, maka pernyataan pada blok pernyataan_benar akan dijalankan. Berikut contohnya,
>>> x = 10
>>> if x>0:
... print 'Hello'

Pada contoh di atas, pernyataan if akan menampilkan teks Hello jika nilai variabel x
lebih besar dari 0.
5.2 Dua Kondisi (if - else)
Pernyataan else ini biasanya digabungkan dengan pernyataan if di atas. Pernyataan
else dapat berisi satu atau beberapa blok pernyataan (kode) yang mana akan dijalankan
jika kondisi tersebut salah (atau tidak sesuai dengan syarat yang berlaku). Berikut syntax
untuk if - else,
if kondisi:
pernyataan_benar
else:
pernyataan_salah

Sebagai contoh, untuk mengetahui apakah suatu bilangan merupakan genap atau ganjil,
kita bisa menggunakan kode seperti berikut ini,
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

26
>>> if (bilangan%2 == 0):
print 'genap'
else:
print 'ganjil'

Pada contoh di atas, genap akan ditampilkan jika sisa dari pembagian bilangan dengan 2
sama dengan 0. Dan sebaliknya jika tidak sama dengan 0, maka akan ditampilkan
ganjil.
5.3 Lebih dari dua kondisi (if - elif)
Pernyataan elif memperbolehkan kita untuk menguji beberapa kondisi bersyarat
untuk tiap-tiap nilai dan menjalankan kode pernyataan yang sesuai dengan syarat yang
diberlakukan. Berikut syntax dari pernyataan elif :
if kondisi_1:
pernyataan_1_benar
elif kondisi_2:
pernyataan_2_benar
:
:
elif kondisi_N:
pernyataan_N_benar
else:
pernyataan_tidak_sesuai_syarat_di_atas

Contoh berikut ini menggunakan pernyataan elif untuk menampilkan apakah huruf yang
kita input merupakan huruf vokal. Jika tidak, maka sebuah pesan lain akan ditampilkan.
Perhatikan contoh dibawah ini :

Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

27
huruf = raw_input("Masukkan sebuah huruf: ")

if (huruf == 'a'):
print "Ini adalah huruf vokal - a -"
elif (huruf == 'e'):
print "Ini adalah huruf vokal - e -"
elif (huruf == 'i'):
print "Ini adalah huruf vokal - i -"
elif (huruf == 'o'):
print "Ini adalah huruf vokal - o -"
elif (huruf == 'u'):
print "Ini adalah huruf vokal - u -"
else:
print "Ini bukan huruf vokal"

Pada contoh kode di atas, ketika seorang user mengetikkan sebuah huruf maka huruf
tersebut akan diproses apakah huruf vokal atau bukan. Jika user mengetikkan huruf a,
maka sesuai syarat yang berlaku maka akan ditampilkan Ini adalah huruf vokal a -.
Jika kondisinya tidak sesuai, misalkan user mengetikkan huruf u, maka akan dilanjutkan
kondisi bersyarat elif yang berikutnya sampai ditemukan kondisi yang sesuai dan akan
ditampilkan hasilnya Ini adalah huruf vokal u -. Jika user mengetikkan huruf x,
maka tidak ada syarat yang sesuai dengan kondisi bersyarat if dan elif. Dan pernyataan
else yang dijalankan yaitu Ini bukan huruf vokal.



Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

28
5.4 Kondisi : if bersarang (nested if)
Pada kondisi tertentu, kita dapat menggunakan pernyataan if bersarang. Maksudnya
adalah kita dapat menuliskan pernyataan if - else di dalam pernyataan if - else. Berikut
contoh penggunaan if bersarang pada program untuk menentukan apakah huruf yang
dimasukkan user adalah huruf besar atau huruf kecil, simpah file dibawah ini dengan
nama tes.py
huruf = raw_input("Masukkan sebuah huruf: ")
if (huruf >= 'A'):
if (huruf <= 'Z'):
print "Ini adalah Huruf Besar"
elif (huruf >= 'a'):
if (huruf <= 'z'):
print "Ini adalah huruf kecil"
else:
print "Huruf > z"
else:
print "Huruf > z tapi < a"
else:
print "Huruf < A"

Berikut hasilnya apabila telah di eksekusi :





Gambar 5.1 hasil eksekusi tes.py
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

29
6. Menyusun Pengulangan
6.1 Mengenal Pengulangan for dan while
Seperti pada bahasa pemrograman lainnya, Python memiliki mekanisme
pengulangan untuk menjalankan pekerjaan pekerjaan yang berulang. Pada umumnya
pengulangan terdiri dua jenis. Ada pengulangan yang terbatas dan tidak terbatas.
Pengulangan terbatas biasanya dilakukan pengulangan dari 1 hingga kesekian kali (n
kali). Perulangan terbatas menggunakan for. Sedangkan pengulangan tidak terbatas
menggunakan while. Dalam pengulangan menggunakan while pengulangan akan terus
dilakukan selama kondisional dalam perulangan while tetap dalam keadaan true jika
dalam keadaan false maka pengulangan while akan berhenti.
6.2 Menyusun Pengulangan dengan for
Kita melangkah ke pengulangan yang terbatas dulu yah. Dalam pengulangan for,
tidak seperti di bahasa pemorgraman C atau Java yang menggunakan nilai incremental
untuk melakukan pengulangan. Di Python, for melakukan pengulangan dengan meng-
iterasi elemen dari sebuah list. List ini dapat berisi kumpulan karakter, kumpulan string,
kumpulan angka, atau kumpulan data jenis lainnya yang disediakan Python. (Untuk lebih
lengkapnya di bab berikutnya akan dibahas lebih jauh tentang List di Python).
Misal disini ada sebuah list yang berisi [1, 2, 3, 4, 5], ( sebuah list diawali oleh tanda '['
dan ditutup oleh tanda ']' ). Banyaknya elemen pada list tersebut menentukan banyaknya
pengulangan yang akan dilakukan saat melakukan pengulangan. Mari kita lihat
implementasinya pada kode dibawah ini :

listing : kode pengulangan_1.py

# pengulangan sebanyak
5 kali
for i in [1, 2, 3,
4, 5]:
print "Ini pengulangan ke - ", i



Pada contoh diatas, akan dicetak teks Ini pengulangan ke - sebanyak 5 kali. Nilai 'i'
pada pengulangan tersebut akan selalu berganti nilainya setiap tahap pengulangan
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

30
dilakukan. Misal ketika pengulangan pertama, nilai 'i' akan berisi 1, ketika pengulangan
kedua, nilai 'i' akan berisi 2, begitu seterusnya sampai elemen terakhir. Jika kode diatas
dieksekusi akan menampilkan hasil seperti pada gambar dibawah ini :




Gambar 6.1 hasil eksekusi pengulangan_1.py


Selain menggunakan list yang berisi angka, List yang berisi string dapat digunakan
juga untuk melakukan pengulangan for di Python. Misal terdapat list yang berisi seperti
berikut [Rawon, Nasi Kuning, Soto Madura, Kupat Tahu, Kerak Telor,
Rendang Batoko, Pempek Selam, Ayam Betutu], dalam list tersebut terdapat
elemen sebanyak delapan jenis masakan nusantara. Dengan demikian ketika pengulangan
for menggunakan list masakan tadi, pengulangan akan dijalankan sebanyak delapan kali.
Mari Anda lihat implementasinya pada kode dibawah ini :


listing : kode pengulangan_2.py
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

31

# pengulangan sebanyak 8 kali
for i in ["Rawon", "Nasi Kuning", "Soto Madura", "Kupat Tahu", "Kerak Telor", "Rendang
Batoko", "Pempek Selam", "Ayam Betutu"] :
print i, " adalah masakan khas nusantara ..."



Kode diatas jika dieksekusi akan terlihat seperti gambar dibawah ini :




Gambar 6.2 hasil eksekusi pengulangan_2.py

Sekarang Anda coba contoh terakhir dengan menggunakan string. String pada dasarnya
merupakan list karakter. Misal terdapat string seperti berikut abcde. Jika string tersebut
digunakan pada pengulangan for, maka akan terjadi pengulangan sebanyak lima kali.
Coba lihat kode dibawah ini :

listing : kode pengulangan_3.py

# pengulangan_3.py sebanyak 5 kali
for i in "abcde":
print i, " adalah alfabet"


Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

32
Kode diatas jika dieksekusi akan terlihat seperti gambar dibawah ini :



Gambar 6.3 hasil eksekusi pengulangan_3.py

6.3 Memahami Function range
Kalau teman teman memperhatikan list yang dipakai pada pengulangan_1.py,
pengulangan tersebut menggunakan list angka yang sudah jadi atau di-hardcode. Nah
bagaimana nih kalau ingin membentuk suatu pola atau ingin membuat list incremental
agar pengulangan for di Python ini mirip di Java atau C. Di Python terdapat fungsi yang
bernama range. Range ini menghasilkan deret angka dengan parameter (start, stop, step
). Start adalah batasawal dari list, stop adalah batas akhir dari list, step adalah jarak antar
angka yang dihasilkan oleh range. Ada beberapa kasus penting yang perlu diperhatikan
saat menggunakan range. Coba perhatikan kode dibawah ini

listing : kode pengulangan_4.py
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

33

# pengulangan_4.py

# kasus - 1 : jika step tidak disertakan maka step akan diisi 1 secara default
print range(1, 10)
# kasus - 2 : jika step disertakan maka step akan sesuai dengan angka yang diisikan
print range(1, 10, 2)
print range(1, 10, 3)
print range(1, 10, 4)
print range(1, 10, 5)
# kasus - 3 : jika step melebihi stop maka list hanya akan berisi start
print range(1, 10, 11)
# kasus - 4 : jika start lebih besar nilainya daripada stop maka list akan kosong
print range(10, 1)
# kasus - 5 : jika start lebih besar nilainya daripada stop dan
# jika step melebihi stop maka list akan kosong
print range(10, 1, 2)
print range(10, 1, 11)
# kasus - 6 : jika start lebih besar daripada stop dan step bernilai minus
# dan jika start dikurangi step menghasilkan angka positif
# maka list akan berisi deret angka menurun
print range(10, 1, -1)
# kasus - 7 : jika start lebih besar daripada stop dan step bernilai minus
# dan jika start dikurangi step bernilai minus maka list hanya akan berisi start
print range(10, 1, -11)
# kasus - 8 : jika step bernilai 0 maka akan terjadi error
print range(1, 10, 0)
# kasus - 9 : jika start lebih besar daripada stop dan step bernilai 0 maka akan terjadi
error
print range(10, 1, 0)



Kode diatas jika dieksekusi akan terlihat seperti gambar dibawah ini :
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

34



Gambar 6.4 hasil eksekusi pengulangan_4.py

6.4 Menggunakan Function range pada Pengulangan for
Sekarang Anda akan coba menggunakan range dalam pengulangan for. Coba perhatikan
contoh berikut :

listing : kode pengulangan_5.py


for i in range(1, 10):
print "ini pengulangan ke - ", i



Pada contoh diatas akan terjadi pengulangan sebanyak 10 kali terhadap statement
dibawah for. Dengan menggunakan range, Anda tidak perlu repot untuk membuat list
terlebih dahulu untuk menentukan banyaknya pengulangan yang akan Anda lakukan
terhadap statement.Jika kode diatas dieksekusi akan terlihat seperti gambar dibawah ini :
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

35

Gambar 6.5 hasil eksekusi pengulangan_5.py


Agar lebih memahami lagi pengulangan for, kita coba lagi pelajari dua contoh berikut.
Berikut ada kasus membuat sebuah segitiga yang dibuat dari kumpulan bintang dan
membuat baris bilangan prima. Untuk lebih jelasnya coba perhatikan dua kasus berikut :

listing : kode pengulangan_6.py
# pengulangan_6.py
for i in range(0, 10):
for j in range (0, i+1):
if j == i:
print "x"
else:
print "*",
print ""

Kode diatas jika dieksekusi akan tampil seperti berikut :
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

36


Gambar 6.6 hasil eksekusi pengulangan_6.py


Kemudian dibawah ini adalah kode program untuk mencari bilangan prima. Bilangan
prima adalah bilangan yang hanya bisa dibagi 1 dan bilangan itu sendiri

listing : kode pengulangan_7.py


# pengulangan_7.py
for i in range(1, 20):
count_zero_remainder = 0
for j in range(1, i+1):
num_remainder = i % j
#print num_remainder,
if num_remainder == 0:
count_zero_remainder = count_zero_remainder + 1
if count_zero_remainder == 2:
print i, " adalah bilangan prima"
else:
print i, " bukanlah bilangan prima"


Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

37

Kode diatas jika dieksekusi akan tampil seperti berikut :



Gambar 6.7 hasil eksekusi pengulangan_7.py


Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

38
6.5 Menyusun Pengulangan dengan while
Sekarang kita akan bahas pengulangan yang menggunakan while. Pengulangan
while memiliki cara kerja selama kondisi tertentu bernilai true maka pengulangan akan
diteruskan sampai kondisi bernilai false. Tentunya dalam kondisi yang dipakai untuk
eksekusi while memerlukan operator logika dan perbandingan seperti yang sudah di
jelaskan di bab 3.
sebagai contoh coba lihat kode berikut. Kode berikut dieksekusi apabila variabel angka
masih dibawah 10.

Secara umum pengulangan while memiliki aturan penulisan seperti berikut :

while (condition):
statement

listing : kode pengulangan_8.py


angka = 0
while (angka < 10):
print "Aku sudah berjalan sebanyak ",
angka, " langkah " angka += 1

Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

39

Kode diatas jika dieksekusi akan tampil seperti pada gambar berikut ini :



Gambar 6.8 hasil eksekusi pengulangan_8.py

Pada contoh diatas kondisi untuk melakukan pengulangan ditaruh di while. Sekarang Anda
coba taruh kondisi pengulangan di dalam pengulangannya. Coba lihat contoh berikut :

listing : kode pengulangan_9.py


terus_tanya = True
while terus_tanya :
temp = raw_input('masukkan angka kurang dari 10 !! : ')
angka = int(temp)
if angka < 10:
terus_tanya = False
else:
terus_tanya = True



Kode diatas jika dieksekusi akan tampil seperti berikut :

Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

40


Gambar 6.9 hasil eksekusi pengulangan_9.py


Untuk memahami pengulangan while lebih lanjut, berikut terdapat contoh penjumlahan
angka dari 1 sampai 10. Dalam pengulangan ini terdapat sebuah variabel jml_angka yang
berfungsi untuk menampung angka angka yang akan ditambahkan dengan angka
berikutnya di setiap pengulangan. Coba perhatikan kode dibawah ini :

listing : kode pengulangan_10.py



i = 1
jml_angka = 0
while i <= 10:
print 'loop ke - %d : %d + %d' % (i, jml_angka, i)
jml_angka = jml_angka + i
i += 1
print 'total angka yang dijumlahkan : ', jml_angka


Kode diatas jika dieksekusi akan tampil seperti berikut :
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

41

Gambar 6.10 hasil eksekusi pengulangan_10.py

Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

42
7. Mengenal Data Struktur Python Tingkat Lanjut
7.1 Mengenal List, Dictionary dan Tuple
Di Python sendiri, terdapat beberapa tipe struktur data yang dapat digunakan oleh
penggunanya. Tapi tiga tipe data yang umum digunakan, diantaranya list, tuple, dan
dictionary . Ketiga tipe data struktur ini sangat membantu sekali bagi programmer
Python yang membutuhkan tipe data banyak. Ketiga tipe data ini adalah objek Python
yang berarti jika Anda mendefinisikan struktur data tersebut, Anda dapat menggunakan
method method yang berhubungan dengan pengolahan struktur data tersebut. Selain itu
terdapat pula function untuk mengolah tiga struktur data tadi seperti mencari nilai max,
min, hitung panjang, dan perbandingan isi.
Berikut perbedaan antara list, tuple, dan dictionary :

Tabel 7.1 Perbedaan List, Dictionary, dan Tuple
List Tuple Dictionary
Diawali dan diakhiri
dengan tanda
'[' dan ']' '(' dan ')' {' dan '}'
Karakteristik
Setiap anggota list tidak
harus sama tipe datanya
Tidak bisa dimodifikasi
(immutable sequence)
Terdiri dari sepasang data
(key dan value)
Tipe data string, number, list, objek string, number, list, objek string, number, list, objek


Agar lebih paham mari Anda coba mendefinisikan list, tuple, dan dictionary kedalam sebuah
variabel.
listing : strukdat_1.py
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

43
# cara mendefinisikan list
sebuah_list = ['Zorin OS',
'Ubuntu',
'FreeBSD',
'NetBSD',
'OpenBSD',
'Backtrack',
'Fedora',
'Slackware']
# cara mendefinisikan tuple
sebuah_tuple = (0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
# cara mendefinisikan dictionary
sebuah_dictionary = {'nama':'Wiro Sableng',
'prodi':'ilmu komputer',
'email':'wirosableng@localhost',
'website':'http://www.sitampanggarang.com'
}
print sebuah_list
print sebuah_tuple
print sebuah_dictionary

Dengan menggunakan perintah print maka Anda dapat mencetak isi list, tuple, atau
dictionary yang hasil keluarannya berupa string.



Gambar 7.1 hasil eksekusi strukdat_1.py
7.2 Cara Akses List, Tuple, dan Dictionary
Setelah Anda mengenal cara membuat ketiga struktur data tersebut, sekarang Anda
coba cara mengakses elemen elemen pada struktur data tersebut. Ada beberapa cara
mengakses elemen pada struktur data tersebut yang biasa dilakukan misalnya mengakses
salah satu elemen dengan menggunakan indeks, slicing indeks, dan mengakses elemen
lewat pengulangan.
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

44
Untuk akses elemen lewat indeks elemen Anda panggil nama list kemudian disusul
indeks elemen yang Anda inginkan dengan diapit tanda baca [ dan ], misal ada
sebuah list dengan nama daftar_barang kemudian ingin mengakses indeks ke 10,
maka pemanggilan indeks pada list tersebut adalah daftar_barang[9]. Kenapa di
pemanggilan indeks nya dari 9 ? karena indeks tersebut diawali dari 0 sehingga indeks
yang diinginkan akan dikurangi 1. Begitupun dengan tuple cara akses salah satu
elemenya sama dengan cara akses salah satu elemen di list. Pada dictionary, untuk
mengakses salah satu elemennya Anda panggil salah satu key-nya untuk mendapatkan
data yang ditunjuk key tersebut.

Slicing indeks merupakan cara untuk mengakses beberapa elemen pada list dan
tuple. Cara ini tidak dapat dilakukan di dictionary. Slicing indeks dilakukan dengan
memanggil list atau tuple kemudian tentukan indeks awal slicing dan batas akhirnya.
Kemudian indeks tersebut dipisahkan dengan tanda : dan diapit oleh tanda [ dan ].
Misal ada sebuah list daftar_barang kemudian ingin mengambil 10 datanya dari indeks
ke 2 maka pemanggilannya adalah daftar_barang[1:11].

Berikutnya cara terakhir yang biasa dilakukan oleh untuk mengakses elemen secara
keseleruhan adalah dengan melalui pengulangan for. Melalui cara tersebut, isi dari list,
tuple, dan dictionary dapat diambil elemennya selama iterasi pada pengulangan for. Pada
list dan tuple jika datanya diambil lewat pengulangan for, setiap elemen akan langsung
diekstrak di setiap iterasi dan dapat digunakan untuk keperluan pemrosesan pada proses
di setiap iterasi. Kalau pada dictionary di setiap iterasi pengulangan bukan elemen yang
diektrak tapi key-nya. Jadi saat ingin mengambil datanya Anda harus memanggil elemen
dictionary tersebut dengan key yang didapatkan disetiap iterasi.

Dibawah ini adalah contoh mengakses elemen dari list, tuple dan dictionary dengan tiga
cara yang biasa dipakai programmer python.

listing : strukdat_2.py



Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

45

# cara mendefinisikan list
sebuah_list = ['Zorin OS',
'Ubuntu',
'FreeBSD',
'NetBSD',
'OpenBSD',
'Backtrack',
'Fedora',
'Slackware']

# cara mendefinisikan tuple
sebuah_tuple = (0, 1, 2, 3, 4, 5, 6, 7, 8, 9)

# cara mendefinisikan dictionary
sebuah_dictionary = {'nama':'Wiro Sableng',
'prodi':'ilmu komputer',
'email':'wirosableng@localhost',
'website':'http://www.sitampanggarang.com'
}

# mengakses elemennya
print "mengakses salah satu elemen : "
print "-----------------------------"
print sebuah_list[5]
print sebuah_tuple[8]
print sebuah_dictionary['website']

print "\n\n"

# mengakses beberapa elemen
print "mengakses beberapa elemen : "
print "-----------------------------"
print sebuah_list[2:5]
print sebuah_tuple[3:6]

print "\n\n"

# mengakses elemennya dengan looping
print "mengakses semua elemen dengan looping for : "
print "-----------------------------"

for sebuah in sebuah_list:
print sebuah,
print "\n"

for sebuah in sebuah_tuple:
print sebuah,
print "\n"

for sebuah in sebuah_dictionary:
print sebuah, ':', sebuah_dictionary[sebuah],


Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

46
Apabila Anda jalankan kode program diatas maka akan muncul output seperti pada
gambar berikut
ini :



Gambar 7.2 hasil eksekusi strukdat_2.py


7.3 Mengubah Isi List, Tuple, dan Dictionary
Ada waktunya Anda ingin mengubah salah satu elemen setelah mendefinisikan
stuktur data. Misal ada sebuah list daftar_barang dan Anda ingin mengubah elemen ke-
7 dengan data baru yang asalnya kursi menjadi meja. Atau ada sebuah informasi
dalam bentuk dictionary dengan key nama yang value asalnya Son Go Ku menjadi
Vash De Stampede. Cara mengubah data salah satu elemen di struktur data python
mudah sekali. Tinggal tentukan indeks mana yang akan diubah, kemudian masukkan
nilai baru kedalam indeks tersebut. Lebih jelasnya coba lihat contoh berikut :

listing : strukdat_3.py



Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

47
# cara mendefinisikan list
sebuah_list = ['Zorin OS',
'Ubuntu',
'FreeBSD',
'NetBSD',
'OpenBSD',
'Backtrack',
'Fedora',
'Slackware']

# cara mendefinisikan tuple
sebuah_tuple = (0, 1, 2, 3, 4, 5, 6, 7, 8, 9)

# cara mendefinisikan dictionary
Sebuah_dictionary = {namaSisOp : Ubuntu,
pembuat : OpenSource,
tahun :
sebuah_dictionary = {'nama':'Wiro Sableng',
'prodi':'ilmu komputer',
'email':'wirosableng@localhost',
'website':'http://www.sitampanggarang.com'
}

# cara update sebuah elemen :
print "cara update sebuah elemen : "
print "\n"

print sebuah_list
sebuah_list[5] = 'Kali Linux'
print sebuah_list
print "\n"

print sebuah_tuple
# tuple tidak dapat melakukan operasi perubahan elemen
#sebuah_tuple[5] = 100
print sebuah_tuple
print "\n"

print sebuah_dictionary
sebuah_dictionary['email'] = 'wiro.sableng@gmail.com'
print sebuah_dictionary
print "\n\n"


Mudah sekali kan ? Dengan mengakses indeks tertentu pada list dan tuple serta
mengakses keys tetentu pada dictionary, Anda dapat mengubah nilai pada indeks atau
key tersebut dengan nilai yang baru.
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

48


Gambar 6.3 hasil eksekusi strukdat_3.py

7.4 Menambahkan Data pada List, Tuple, dan Dictionary
Ketiga struktur data inipun dapat ditambahkan data baru dari data semula. Pada list,
digunakan tanda + untuk menambahkan data dari list baru ke list lama. Begitupun dengan
tuple, tanda + digunakan untuk menambahkan data dari tuple baru ke tuple lama.
Sedangkan pada dictionary digunakan method update dari dictionary yang ingin ditambahkan
data baru. Kemudian dictionary semula akan memiliki data yang ditambahkan melalui
method tersebut. Berikut adalah contoh menambahkan data baru pada ketiga struktur data
tersebut.

listing : strukdat_4.py




Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

49

# cara mendefinisikan list
sebuah_list = ['Zorin OS',
'Ubuntu',
'FreeBSD',
'NetBSD',
'OpenBSD',
'Backtrack',
'Fedora',
'Slackware']

# cara mendefinisikan tuple
sebuah_tuple = (0, 1, 2, 3, 4, 5, 6, 7, 8, 9)

# cara mendefinisikan dictionary
sebuah_dictionary = {'nama':'Wiro Sableng',
'prodi':'ilmu komputer',
'email':'wirosableng@localhost',
'website':'http://www.sitampanggarang.com'
}

# cara menambahkan data baru
print "cara menambahkan data baru : "
print "\n"

print sebuah_list
list_baru = sebuah_list + ['PC Linux OS', 'Blankon', 'IGOS', 'OpenSUSE']
print list_baru
print "\n"

print sebuah_tuple
tuple_baru = sebuah_tuple + (100, 200, 300)
print tuple_baru
print "\n"

print sebuah_dictionary
dictionary_baru = {'telp':'022-12345678', 'alamat':'Bandung, Jabar'}
sebuah_dictionary.update(dictionary_baru)
print sebuah_dictionary
print "\n\n"



Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

50
Kode diatas jika dieksekusi akan muncul tampilan seperti berikut ini :



Gambar 7.4 hasil eksekusi strukdat_4.py

7.5 Menghapus Isi List, Tuple, dan Dictionary
Tidak lengkap rasanya bila dalam sebuah informasi ada yang tidak dapat dihapus.
Terkadang ada sebuah data yang tidak Anda butuhkan dan ingin Anda hilangkan dari
kumpulan data yang dimiliki. Misal dalam sebuah list Anda ingin menghapus salah satu
elemen. Atau di dictionary, Anda ingin menghilangkan salah satu key dari
dictionary.tersebut. Di python sendiri penghapusan salah satu elemen dapat dilakukan di
list dan dictionary. Sedangkan tuple tidak mendukung penghapusan elemen. Jika kita
lakukan penghapusan pada salah satu elemen di tuple, maka akan muncul pesan error :
TypeError: 'tuple' object doesn't support item deletion. Pada list Anda tinggal
menunjuk salah satu elemennya dengan sebuah angka dari 0 sampai panjang list tersebut
dikurangi satu dengan diapit tanda [ dan ]. Sedangkan pada dictionary Anda tunjuk
salah satu key yang akan dihapus dari dictionary. Berikut adalah contoh penghapusan
salah satu elemen pada list dan dictionary.


listing : strukdat_5.py

Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

51


# cara mendefinisikan list
sebuah_list = ['Zorin OS',
'Ubuntu',
'FreeBSD',
'NetBSD',
'OpenBSD',
'Backtrack',
'Fedora',
'Slackware']

# cara mendefinisikan tuple
sebuah_tuple = (0, 1, 2, 3, 4, 5, 6, 7, 8, 9)

# cara mendefinisikan dictionary
sebuah_dictionary = {'nama':'Wiro Sableng',
'prodi':'ilmu komputer',
'email':'wirosableng@localhost',
'website':'http://www.sitampanggarang.com'
}

# cara delete sebuah elemen :
print "cara delete sebuah elemen : "
print "\n"

print sebuah_list
del sebuah_list[0]
print sebuah_list
print "\n"

print sebuah_tuple
# tuple tidak mendukung proses penghapusan elemen :D.(coba hilangkan tanda '#'
disampingnya)
#del sebuah_tuple[8]
print sebuah_tuple
print "\n"

print sebuah_dictionary
del sebuah_dictionary['website']
print sebuah_dictionary
print "\n\n"

Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

52


Gambar 7.5 hasil eksekusi strukdat_5.py

7.6 Menghapus List, Tuple, dan Dictionary
Pada contoh sebelumnya Anda hanya menghapus salah satu elemen. Lalu
bagaimanakah jika ingin menghapus keseluruhan struktur data sehingga struktur data
tersebut terhapus dari memory seluruhnya ?. Di Python dengan menggunakan perintah
del pada sebuah struktur data maka struktur data tersebut akan dihapus sepenuhnya dari
memory. Hal ini berlaku juga bagi variabel dan objek yang didefinisikan oleh
programmer. Dengan hilangnya dari memory maka struktur data yang telah dihapus tidak
dapat digunakan lagi oleh program yang Anda bangun.

list : strukdat_6.py
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

53

# cara mendefinisikan list
sebuah_list = ['Zorin OS',
'Ubuntu',
'FreeBSD',
'NetBSD',
'OpenBSD',
'Backtrack',
'Fedora',
'Slackware']

# cara mendefinisikan tuple
sebuah_tuple = (0, 1, 2, 3, 4, 5, 6, 7, 8, 9)

# cara mendefinisikan dictionary
sebuah_dictionary = {'nama':'Wiro Sableng',
'prodi':'ilmu komputer',
'email':'wirosableng@localhost',
'website':'http://www.sitampanggarang.com'
}
# cara update sebuah elemen :
print "cara delete sebuah elemen : "
print "\n"

print sebuah_list
del sebuah_list
#print sebuah_list
print "\n"

print sebuah_tuple
del sebuah_tuple
#print sebuah_tuple
print "\n"

print sebuah_dictionary
del sebuah_dictionary
#print sebuah_dictionary
print "\n\n"



Cobalah hapus tanda # pada baris perintah print di bawah perintah del. Cobalah satu
persatu dan amatilah apa yang terjadi. Jika kita coba pada print sebuah_list yang berada
dibawah del sebuah_list. Maka akan muncul pesan error : NameError : name
'sebuah_list' is not defined

Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

54


Gambar 7.6 hasil eksekusi strukdat_6.py
7.7 Menggunakan Built-in Function pada List, Tuple, dan Dictionary
Apakah fitur fitur manipulasi list, tuple, dan dictionary hanya terbatas pada hapus,
tambah dan ubah ?. Python menyediakan beberapa fitur dasar lainnya yang dapat
digunakan untuk proses mencari nilai maksimum dan minimum, menghitung panjang,
membandingkan dua buah struktur data yang sejenis, bahkan mengubah struktur data dari
list ke tuple atau sebaliknya.
Untuk mencari nilai maksimum pada list, tuple, atau dictionary digunakan function
max(), sedangkan untuk mencari nilai minimum digunakan function min(). Untuk
perbandingan dua buah struktur data sejenis, misal list dengan list, digunakanlah function
cmp(). Function cmp() ini akan menghasilkan tiga nilai yaitu -1 jika list pertama kurang
dari list kedua, 0 jika kedua list sama, dan 1 jika list pertama lebih besar dari list kedua.
Kemudian untuk mencari jumlah elemen yang berada pada struktur data tersebut
digunakan function len() . Dan terdapat juga untuk konversi tipe struktur data. Tapi fitur
ini hanya dapat digunakan pada list dan tuple. Dictionary tidak mendukung proses
konversi. Jadi hanya pengubahan dari list ke tuple dan sebaliknya. Untuk pengubahan
dari list ke tuple digunakan function tuple() sedangkan untuk pengubahan dari tuple ke
list digunakan function list().
Agar lebih paham cobalah sedikit source code tentang penggunaan built-in function
yang digunakan untuk manipulasi list, tuple, dan dictionary.

listing : strukdat_7.py
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

55
# cara mendefinisikan list
sebuah_list = ['Zorin OS',
'Ubuntu',
'FreeBSD',
'NetBSD',
'OpenBSD',
'Backtrack',
'Fedora',
'Slackware']

# cara mendefinisikan tuple
sebuah_tuple = (0, 1, 2, 3, 4, 5, 6, 7, 8, 9)

# cara mendefinisikan dictionary
sebuah_dictionary = {'nama':'Wiro Sableng',
'prodi':'ilmu komputer',
'email':'wirosableng@localhost',
'website':'http://www.sitampanggarang.com'
}

#menambahkan elemen baru
print "menambahkan elemen baru : \n"
print sebuah_list
list_baru = sebuah_list + ['PC Linux OS', 'Blankon', 'IGOS', 'OpenSUSE']
print list_baru
print "\n"

print sebuah_tuple
tuple_baru = sebuah_tuple
print tuple_baru
print "\n"

print sebuah_dictionary
dictionary_baru = {'telp':'022-12345678', 'alamat':'Bandung, Jabar'}
print sebuah_dictionary
print "\n\n"
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

56

# membandingkan yang lama dengan yang baru
print "membandingkan yang lama dengan yang baru : \n"
print "sebuah_list banding list_baru : ", cmp(sebuah_list, list_baru)
print "sebuah_tuple banding tuple_baru : ", cmp(sebuah_tuple, tuple_baru)
print "sebuah_dictionary banding dictionary_baru : ", cmp(sebuah_dictionary, dictionary_baru)
print "\n\n"

# mengetahui panjang list, tuple, dan dictionary
print "mengetahui panjang list, tuple, dan dictionary : \n"
print "panjang sebuah_list : ", len(sebuah_list)
print "panjang sebuah_tuple : ", len(sebuah_tuple)
print "panjang sebuah_dictionary : ", len(sebuah_dictionary)
print "\n\n"

# mengubah list, tuple, dictionary menjadi string
print "mengubah list, tuple, dictionary menjadi string : \n"
print str(sebuah_list), ' memiliki panjang karakter : ', len(str(sebuah_list))
print str(sebuah_tuple), ' memiliki panjang karakter : ', len(str(sebuah_tuple))
print str(sebuah_dictionary), ' memiliki panjang karakter : ', len(str(sebuah_dictionary))

# mencari nilai max dan min
print "mencari nilai max dan min : \n"
print "coba periksa sebuah_list :"
print "max : ", max(sebuah_list)
print "min : ", min(sebuah_list)
print "\n"
print "coba periksa sebuah_tuple :"
print "max : ", max(sebuah_tuple)
print "min : ", min(sebuah_tuple)
print "\n"
print "coba periksa sebuah_dictionary :"
print "max : ", max(sebuah_dictionary)
print "min : ", min(sebuah_dictionary)
print "\n"
# mengubah list ke tuple dan sebaliknya
Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

57
print "mengubah list ke tuple : "
print "semula : ", sebuah_list
print "menjadi : ", tuple(sebuah_list)
print "\n"
print "mengubah tuple ke list : "
print "semula : ", sebuah_tuple
print "menjadi : ", list(sebuah_tuple)

Dengan adanya built-in function tersebut pekerjaan Anda sudah dimudahkan oleh Python dalam
memanipulasi struktur data yang telah Anda definisikan sebelumnya. Berikut adalah salah satu
contoh hasil operasi dengan built function dari kode diatas


Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

58


Gambar 7.7 hasil eksekusi strukdat_7.py

Universitas Al Azhar Indonesia Teknik Informatika
Modul Pemrograman Python

59
Daftar Pustaka
Python Software Foundation Team. Python v2.7.2 Documentation 1990 2011. The Python
Software Foundation.
Downey, Allen, Jeffrey Elkner, dan Chris Meyers. How to Think Like a Computer Scientist :
Learning with Python. 2002. Green Tea Press : Wellesley, Massachusetts
Swaroop. A Byte of Python. 2005. IonLab : Bangalore, India
Craven, Paul Vincent. Introduction to Computer Science Using Python and Pygame. 2011.
Simpson College, Computer Science Department : Indianola, Iowa
Lutz, Mark. 2009. Programming Python, USA: OReilly Media Inc.
What is Python Good For?. 2005. General Python FAQ. Python Software Foundation.
http://docs.python.org/faq/general.html#what-is-python-good-for (diakses pada 16 April
2014).
What is Python? Executive Summary. 2007. Python documentation. Python Software
Foundation. http://www.python.org/doc/essays/blurb/ . diakses (diakses pada 16 April
2014).