You are on page 1of 6

2 Variabel, List, Lambda dan

Operator
2.1 Variabel dan Tipe Data
Tipe data menyatakan pola penyajian data dalam komputer: karakter, bilangan,
string, record. Tipe data dibedakan menjadi dua yaitu tipe data dasar dan tipe data
khusus. Tabel dibawah menampilkan beberapa tipe data dasar dan domainnya, yang
dikenal dalam Python.
Nama Tipe Data Ukuran (byte)
Jangkauan
integer
4
-2147483648 - 2147483649
long integer
tak hingga
tak hingga
float
8
2.2e-308 - 1.7e+308
string
Variabel merupakan penampung data yang isinya dapat diubah. Data yang dapat
disimpan adalah data sesuai dengan tipenya.
Nama variabel terdiri dari huruf, angka dan garis bawah, dapat didahului oleh
huruf dan garis bawah, dengan ketentuan:
1. Tidak dapat didahului oleh angka.
2. Tidak dapat menggunakan opeator hitung dan karakter - karakter khusus seperti: + - / * % : ; . , # @ $ &
3. Nama variabel tidak dapat disela dengan spasi.
4. Tidak dapat menggunakan reserved words.
5. Huruf besar dan huruf kecil berbeda.
Pemberian (assignment) nilai ke variabel
Tipe data dari variabel ditentukan oleh isi yang diberikan oleh programmer. Jika
programmer memberikan nilai yang masuk dalam range integer maka variabel tersebut akan bertipe integer, jika floating-point maka variabel tersebut akan bertipe
float, dan seterusmya. Berikut ini merupakan contoh dari penggunaan variabel

Praktikum Pemrograman Komputer

1
2
3
4
5
6
7
8

a = 10.5
type(a)
a = 10
type(a)
a = 2**1024
type(a)
a = "ini String"
type(a)

Latihan. 3.1
1
2

# Program 3.1
import math

3
4
5

r = input("Jari - jari lingkaran = ")


print "Luas lingkaran = ", math.pi*r*r

Latihan. 3.2
1
2

# Program 3.2
import math

3
4
5
6

r = input("Jari - jari lingkaran = ")


luas = math.pi*r*r
print "Luas lingkaran = ", luas

2.2 List
List pada dasarnya adalah sebuah array yang bisa terdiri dari satu jenis tipe data
ataupun terdiri dari beberapa tipe data. Tuple sedikit banyak merupakan sebuah
list, hanya saja pada tuple isi dari tuple tersebut bersifat read-only.

2.2.1 List Satu Dimensi


List adalah deretan variabel yang mempunyai tipe data tertentu dan mempunyai nilai yang sama. Pada bahasa Python, list dapat dideklarasikan dengan menggunakan
perintah sebagai berikut.

Praktikum Pemrograman Komputer

1
2
3

list_a = [10, 10, 20, 30, 40]


list_b = ["ini string", 1, 2, 3]
list_c = ["string 1", 1.0, 2.0, 1E-20, 10.3456]

Akses ke dalam list dapat menggunakan beberapa cara, yaitu dengan menggunakan
indeks langsung, indeks bacward, dan slice. Berikut contoh masing - masing cara
tersebut.
1
2
3
4
5

a
a
a
a
a

=
=
=
=
=

list_a[0] # a = 10
list_a[0:3] # a = [10, 10, 20]
list_a[::-1] # a = [40, 30, 20, 10, 10]
list_a[-1] # a = 40
list_a[-3::] # a = [20, 30, 40]

2.2.2 List Multidimensi


List multidimensi mempunyai dimensi yang lebih dari 1, seperti pendeklarasian suatu
matriks. Semua aturan pada list multimensi sama dengan aturan yang ada pada list
satu dimensi. Dimensi yang digunakan antara data pertama dan data berikutnya
tidak harus sama dan dapat berubah sesuai dengan data yang digunakan. Berikut
merupakan contoh perintah untuk mendeklarasikan suatu list multidimensi.
1
2
3

list_a = [ [0, 0, 0], [1, 1, 1], [3, 3, 3] ]


list_b = [ "string 1", "string 2", [3, 4, 5] ]
list_c = [ [0.0, 1.0, 0.0], [1, 1, 1], [3.56, 1.234, 23.45] ]

Akses ke dalam list mempunyai aturan yang sama dengan akses data pada list satu
dimensi. Berkut merupaka contoh akses data untuk list multidimensi.
1
2
3
4

a
a
a
a

=
=
=
=

list_a[0][1] # a = 1
list_a[::-1][0] # a = [3, 3, 3]
list_a[-1] # a = [3, 3, 3]
list_a[-2::] # a = [ [1, 1, 1], [3, 3, 3] ]

Latihan. 3.3

Praktikum Pemrograman Komputer

1
2
3
4
5
6
7

# Program 3.3
N = 5
tab = [0] * N
for i in range(N)
tab[i] = i
for i in range(N):
print "i =", i, "tab[i] =", tab[i]

Latihan. 3.4
1
2
3
4
5
6
7

# Program 3.4
b = [ [0, 0, 0] ] * 5
for i in range(3):
for j in range(5):
b[j][i] = i*j
print b[j][i], " ",
print

2.3 Fungsi Lambda


Fungsi lambda adalah suatu fungsi yang merepresentasikan suatu fungsi anonymous
untuk perumusan tertentu. Berikut contoh perbedaan dan penggunaan antara fungsi
biasa dengan fungsi lambda.
1
2

def f(x): return x**2


print f(8)

3
4
5

g = lambda x: x**2
print g(8)

Setiap yang dapat dilihat pada kode diatas, f() dan g() melakukan perintah yang sama
dan dapat digunakan dengan cara yang sama. Fungsi lambda diadaptasi oleh Python
dari functional programming dan keuntungan dari fungsi lambda adalah tidak perlu
mendeklarasikan variabel apapun.

2.4 Operator
Operator merupakan simbol atau kata yang digunakan untuk operasi dan manipulasi dalam program yang melibatkan satu (unary operator) atau dua nilai (binary
operator).

10

Praktikum Pemrograman Komputer


Tabel 2.1: Operator Aritmatika
Operator
*
/
%

Operasi
Operator
Perkalian
Pembagian
+
Sisa Pembagian
**

Operasi
Pengurangan
Penambahan
Pangkat

Tabel 2.2: Operator Relasi


Operator
<
<=
>

Operasi
lebih kecil
lebih kecil atau sama dengan
lebih besar

Operator
>=
==
!=

Operasi
Lebih besar atau sama dengan
sama dengan
tidak sama dengan

Operator Aritmatika
Merupakan operator untuk operasi aritmatika seperti:
Latihan. 3.5
1
2
3
4
5
6
7

# Program 3.5
i = 100
j = j * 2
k = j / 4
l = k % 3
f = lambda x: x**2
print "Nilai i: %d \nNilai j: %d" % (i,j) print "Nilai k: %d \nNilai l: %d" % (k,l)

Operator Relasi
Merupakan operator untuk membandingkan dua buah nilai. Keluaran atau hasil
pembandingan adalah kondisi benar atau kondisi salah.
Operator Logika
Merupakan operator untuk menghubungkan satu atau lebih kondisi. Kondisi bisa
merupakan hasil pembandingan yang menggunakan operator relasi.
Tabel 2.3: Operator Logika
Operatior
and
or
not

Operasi
Logika AND
Logika OR
Logika NOT

11

Praktikum Pemrograman Komputer


Tabel 2.4: Kebenaran operasi AND dan OR
Kondisi 1
Salah
Salah
Benar
Benar

Kondisi 2
Salah
Benar
Salah
Benar

Hasil AND
Salah
Salah
Salah
Benar

Kondisi 1
Salah
Salah
Benar
Benar

Kondisi 2
Salah
Benar
Salah
Benar

Hasil OR
Salah
Benar
Benar
Benar

Latihan. 3.6
1
2
3
4
5

# Program 3.6
k = 2 * 3
l = (k == 6)
m = 5 or 10
print "K =", k, "L = ", l, "M = ", m

2.5 Tugas
1. Buatlah program untuk menampilkan jumlah hari, jam, menit dan detik dari
masukkan berupa lamanya waktu dalam detik. Sebagai contoh: dengan masukkan 100.000 detik akan menghasilkan luaran 1 hari 3 jam 46 menit 40 detik.
Langkah - langkahnya adalah sebagai berikut:
a) Jika N adalah jumlah detik (contoh: 100.000)
b) Buatlah sebuah variabel A, yang berisi (60 * 60 * 24)
c) Bagi nilai N dengan A, simpan di variabel HARI
d) Kalikan nilai A dengan HARI, simpan di variabel B
e) Kurangi nilai N dengan B, simpan di variabel C
f) Bagi nilai C dengan (60 * 60), simpan di variabel JAM
g) Kalikan nilai JAM dengan (60 * 60), simpan di variabel D
h) Kurangi nilai C dengan D, simpan di variabel E
i) Bagi nilai E dengan 60, simpan di variabel MENIT
j) Modulus nilai N dengan 60, simpan di variabel DETIK
2. Buatlah program untuk mencari determinan dari matriks 3x3, simpan di variabel DET !
3. Buatlah program untuk mencari transpose dari matriks 3x3, simpan di variabel
TRANS !

12

You might also like