• Tidak ada hasil yang ditemukan

Modul Pemrograman Python Dasar

N/A
N/A
Protected

Academic year: 2021

Membagikan "Modul Pemrograman Python Dasar"

Copied!
60
0
0

Teks penuh

(1)

Disusun Oleh :

WILLY PRATAMA

0102509025

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS AL AZHAR INDONESIA

(2)

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

(3)

Modul Pemrograman Python

2

DAFTAR ISI

Kata Pengantar ... 1

1.Pengenalan Python ... 4

1.1 Sejarah Python ... 4

1.2Menggunakan Python Interpreter Prompt dan Python Compiler ... 4

1.3Elemen 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.1Operasi Input... 9

Membaca Masukan ... 9

Membaca Dari File Text ... 10

3.2Operasi Output ... 13

Mencetak ke Layar ... 13

Menyimpan Ke File ... 14

3.3Operasi Assignment ... 16

4.Mengenal Tipe Data dan Operator ... 18

4.1Tipe Data di Python ... 18

4.2Operator ... 21

5.Perintah Kondisional ... 25

5.1Satu Kondisi (if)... 25

5.2Dua Kondisi (if - else) ... 25

5.3Lebih dari dua kondisi (if - elif)... 26

5.4Kondisi : if bersarang (nested if) ... 28

6.Menyusun Pengulangan ... 29

6.1Mengenal Pengulangan “for” dan “while” ... 29

(4)

Modul Pemrograman Python

3

6.3Memahami Function “range”... 32

6.4Menggunakan Function “range” pada Pengulangan “for” ... 34

6.5Menyusun Pengulangan dengan “while” ... 38

7.Mengenal Data Struktur Python Tingkat Lanjut ... 42

7.1Mengenal 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

(5)

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:

(6)

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.

(7)

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.

(8)

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

(9)

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

(10)

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' >>>_

(11)

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.

(12)

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,

(13)

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()

(14)

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 :

(15)

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 :

(16)

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() >>>_

(17)

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

(18)

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 :

(19)

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 :

(20)

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 :

(21)

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

(22)

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

(23)

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

(24)

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.

(25)

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

(26)

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,

(27)

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 :

(28)

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‘.

(29)

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 :

(30)

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

(31)

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 :

(32)

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":

(33)

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

(34)

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)

(35)

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 :

(36)

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 ""

(37)

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:

(38)

Modul Pemrograman Python

37

Kode diatas jika dieksekusi akan tampil seperti berikut :

(39)

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

(40)

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

(41)

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

(42)

Modul Pemrograman Python

41

(43)

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.

(44)

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.

(45)

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.

(46)

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:

(47)

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 :

(48)

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.

(49)

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.

(50)

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"

(51)

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.

(52)

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"

(53)

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.

(54)

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”

(55)

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.

(56)

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

(57)

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"

(58)

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

(59)

Modul Pemrograman Python

58

(60)

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: O’Reilly 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).

Gambar

Tabel dibawah ini mencantumkan kata kunci yang ada di Python :
Gambar 2.1 Konfigurasi pada path
Gambar 3.1 Hasil eksekusi kali.py
Tabel 3.1 Operasi Assignment
+7

Referensi

Dokumen terkait

Keunikan tersebut karena Rumah Sakit merupakan organisasi dengan produknya adalah jasa pelayanan yang berhubungan dengan kesehatan manusia, sehingga harus ada

kinerja usaha dan/atau kegiatan, Pemerintah mendorong penanggung jawab usaha dan/atau kegiatan melakukan audit lingkungan hidup.” Dalam pasal ini bila diperhatikan,

Regiondiff problem and related polycover problem – checking if a polytope is covered by the union of other polytopes – are utilized very often in derivation of the explicit solutions

[r]

Tujuan dari penelitian ini adalah untuk mengetahui apakah kuda-kuda kayu dengan bentangan 15 meter pada gedung Gereja GKI Sion Tanah Merah Kabupaten Boven

QModBus merupakan prangkat lunak untuk membaca data yang berada di dalam perangkat keras Schneider IEM 3255 , Schneider IEM 3255 menggunakan protokol ModBus, melalui

Kepala Sekolah dapat meninjau ulang atau mengakhiri ikatan kerja sama antara organisasi sekolah dengan Tenaga Kependidikan Tidak Tetap Yayasan (TKT) yang dinilai

Charles Darwin (1809-1882) adalah seorang ahli biologi yang mengemukakan teori evolusi. Dalam teori evolusi dikemukakan bahwa makhluk hidup dan termasuk di dalamnya