• Tidak ada hasil yang ditemukan

Alias dan penggandaan

Dalam dokumen Serial Cepat Mahir IlmuKomputer.Com (Halaman 40-80)

Bab 1 Pengantar Python

2.11 String ____________________________________________ 35

2.13.4 Alias dan penggandaan

Dictionary adalah tipe data yang elemen anggotanya dapat di ubah - ubah setiap waktu, karena hal inilah Anda harus berhati - hati dalam aliassing, yang berarti 2 objek dengan nama yang berbeda merujuk ke satu objek yang sama, dapat memberikan dampak satu sama lain. Jika Anda ingin memodifikasi sebuah dictionary dan menyimpan dictionary yang aslinya untuk tidak diubah - ubah, Anda dapat menggunakan metode copy. Contohnya :

>>> stock = {'apel':1, 'jeruk':2, 'manggis':3, 'pepaya':4} >>> stock_hsl_trans = stock.copy()

>>> stock_hsl_trans['apel'] = (stock_hsl_trans['apel'] - 1) >>> stock_hsl_trans

{'manggis': 3, 'apel': 0, 'jeruk': 0, 'pepaya': 4} >>> stock

{'manggis': 3, 'apel': 1, 'jeruk': 0, 'pepaya': 4}

Dapat kita lihat dari contoh diatas, dictionary stock dan stock_hsl_trans tidak mempengaruhi satu sama lain. Sedangkan aliassing keduanya saling mempengaruhi, Misalnya :

-40- of -92- >>> inventory = stock

>>> inventory

{'manggis': 3, 'apel': 1, 'jeruk': 0, 'pepaya': 4} >>> inventory['apel'] = 2

>>> stock

{'manggis': 3, 'apel': 2, 'jeruk': 0, 'pepaya': 4} Pengaksesan kedua objek saling mempengaruhi satu sama lain.

-41- of -92-

Bab 3 Percabangan dan perulangan

3.1 Ekspresi Boolean

Ekspresi boolean adalah ekspresi yang menghasilkan nilai benar atau salah. Di Python ekspresi yang salah di representasikan sebagai nilai 0(Nol) dan ekspresi yang benar sebagai nilai 1(Satu).

Operator == membandingkan 2 nilai dan menghasilkan sebuah ekpresi boolean : >>> 8 == 8

1

>>> 8 == 4 0

pada kalimat di atas, 2 operan mempunyai nilai yang sama dan dibandingkan dengan operator boolean == yang menghasilkan nilai 1 (Benar); pada kalimat kedua, 8 tidak sama dengan 4, maka menghasilkan nilai 0 (Salah).

Operator == adalah salah satu dari operator pembanding, yang lainnya adalah :

Table: Operator pembanding

x != y x tidak sama dengan y x > y x lebih besar dari y x < y x lebih kecil dari y

x >= y x lebih besar sama dengan y x <= y x lebih kecil sama dengan y

Operator pembanding berikut mungkin tidak asing bagi Anda. Simbol - simbol pada Python berbeda dengan simbol matematika pada umumnya. Pada umumnya kesalahan terjadi pada penggunaan simbol satu = (sama dengan) dengan penggunaan simbol 2 = (sama dengan). Perhatikan! bahwa simbol satu = (sama dengan) adalah operator pendeklarasian dan simbol 2 = (sama dengan) adalah

-42- of -92- operator pembanding. Dalam Python juga terdapat simbol >= (lebih besar sama dengan) dan <= (lebih kecil sama dengan).

Contoh operasi boolean yaitu memeriksa kedua kondisi, antara nama dan kata-kunci dengan operator and, yang mengharuskan kedua operand bernilai true.

nama = raw_input("Nama Anda ? ")

katakunci = raw_input("Kata kunci ? ") if nama == "Umar" and katakunci == "guru":

print "Selamat Umar, Anda layak dapat Bintang!" elif nama == "Rock" and katakunci == "gulat":

print "If you smeellll ...." else:

print "Siapa Anda ?"

-43- of -92-

3.2 Perintah if

Pada umumnya dalam membuat program, selalu ada kondisi dimana diperlukan pengecekan suatu kondisi untuk mengarahkan program berjalan sesuai keinginan. Seperti halnya kalimat - kalimat perintah lainnya, kalimat perintah if juga mempunyai struktur kalimat, yang terdiri dari bagian atas dan blok - blok perintah di dalamnya.

HEADERS :

KALIMAT PERINTAH PERTAMA ... ...

...

KALIMAT PERINTAH TERAKHIR

pada bagian HEADERS dimulai dari baris baru dan di akhiri dengan tanda titik dua (:). Kalimat - kalimat perintah yang teridentasi kemudian disebut dengan block baris perintah. Dan isi dari baris perintah tersebut bisa lebih dari satu baris perintah. Misalnya :

if i == a : print i

Selain itu, jika suatu kondisi tidak sesuai dengan kondisi tertentu, Anda dapat membuat kondisi alternatif lainnya, yang berarti terdapat dua kemungkinan dan memeriksanya dengan suatu kondisi untuk menjalankan perintah dari salah satu kondisi tersebut. Misalnya :

if x % 2 == 0 :

print x, "adalah bilangan genap" else :

-44- of -92-

Gambar: if-else

Jika sisa hasil dari pembagian x dengan 2 adalah 0 maka bilangan x tersebut adalah bilangan genap, jika bukan nol (0) atau salah, maka perintah di dalam HEADER else akan dijalankan.

3.2.1 Perintah if berantai

Terkadang kita memerlukan suatu data memenuhi lebih dari satu syarat, dan kita memerlukan 2 cabang kondisi, salah satu cara untuk mengekspresikan model komputasi tersebut adalah dengan metode kondisi berantai :

if x < y :

print x, "lebih kecil dari", y elif x > y :

print x, "lebih besar dari", y else :

-45- of -92-

Gambar: Kondisi berantai

elif adalah singkatan dari else if, yang berarti jika kondisi if dilaksanakan maka kondisi berikutnya akan di uji juga, tidak ada batasan mengenai penggunaan kondisi elif, akan tetapi seharusnya dalam akhir kondisi diperlukan adanya kondisi else, sebagai jalan alternatif jika semua kondisi tidak terpenuhi.

Sebagai latihan dari bagian bab ini, coba Anda buat suatu kondisi menu. number = 78

tebak = 0

while tebak != number :

#Selama tebak tidak sama dengan number tebak = input ("Tebak suatu angka: ")

if tebak > number :

print "Terlalu tinggi"

elif tebak < number : print "Terlalu rendah"

-46- of -92-

3.2.2 Kondisi bersarang

Kondisi bersarang adalah suatu kondisi di dalam kondisi tertentu, Jika terdapat 2 cabang kondisi maka di dalam salah satu cabang kondisi tersebut dapat pula di isi suatu kondisi tertentu.Misalnya :

if x == y:

print x, y "mempunyai nilai yang sama" else :

if x > y :

print x, "lebih besar dari", y if x < y :

print x, "lebih kecil dari", y

Kondisi pertama mempunyai 2 pilihan kondisi, kondisi pertama mempunyai perintah baris yang sederhana, sedangkan kondisi kedua mempunyai 2 pilihan kondisi lagi didalamnya. Walaupun pengidentasian dalam Python sangat mudah untuk di baca, akan tetapi akan lebih sulit untuk membacanya secara cepat. Pada umumnya, lebih baik menghindari kondisi bersarang seperti ini.

Operator logika menyediakan suatu cara untuk menyederhanakan kondisi bersarang. Misalnya kita dapat menjalankan perintah berikut dengan menggunakan satu kondisi :

if 0 < x : if x < 10 :

print x, "bilangan positif yang terdiri dari satu digit" perintah print akan dijalankan jika kedua kondisi di atas terpenuhi, jadi kita dapat menulisnya dengan cara menggunakan operator logika and :

if 0 < x and x < 10 :

print x, "bilangan positif yang terdiri dari satu digit" Python juga menyediakan struktur kalimat matematika pada umumnya, seperti : if 0 < x < 10 :

-47- of -92- print x, "bilangan positif yang terdiri dari satu digit" contoh diatas sama artinya dengan contoh - contoh sebelumnya yang menggunakan kondisi berantai dan operator logika.

3.3 Perulangan for

Perintah for dalam python mempunyai ciri khas tersendiri dibandingkan dengan perulangan for pada bahasa pemograman C ataupun Pascal. Tidak hanya mengulang bilangan - bilangan sebuah ekspresi aritmatik(dalam Pascal), atau memberikan keleluasaan si user untuk mendefinisikan perulangan iterasi dan menghentikan perulangan pada saat kondisi tertentu (dalam C). Dalam Python mengulang berbagai macam tipe data sekuensial seperti list, string, dan tuple. Contohnya:

>>> a = ['satu', 'dua', 'tiga', 'empat'] >>> for i in a : ... print i ... satu dua tiga empat

Contoh diatas berarti fungsi for <iterasi> in <objek>:.

3.4 Perulangan while

Perulangan while akan mengulang didalam ruang lingkup while, selama suatu kondisi terpenuhi. Misalnya :

>>> n = 9

>>> while n < 20 : ... print n

-48- of -92- ... 9 10 11 12 13 14 15 16 17 18 19

Pada contoh diatas, nilai variabel n akan ditambahkan 1 secara terus menerus sampai kondisi n lebih kecil dari 20.

3.5 Fungsi range()

Jika Anda ingin melakukan perulangan sejumlah yang diinginkan, fungsi built-in range sangat membantu. Fungsi tersebut menghasilkan sejumlah indeks dari nilai yang telah ditentukan. Contohnya :

>>> range(15)

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14] Ataupun sebagian angka yang diinginkan. Contohnya :

>>> range (8, 15)

[8, 9, 10, 11, 12, 13, 14] >>> range(0,9,3)

[0, 3, 6]

-49- of -92- [0, 3, 6, 9, 12, 15, 18]

Contoh diatas menunjukan kelipatan dari suatu interval bilangan yang mempunyai sintaks range(<nilai-awal>, <nilai-akhir>, <kelipatan-angka>). Selanjutnya adalah Contoh perulangan for dengan range() :

>>> for i in range(10): ... print i ... 0 1 2 3 4 5 6 7 8 9

Mengulang perulangan for sejumlah anggota elemen suatu tipe data sekuensial. Contohnya :

>>> a

['satu', 'dua', 'tiga', 'empat'] >>> for i in range(len(a)): ... print i ... 0 1 2

-50- of -92- 3

3.6 Perintah break, continue dan else

Perintah break seperti dalam bahasa C, berarti keluar dari ruang lingkup yang terkecil dari kondisi for atau while.

Perintah continue sama halnya dengan di C, yang berfungsi melanjutkan kalimat perintah berikutnya dalam kondisi perulangan.

Pada kondisi perulangan juga diperbolehkan untuk menggunakan kalimat perintah else, yang dijalankan pada saat kondisi perulangan for tidak menemui suatu kondisi atau jika suatu kondisi tersebut mengalami kesalahan / false (dengan while), tetapi bukan pada saat kondisi perulangan dihentikan dengan perintah break. Berikut adalah contohnya :

for n in range(2, 10): for x in range(2, n): if n % x == 0:

print n, 'sama dengan', x, '*', n/x break

else:

print n, 'adalah bilangan prima' 2 adalah bilangan prima

3 adalah bilangan prima 4 sama dengan 2 * 2 5 adalah bilangan prima 6 sama dengan 2 * 3 7 adalah bilangan prima 8 sama dengan 2 * 4 9 sama dengan 3 * 3

-51- of -92- Penjelasannya adalah apabila suatu kondisi dalam perulangan for x in range(2, n) tidak ada yang terpenuhi maka alur perulangannya akan lari ke ruang lingkup perintah else.

3.7 Perintah return

Perintah return dapat menghentikan suatu proses dari fungsi sebelum mengakhiri fungsi tersebut. Alasan Anda menggunakan perintah return adalah jika Anda menemui sebuah kesalahan kondisi, yang berarti nilai suatu fungsi tersebut mengembalikan nilai null (kosong) :

import math

def print_log (x): if x <= 0 :

print x, "Bilangan lebih sama dengan 0" return

hasil = math.log (x)

print "Hasil log dari", x, "adalah", hasil

Fungsi print_log() mengambil sebuah parameter x. Hal yang dilakukan pertama kali adalah memeriksa apakah nilai x lebih kecil atau sama dengan 0, yang dapat menghasilkan pesan kesalahan jika di proses dalam instruksi perintah selanjutnya maka diberi perintah return untuk keluar dari fungsi tersebut. Alur jalannya program segera dikembalikan ke pemanggil dari fungsi tersebut, dan instruksi - instruksi berikutnya tidak akan dijalankan. Perhatikan! untuk memanggil fungsi dari modul math harus menggunakan perintah import <nama-modul> .

3.8 Rekursif

Telah disebutkan sebelumnya, bahwa kita dapat memanggil suatu fungsi di dalam fungsi lainnya, dan Anda telah melihat beberapa contoh - contohnya. Kita juga dapat memanggil fungsi itu sendiri yang kemudian di kenal dengan istilah rekursif. Mungkin sekilas hal itu tidak memberi alasan mengapa rekursif ini adalah hal yang baik, tetapi akan berubah menjadi program yang menarik.Sebagai contohnya, lihat fungsi berikut :

-52- of -92- if x == 0 :

print "Sudah nol koq!" else :

print x

hitung_mundur (x-1)

fungsi diatas menampilkan program hitung mundur dari nilai parameter x yang diberikan, parameter tersebut seharusnya sebuah bilangan integer yang positif, dan jika nilai x sama dengan 0 akan menampilkan string yang memberitahu bahwa nilai x adalah 0.Kalau tidak nol(0) maka akan memanggil fungsi itu sendiri dan memberi nilai x-1 sebagai parameternya.

Prosesnya adalah sebagai berikut, jika kita memanggil fungsi tersebut dengan nilai 3, maka nilai 3 akan di check apabila bukan nol (0) maka akan di cetak, dan memanggil fungsi itu sendiri dengan parameter 3-1, yaitu nilai 2, kemudian nilai 2 akan di periksa apakah nilai 2 sama dengan 0, jika bukan maka akan di cetak, dan memanggil fungsi tersebut dengan nilai parameter 1, di check kembali bila bukan nol (0) maka akan akan memberikan parameter x-1 ke fungsi itu sendiri, setelah itu maka fungsi tersebut di beri paramater 0 maka string "Sudah nol koq!" dicetak, kemudian kembali lagi ke fungsi sebelumnya dengan nilai 1, kembali ke nilai 2, kembali ke nilai 3.

Jadi tampilan hasilnya akan seperti berikut. 3

2 1

Sudah nol koq!

Hal ini akan berbeda jika perintah print diletakkan setelah pemanggilan fungsi rekursif itu sendiri. Misalnya :

def hitung_maju(x): if x == 0 :

print "Sudah nol, Mulai!" else :

-53- of -92- hitung_maju (x-1)

print x

maka tampilannya akan menjadi : Sudah nol, Mulai!

1 2 3 Latihan

Buatlah fungsi bilangan faktorial, dengan menggunakan metode rekursif diatas. Jawaban def factorial(n): if n <= 1: return 1 return n*factorial(n-1)

3.9 Rekursif tanpa batas

Jika fungsi rekursif tidak pernah mencapai kondisi dasar, maka akan memanggil fungsi rekursif secara berulang - ulang selamanya, dan program tersebut tidak akan pernah berakhir. Keadaan ini dikenal dengan Rekursif tanpa batas , dan kondisi ini sangat tidak disarankan. Contoh programnya :

def rekursif(): rekursif()

Dalam lingkungan pemograman, sebuah program dengan rekursif tanpa batas tidak pernah benar - benar berjalan selamanya. Interpreter akan menampilkan pesan kesalahan apabila batas maksimal rekursif telah dicapai, Pesan kesalahannya : Traceback (most recent call last):

-54- of -92- File "<stdin>", line 2, in rekursif

(98 Perulangan telah terjadi)

File "<stdin>", line 2, in rekursif

RuntimeError: maximum recursion depth exceeded

Sebenarnya tampilannya tidak akan seperti di atas bila dijalankan di interpreter Python.

-55- of -92-

Bab 4 Fungsi

4.1 Pemanggilan fungsi

Anda telah melihat satu contoh pemanggilan fungsi pada bab sebelumnya : >>> type ("54")

<'type string'>

Nama fungsi tersebut adalah type dan fungsinya untuk menampilkan tipe data suatu nilai atau suatu variabel. Nilai atau variabel sebagai argumen parameter pada fungsi, harus diletakkan di dalam tanda kurung. Biasanya suatu fungsi mengambil satu atau beberapa argumen dan menampilkan hasil dari fungsi tersebut yang dinamakan nilai hasil.

Walaupun suatu nama variabel tersebut merupakan suatu fungsi, akan tetap menghasilkan nilai dari fungsi tersebut. Misalnya,

>>> fungsi = type ("satu") >>> print fungsi

<'type string'>

Sebagai contoh lain adalah fungsi id, yang mengambil suatu nilai atau variabel dan mengembalikan suatu nilai integer yang mewakili identitas dari suatu nilai atau variabel tersebut.Misalnya : >>> id (9) 135109956 >>> angka = 9 >>> id (angka) 135109956

Dapat kita lihat bahwa id suatu variabel merupakan id dari nilai variabel tersebut, setiap nilai mempunyai sebuah nomor id , yang unik atau berbeda satu sama lain dan angka tersebut disimpan pada memori komputer.

-56- of -92- Python menyediakan fungsi - fungsi built-in yang dapat mengubah suatu nilai dari suatu tipe data ke tipe data lainnya. Fungsi int mengambil suatu nilai yang mungkin ke tipe data integer, atau menimbulkan pesan kesalahan nilai, Misalnya :

>>> int ("30.5")#Ingat segala sesuatu yang di apit dalam #tanda kutip adalah tipe data string

30

>>> int ("Hello World!")

Traceback (most recent call last): File "<stdin>", line 1, in ?

ValueError: invalid literal for int(): Hello World!

fungsi int juga dapat digunakan untuk mengubah tipe data float menjadi tipe data int, akan tetapi nilai yang berada di belakang nol akan di hilangkan, Misalnya : >>> int (3.14)

3

>>> int (-7.5) -7

sedangkan fungsi float dapat mengubah nilai integer dan string menjadi nilai float. Misalnya :

>>> float (43) 43.0

>>> float ("123") 123.0

dari sini terlihat bahwa nilai 43 dalam integer dan nilai 43 dalam float mempunyai nilai matematik yang sama, tetapi berbeda tipe data. Perbedaan tipe data ini terjadi di dalam memori komputer.

Yang terakhir adalah fungsi pengubah nilai string, fungsi str akan mengubah nilai integer dan nilai float menjadi tipe data string. Misalnya

-57- of -92- '23'

>>> str (45.9) '45.9'

Dalam Python juga terdapat fitur pengubah nilai secara otomatis, yang akan mengubah nilai hasil jika salah satu operandnya mempunyai tipe data yang berbeda, pada contohnya pembagian nilai dengan tipe data integer dengan nilai dengan tipe data float akan menghasilkan nilai dengan tipe data float.

>>> 60 / 4.5

13.333333333333334

nilai 60 adalah nilai dari tipe data integer, sedangkan 4.5 adalah nilai dari tipe data float, pada python perbedaan tipe data ini akan secara otomatis dirubah hasilnya menjadi nilai yang sesuai.

4.3 Membuat Fungsi baru

Sejauh ini kita hanya menggunakan fungsi - fungsi yang tersedia di Python, kita juga dapat membuat sebuah fungsi baru untuk menyelesaikan masalah yang spesifik.

Dalam konteks pemograman, sebuah fungsi adalah sebuah himpunan dari beberapa instruksi untuk menyelesaikan suatu masalah spesifik yang diinginkan. Sebelum membuat fungsi kita harus terlebih dahulu menspesifikasikan pendefinisian fungsi itu.

Sintaks Pendefinisian fungsi adalah :

def NAMA_FUNGSI ( DAFTAR PARAMETER): PERINTAH - PERINTAH DALAM FUNGSI

Anda dapat menggunakan nama fungsi apa saja sesuai keinginan dan yang menunjukkan kegunaan fungsi tersebut, tetapi Anda tidak dapat menggunakan kata kunci dalam Python sebagai nama fungsi. DAFTAR PARAMETER merupakan parameter - parameter apa saja yang ingin di proses oleh fungsi tersebut, Anda juga diperbolehkan untuk tidak meletakan parameter fungsi tersebut jika tidak ada data yang diproses oleh fungsi tersebut. Perintah - perintah dalam fungsi dapat di letakkan di bawah pendefinisian fungsi dengan kata kunci def yang diletakkan setelah identasi dari kiri di atas, dalam contoh di atas dipergunakan identasi sebanyak 2 spasi.

-58- of -92- Contoh fungsi pertama yang tidak mempergunakan parameter :

def baris_baru (): print

Fungsi diatas mempunyai nama baris_baru dan tidak mempunyai parameter di dalam tanda kurung (tempat dimana parameter diletakkan)mempunyai satu baris perintah yang menghasilkan baris kosong yang baru (ini terjadi jika anda menggunakan perintah print dengan tidak meletakan argumen-argumennya). Penggunaan fungsi diatas adalah :

print "Contoh fungsi baris baru" baris_baru ()

print "Dibawah baris baru yang kosong" Tampilan dari perintah di atas adalah :

Contoh fungsi baris baru

Dibawah baris baru yang kosong

Perhatikan baris kosong diatas, jika kita menginginkan baris kosong lebih dari satu, kita dapat langsung memanggil fungsi baris_baru berulang kali atau membuat fungsi baru yang isi perintahnya terdapat fungsi baris_baru, Misalnya :

def tiga_baris (): baris_baru () baris_baru () baris_baru ()

print "Contoh fungsi baris baru" tiga_baris ()

print "Dibawah baris baru yang kosong"

-59- of -92- baris_baru(). Jadi dapat kita simpulkan bahwa :

1. Kita dapat memanggil suatu fungsi berulangkali.

2. Kita dapat membuat fungsi yang dapat memanggil fungsi lain.

3. Membuat suatu fungsi memudahkan Anda membuat suatu kelompok kecil untuk menyederhanakan penyelesaian masalah yang kompleks.

4. Kegunaan suatu fungsi adalah membuat program lebih kecil, karena dapat merepresentasikan penggunaan kode yang berulang - ulang.

4.4 Alur eksekusi program

Untuk memastikan bahwa suatu fungsi telah didefinisikan sebelum fungsi itu digunakan, Anda harus mengetahui perintah yang mana yang sekarang Anda jalankan, ini yang di sebut sebagai Alur eksekusi program.

Pada saat program dijalankan selalu dimulai dari perintah pertama dalam program. Perintah - perintah tersebut dijalankan satu kali, dari atas sampai bawah.

Dalam pendefinisian suatu fungsi kita dapat menggunakan fungsi di dalam suatu fungsi, yang berarti kita harus memanggil fungsi yang di atas untuk menjalankan fungsi yang di bawah. Pemanggilan suatu fungsi bisa juga merupakan pengubah alternatif pembacaan alur eksekusi program, karena pemanggilan fungsi di dalam fungsi harus memperhatikan fungsi yang ada diatasnya untuk mendapatkan hasil dari fungsi didalam fungsi tersebut. Jadi intinya Ketika Anda melihat suatu program jangan melihat program tersebut dari atas ke bawah, melainkan perhatikanlah alur jalannya program tersebut.

4.5 Argumen parameter

Beberapa fungsi built-in yang telah Anda gunakan memerlukan beberapa argumen parameter, nilai yang di proses dalam suatu fungsi. Contohnya pada saat menggunakan fungsi built-in type yang memerlukan nilai untuk menentukan tipe data dari nilai tersebut. Beberapa fungsi juga memerlukan argumen lebih dari satu, misalnya fungsi pow yang memerlukan 2 argumen, nilai dasar dan nilai pangkat. Contohnya :

>>> pow (3, 1) 3

fungsi pow digunakan untuk memperoleh nilai dari eksponen suatu nilai. Jika fungsi pow diisi dengan satu argumen, maka akan timbul pesan kesalahan.

-60- of -92- >>> pow (3)

Traceback (most recent call last): File "<stdin>", line 1, in ?

TypeError: pow() takes at least 2 arguments (1 given) Berikut contoh fungsi yang menggunakan suatu argumen.

def cetak (kata):

print "Fungsi ini mencetak=>",kata

Fungsi cetak ini memerlukan satu argumen parameter yang bernama "kata", nilai parameter ini dapat kita tentukan untuk menjalankan fungsi ini.

cetak ("Hello Fungsi") Fungsi ini mencetak=> Hello Fungsi cetak (54321)

Funsi ini mencetak=> 54321

Pada pemanggilan fungsi di atas, nilai argumen pertama bertipe data string, yang kedua bertipe data integer. Jika kita jalankan fungsi cetak tanpa argumen akan menghasilkan pesan kesalahan :

>>> cetak ()

Traceback (most recent call last): File "<stdin>", line 1, in ?

TypeError: cetak() takes exactly 1 argument (0 given) Yang menjelaskan bahwa fungsi cetak, memerlukan 1 argumen parameter.

4.6 Variabel lokal dalam Fungsi

Ketika Anda membuat variabel lokal pada suatu fungsi, variabel tersebut hanya dapat dikenali dalam fungsi itu saja, dan Anda tidak dapat menggunakannya di luar dari fungsi itu. Misalnya :

-61- of -92- lokal = kata + " tambah lokal"

print lokal

>>> cetak_lokal ("apa saja") apa saja tambah lokal

>>> print lokal

Traceback (most recent call last): File "<stdin>", line 1, in ?

NameError: name 'lokal' is not defined

>>> print kata

Traceback (most recent call last): File "<stdin>", line 1, in ?

NameError: name 'kata' is not defined

perhatikan! bahwa fungsi diatas memerlukan argumen parameter yang bertipe data string, karena pada variabel lokal terdapat operator tambah (+) yang berarti penggabungan antar string. Dan tidak diperbolehkan untuk menampilkan variabel lokal yang terdapat di dalam fungsi cetak_lokal. Parameter suatu fungsi juga

Dalam dokumen Serial Cepat Mahir IlmuKomputer.Com (Halaman 40-80)

Dokumen terkait