You are on page 1of 15

Dasar-Dasar Python

Salman Agus Supriadi

Bagian: 1—Dasar-Dasar Python

Tingkat: Dasar

Tujuan: Memperkenalkan Python dan sintaks dasarnya.

Abstrak: Cara menjalankan skrip Python, variabel dan operator, perintah kendali
seleksi dan perulangan.

Prasyarat: Tidak ada.

Adalah kebiasaan yang baik jika sebelum membaca suatu tulisan kita
mengetahui terlebih dahulu apa yang akan kita dapatkan dari tulisan tersebut.
Pengantar ini akan memberikan petunjuk kira-kira apa yang akan Anda dapatkan
setelah Anda selesai membaca sampai di akhir tulisan.

Tulisan ini dimaksudkan untuk memberikan pengetahuan awal pemrograman


dengan bahasa Python. Di sini tidak akan dibahas secara ditel kemampuan-
kemampuan yang dipunyai Python. Karena biasanya pembahasan ditel akan
membawa kita pada uraian yang panjang lebar dan tidak langsung pada inti
permasalahan. Silakan merujuk pada dokumentasi-dokumentasi tentang Python,
yang bisa didapatkan dari situs resmi Python di www.python.org jika ingin
mendapatkan dokumentasi lengkap. Beberapa tulisan yang membahas
perbandingan Python dengan bahasa pemrograman yang lain juga banyak
bertebaran di Internet, silakan mulai dari Google atau Yahoo!

Penjelasan yang mengikuti pendahuluan ini akan memberi pengetahuan pada


pembaca bagaimana membuat program —yang terkadang disebut dengan skrip
—dalam bahasa pemrograman Python. Pembaca akan mampu membuat
program dalam bahasa Python yang sederhana setelah membaca tulisan ini
secara lengkap. Mampu di sini berarti mengetahui dan bisa menggunakan
sintaks-sintaks dasar yang dipakai dalam Python.
Tutorial ini dibuat sederhana dengan sebisa mungkin menghindari istilah-istilah
yang sulit kecuali kalau memang tidak bisa dihindari lagi. Ini karena penulis
mengharapkan pembaca yang tidak mempunyai latar belakang pemrograman
pun bisa mengikuti tulisan ini.

Asumsi yang diambil oleh penulis adalah interpreter Python sudah terinstal
dengan benar pada komputer Anda.

Memulai Python

Menggunakan Mode Interaktif

Anda dapat bekerja dengan Python secara interaktif dengan interpreter Python.
Dalam mode interaktif kita dapat bekerja seperti saat kita bekerja dalam prompt
sistem operasi. Interpreter Python bisa Anda aktifkan dengan memberi perintah
pada prompt sistem operasi:

$ python

Interpreter Python akan menampilkan

Python 1.5.2 (#1, Feb 1 2000, 16:32:16) [GCC egcs-2.91.66 19990314+/Linux


(egcs-on linux-i386Copyright 1991-1995 Stichting Mathematisch Centrum,
Amsterdam>>>

Tiga tanda lebih besar (>>>) adalah prompt utama Python. Untuk perintah yang
masih berlanjut Python akan memberikan respon dengan tanda tiga titik (...).

>>> if 1:...

Untuk keluar dari prompt Python menuju prompt sistem operasi Anda bisa
menekan tombol yang menghasilkan karakter akhir file, Ctrl-Z (di DOS/Windows)
atau Ctrl-D (di Unix).

Mode interaktif sangat bermanfaat untuk mencoba perintah-perintah Python


sebelum membuat skrip. Dalam tulisan ini kita akan lebih banyak bekerja
menggunakan skrip.
Menggunakan Skrip

Kalau Anda memakai mode interaktif saat membuat program, Anda tidak bisa
menyimpannya ke dalam media penyimpanan. Untuk mengatasi ini Anda bisa
membuat skrip dengan editor teks yang menghasilkan teks murni, misalnya
Notepad atau vi. Aktifkan editor teks Anda dan ketikkan baris-baris perintah ini:

#! /usr/bin/pythonprint "Belajar Python..."# akhir file

Beri nama skrip ini belajar.py. Skrip ini hanya akan mencetak string Belajar
Python... ke layar. Untuk menjalankan skrip ini kita hanya perlu mengetikkan:

$ python belajar.py

pada prompt sistem operasi.

Baris pertama adalah khas untuk lingkungan Unix/Linux, yaitu diberikan jika
skrip ini ingin dijalankan tanpa mengetikkan interpreter yang akan
menerjemahkan skrip yang bersangkutan, tentu saja setelah mengubah hak
akses dari skrip tersebut menjadi executable. Baris ini tidak akan berpengaruh di
sistem operasi Windows. Di contoh-contoh skrip selanjutnya baris pertama akan
dihapuskan untuk menghemat tempat.

Baris kedua berfungsi untuk mencetak string yang diapit tanda petik.

Baris ketiga adalah keterangan, atau komentar, yang tidak akan mempengaruhi
jalannya program. Keterangan selalu diawali dengan tanda #. Jika interpreter
menemukan tanda ini maka mulai tanda ini sampai akhir baris akan dianggap
sebagai keterangan.

Variabel dan Operator

Membuat variabel dalam Python sangat sederhana. Anda hanya perlu


mengisikan nilai pada sebuah variabel dengan tipe data yang Anda inginkan.
Operator pengisian adalah tanda sama-dengan (=).

Variabel dalam Python sangat dinamis. Artinya:


variabel tidak perlu dideklarasikan mempunyai jenis data tertentu;

jenis data variabel dapat berubah saat program berjalan.

Bilangan

Python mengenal beberapa jenis bilangan yaitu bilangan bulat (integer),


bilangan pecahan (floating point), dan bilangan kompleks. Bilangan kompleks
bisa dituliskan dengan format (real+imajinerj) atau menggunakan fungsi
complex(real, imajiner). Untuk jenis data bilangan yang lain tanpa dijelaskan
sudah bisa dimengerti dari contoh berikut:

variabel_integer = 10variabel_floating = 24.5variabel_kompleks = 3+4jprint


variabel_integerprint variabel_floatingprint variabel_kompleks

Operator matematik berfungsi dengan normal di Python seperti dalam bahasa


pemrograman yang lain. Ada beberapa catatan yang harus diperhatikan.

Operasi pengisian beberapa variabel dengan nilai yang sama dapat dilakukan
sekali jalan.

Tanda () dipakai untuk mengelompokkan operasi yang harus dilakukan terlebih


dahulu.

Pembagian bilangan integer dengan bilangan integer akan dibulatkan ke bawah.

Bilangan integer akan dikonversikan menjadi bilangan floating point dalam


operasi yang melibatkan bilangan integer dan bilangan floating point.

Kita tidak dapat mengkonversikan bilangan kompleks ke bilangan real (floating


point atau integer); hanya bilangan mutlaknya yang bisa kita dapatkan.

Contoh-contoh berikut akan memberikan gambaran pernyataan di atas.

a = b = c = d = 0print 'a=>',a,'b=>',b,'c=>',c,'d=>',dx = 30 - 10 / 2print


'x=>',xy = (30 - 10) / 2print 'y=>',yprint '10 / 3 =',10 / 3print '10 / 3.5 =',10 /
3.5print '8 * 12.4 =',8 * 12.4print 'abs(1+9j) =',abs(1+9j)

String

String dapat ditulis dengan tiga cara:

diapit tanda petik tunggal;

diapit tanda petik ganda;


diapit tiga tanda petik tunggal atau tiga tanda petik ganda.

Cara yang dipakai harus disesuaikan dengan kebutuhan. Perhatikan contoh


berikut:

print 'dibatasi tanda petik tunggal'print "dibatasi tanda petik ganda"printprint


'"petik ganda" dalam petik tunggal'print "'petik tunggal' dalam petik
ganda"printprint '\'petik tunggal\' dalam petik tunggal harus menggunakan
karakter+escape'print "begitu juga \"petik ganda\" dalam petik ganda"

Dari contoh ini bisa dilihat bahwa kita tidak dapat mencetak tanda petik tunggal
dalam string yang diapit dengan tanda petik tunggal juga. Begitu pula untuk
tanda petik ganda. Tetapi kita dapat memakai apa yang disebut dengan karakter
escape. Tanda ini memberitahukan pada interpreter bahwa karakter yang
mengikutinya tidak diartikan sebagaimana lazimnya. Dalam contoh ini, tanda
petik tidak diartikan sebagai batas string jika didahului dengan karakter escape.

Perhatikan juga contoh berikut:

print 'Baris kalimat ini akan nampak terlalu panjang jika \dituliskan memanjang
secara lengkap.'print 'karakter escape diperlukan jika ingin mencetak dibaris\n
baru'printprint """String terformat dapat dicetak dengan diapit"tiga" tanda petik
tunggal maupun 'tiga' tanda petik ganda. Dengan tanda ini string akan
dicetak seperti saat ia ditulis."""

Sehubungan dengan jenis data string ini terdapat operator khusus untuk string
yaitu operator penggabungan (concatenation operator), yaitu +, dan operator
perulangan, yaitu *.

stringA = "String A"stringB = "String B"print 'stringA+stringB


=',stringA+stringBprint "'-'*20 =",'-'*20

Sifat lain yang dimiliki oleh string adalah bisa diambil sebagian dari karakter
pembentuknya, karena string ini adalah array, atau deretan, karakter. Kita dapat
mengambil sebagian karakter dari string ini dengan notasi slice. Namun
karakter-karakter yang membentuk string ini tidak dapat diubah.

stringA = "String A"print 'stringA[4] =',stringA[4]print 'stringA[2:6]


=',stringA[2:6]

List
List disebut array dalam bahasa pemrograman yang lain. List adalah jenis data
campuran yang bisa memiliki komponen penyusun yang berbeda-beda. Sebuah
list dapat dibuat dengan dengan menggunakan tanda kurung siku, [ ]. Anggota
list didaftar dalam kurung siku tersebut dan masing-masing dipisahkan oleh
tanda koma. Sifat-sifat list bisa didaftar seperti ini:

Komponen penyusunnya bisa diganti.

Komponen penyusunya dapat dibaca dan dimanipulasi secara langsung.

Komponen penyusunnya bisa ditambah.

Komponen penyusunnya dapat diambil dengan menunjukkan indeksnya atau


dengan notasi slice.

Komponen penyusun sebuah list dapat juga berupa list yang lain.

Untuk lebih jelasnya bisa dicoba skrip berikut:

x = [1,2, 'tiga', 'empat']print xx[1] = x[1] + 2print xx[1] = 'dua'print xx = x +


['tambahan', 1]print xprint 'x[2] =',x[2]print 'x[1:4] =',x[1:4]y = ['Salman',
'AS']x[0] = yprint x

Dictionary

Berbeda dengan list yang memakai indeks angka untuk merujuk pada isi
variabel, dictionary memakai key untuk merujuk pada isi variabelnya. Sifat
kedua jenis data ini hanya berbeda dalam beberapa hal saja.

Untuk mendeklarasikan sebuah dictionary, Python memakai tanda { }.

d = {'nama':'Salman AS', 'nilai':3}print dprint d['nama']

Untuk mengakses anggota suatu dictionary kita memakai lambang [ ]


sebagaimana halnya list.

Dictionary bisa mempunyai anggota sebuah list, atau dictionary lagi.

d = {'nama':'Salman AS', 'nilai':3}print dnama_detail =


{'depan':'Salman','tengah':'Agus','belakang':'Supriadi'}print
nama_detaild['nama'] = nama_detailprint dprint d['nama']['depan']nilai_detail =
[3,4,2]d['nilai'] = nilai_detailprint d

Tuple, Antara List dan String

Terdapat satu jenis data yang khas milik Python, yaitu tuple. Jenis data ini
dideklarasikan dengan tanda ( ). Anggota-anggota tuple tidak bisa diganti dan
dapat berupa bilangan atau string. Tuple dapat juga berisi tuple yang lain,
dictionary, maupun list.

menu_file = ('New', 'Open')print menu_filemenu_edit = ('Save', 'Save AS')menu


= (menu_file, menu_edit, 'exit', ['help'])print menuprint menu[3][0]menu_lain =
(menu_file, menu_edit, 'exit', {'faq':'faq.html', 'manual':'man.html'})print
menu_lain

Perintah Kendali

Seleksi

Satu-satunya perintah seleksi dalam Python adalah if. Format umum perintah ini
adalah:

if kondisi: perintah_jika_kondisi_benarelif kondisi_lain:


perintah_jika_kondisi_lain_benarelse:
perintah_jika_tak_ada_kondisi_yang_benar

Kita dapat mencoba seleksi dengan if ini dalam modus interaktif Python. Aktifkan
interpreter Python Anda dan ketikkan baris-baris perintah ini pada prompt
Python.

>>> x = 4 >>> if x<5: ... print "%d lebih kecil dari 5" % x ... elif x==5: ...
print "%d sama dengan 5" % x ... else: ... print "%d lebih besar dari 5" 4 lebih
kecil dari 5

Untuk menguji kondisi kita dapat menggunakan operator ==, <, <=, >, >=, dan
!=.

Sesuatu yang baru dan kita bisa perhatikan pada contoh di atas adalah cara
penulisan blok-blok program. Dalam Python blok-blok perintah ditandai dengan
penulisan kode program yang menjorok ke dalam. Setiap perintah yang
mempunyai batas kiri yang sama dianggap sebagai satu blok. Sebisa mungkin
Anda harus konsisten menggunakan karakter spasi atau karakter tabulasi untuk
membuat indentasi. Jangan mencampur antara spasi dan tabulasi. Kesalahan
yang sering terjadi dengan indentasi ini adalah terlihat dalam penampilan editor
kita sudah lurus pada batas kiri tapi ada perbedaan dalam jumlah karakter
tabulasi atau spasi.

Dalam perintah pencetakan ini kita menggunakan kode pemformatan %d. Kode
ini akan diganti dengan variabel yang mengikuti string, yaitu x. Antara string dan
variabel dipisahkan oleh tanda %. Jika ada beberapa variabel yang akan dicetak,
seluruh variabel harus dimasukkan ke dalam tanda () dan antara satu variabel
dengan yang lain dipisahkan dengan tanda koma (,). Mari kita coba dengan
interpreter Python.

>>> x=4>>> y=2>>> print "x berisi %d, dan y sama dengan %d" %
x,yTraceback (innermost last):File "<stdin>", line 1, in ?TypeError: not enough
arguments for format string>>> print "x berisi %d, dan y sama dengan %d" %
(x,y)x berisi 4, dan y sama dengan 4

Sekarang kita terapkan seleksi ini dalam skrip yang akan memeriksa apakah
suatu bilangan adalah bilangan bulat atau bukan.

x = input("Masukkan bilangan bulat:")if x%2: print "%d adalah bilangan ganjil"


% xelse: print "%d adalah bilangan genap" % x

Jika dijalankan, skrip ini akan menampilkan:

$ python ganjil.pyMasukkan bilangan bulat:1313 adalah bilangan ganjil$ python


ganjil.pyMasukkan bilangan bulat:2424 adalah bilangan genap

Kata kunci input() berfungsi untuk meminta input berupa bilangan. Bilangan ini
disimpan dalam variabel x. Ekspresi x%2 akan menghasilkan 1 jika x ganjil dan 0
jika x bilangan genap. Oleh Python, 1 akan diartikan sebagai benar dan 0 akan
diartikan salah.

Perulangan

Perulangan dengan kata kunci while mempunyai format umum sebagai berikut:

while kondisi: perintah_jika_kondisi_benarelse: perintah_lain

Perintah-perintah antara while dan else akan selalu dijalankan jika kondisi benar.
Perintah-perintah di bawah else akan dijalankan jika perulangan selesai dengan
normal. Yang dimaksud dengan normal di sini adalah proses perulangan tidak
berhenti karena bertemu kata kunci break.
x = 1while x<5: print x x = x + 1else: print 'Loop sudah selesai dikerjakan!'

Jika skrip di atas ditambahkan suatu kondisi yang diikuti perintah break, maka
blok perintah di bawah else tidak akan pernah dijalankan. Perhatikan
perbedaannya dengan skrip berikut:

x = 1while x<5: if x==3: break print x x = x + 1else: print 'Loop


sudah selesai dikerjakan!'

Perintah break menyebabkan dijalankannya perintah-perintah setelah blok while


dan else ini.

Perintah perulangan selain while adalah for. Format dasar perulangan for adalah:

for variabel in objek: perintah-perintahelse:


perintah_jika_tidak_bertemu_break

Langsung saja ke contoh penggunaan pernyataan for ini.

for x in range(1,5): print xelse: print 'Perulangan selesai'

Fungsi builtin range() dalam skrip ini menghasilkan bilangan 1 sampai 4.


Hasilnya skrip akan mencetak bilangan dari 1 sampai 4 dan string Perulangan
selesai.

Keistimewaan perulangan dengan for di Python adalah dapat memroses array.


Seperti contoh di bawah ini:

y = [10,20,30,40,50,60,70,80,90]for x in y: if x==50: continue if x>70:


break print xelse: print 'Perulangan selesai'

Hasil yang akan didapat jika skrip ini dijalankan:

10 20 30 40 60 70

Pernyataan continue akan menyebabkan proses berlanjut ke awal perulangan


dan melewatkan perintah-perintah yang ada di antara continue dan akhir blok
perulangan.
Demikian akhir bagian pertama. Untuk mempelajari lebih jauh lagi tunggu
bagian tutorial berikutnya.

Salman AS tinggal di Depok dan bekerja di Nurulfikri Cipta Solusi, Jakarta. Juga
mengajar HTML, PHP, MySQL, Linux di Nurulfikri Computer & Statistics. Meski
menggunakan PHP dan MySQL untuk pemrograman Web, namun memakai
Python untuk skripting umum. Dapat dihubungi di salmanas@programmer.net.
Rumus abc

import math

def abc(af, bf, cf) :

df = bf**2-4*af*cf

if df >= 0 :

x1f = (-bf+math.sqrt(df))/2*af

x2f = (-bf-math.sqrt(df))/2*af

elif df<0:

akar_r = (-bf)/(2*af)

akar_i = (math.sqrt(-df))/(2*af)

x1f = complex (akar_r, akar_i)

x2f = complex (akar_r, akar_i)

return x1f, x2f

# Program Utama

mau="y"

while mau=="y" :

print("menghitung akar persamaan kuadrat ax^2+bx+cx=0")

a = float(input("masukkan nilai a: "))

b = float(input("masukkan nilai b: "))

c = float(input("masukkan nilai c: "))

x1, x2 = abc(a, b, c)

print("x1= ", x1)

print("x2= ", x2)

print()
bilangan prima

#bilangan prima

for n in range (2,15):

for x in range (2,n):

if n%x==0:

print (n,"=",x,"*",n//x)

break

else:

print(n,"=bilangan prima")

exponensial

#Program exponensial

def faktorial (nf):

i,fak = 1,1

while i<=nf :

fak = fak*i

i=i+1

return fak

#Program Utama

mau="y"

while mau=="y" :

print ("menghitung Exponensial")

x = int(input("masukkan nilai exp(1-10) : "))

n, jumlah = 0,0

for n in range (100) :

pembilang = x**n
penyebut = faktorial (n)

jumlah = jumlah + pembilang/penyebut

n +=1

print("exp(" ,x, ") = ", jumlah)

print()

ganjil

#menentukan ganjil atau genap

mau="y"

while mau=="y" :

x=int(input("masukkan angka : "))

if(x%2==0) :

print("genap")

else : print ("ganjil")

print()

jumlah

#program menghitung penjumlahan

mau="y"

while mau=="y" :

print("Menghitung Penjumlahan")

a=int(input("a = "))

b=int(input("b = "))

jumlah=a+b

print("jumlah = ", jumlah)

print()
#program menghitung luas

def hitung_luas_lingkaran():

print("menghitung luas lingkaran")

radius=int(input("jari2 = "))

luas=3.14*radius*radius

print("luas = ", luas)

def hitung_luas_persegi_panjang():

print("menghitung luas persegi panjang")

panjang=int(input("panjang = "))

lebar=int(input("lebar = "))

luas=panjang*lebar

print("luas = ", luas)

menghitung luas

#program utama

mau="y"

while mau=="y":

print("Menghitung Luas")

print("1.Lingkaran")

print("2.Persegi Panjang")

pilihan=input("pilihan (1 atau 2) = ")

if pilihan=='1':

hitung_luas_lingkaran()
elif pilihan=='2':

hitung_luas_persegi_panjang()

else:

print("pilihan salah")

print()

maksimal

#nilai maksimum

mau="y"

while mau=="y" :

x1=int(input("masukkan angka ke-1 = "))

x2=int(input("masukkan angka ke-2 = "))

x3=int(input("masukkan angka ke-3 = "))

print("Angka terbesar adalah = ", max(x1,x2,x3))

print()

minimal

#nilai minimum

mau="y"

while mau=="y" :

x1=int(input("masukkan angka ke-1 = "))

x2=int(input("masukkan angka ke-2 = "))

x3=int(input("masukkan angka ke-3 = "))

print("Angka terkecil adalah = ", min(x1,x2,x3))

print()

You might also like