• Tidak ada hasil yang ditemukan

LIST DAN TUPLES. Kuliah Metode Komputasi, Minggu ke 3. Thursday, March 3, 16

N/A
N/A
Protected

Academic year: 2021

Membagikan "LIST DAN TUPLES. Kuliah Metode Komputasi, Minggu ke 3. Thursday, March 3, 16"

Copied!
37
0
0

Teks penuh

(1)

LIST DAN TUPLES

(2)

STRUKTUR DATA

• Dalam kuliah ini akan dijelaskan konsep baru, yaitu struktur

data

• Struktur data adalah koleksi dari elemen-elemen data (misal,

karakter, bilangan, atau struktur data yang lain), dengan urutan tertentu

• Struktur data paling sederhana di dalam Python adalah sekuen

(urutan). setiap komponen dari sekuen, diberi identitas nomer urutan, yang menyatakan posisi, yang disebut indeks.

(3)

STRUKTUR DATA

• Di dalam Python, indeks pertama diberi nomer 0 (nol)

• Indeks kedua, 2 adalah 1, indeks ke 3 adalah 2 dst

• Python memiliki 6 tipe sekuen yang sudah build-in, dan kita

akan belajar 2 tipe saja hari ini, yaitu list dan tuple

• Perbedaan mendasar keduanya adalah, list dapat diubah isi dan

urutannya, sedangkan tuple tidak bisa !

(4)

• Contoh list

• >>> wiwit = [ ‘Wiwit Suryanto’, 42]

• >>> haidar = [‘Haidar Pramudito, 11]

• >>> database = [wiwit haidar]

• >>> database

(5)

OPERASI DASAR SEKUEN

• Ada banyak operasi dasar untuk sebuah sekuen, diantaranya

• (1) peng-indeks-an

• (2) pemotongan

• (3) penambahan

• (4) pengalian

(6)

PENG-INDEKS-AN

• Setiap elemen dalam sebuah sekuen adalah (secara otomatis) dinomeri, dari nol

dan seterusnya.

• Kita dapat mengakses secara individual, dengan memberi identitas nomer tersebut • >>> salam = ‘Selamat Pagi’

• >>> salam[0]= • >>>’S’

• >>> salam[10] = • >>>’g’

(7)

PENG-INDEKS-AN

• >>> salam[10] =

• >>>’g’

• >>> Perbuatan seperti diatas disebut peng-indeks-an.

• Jika kita menggunakan bilangan negatif, artinya, Python megurutkan

dari belakang

• >>> salam[-1] • >>>’i’

(8)

PENG-INDEKS-AN

• Di dalam Python, pengindeksan dapat langsung dilakukan saat

itu juga ketika kita memanggil sebuah fungsi, misalnya kita akan mengambil bilangan ke empat dalam tahun,

• >>> keempat = raw_input(‘Tahun : ‘)[3]

• >>> Tahun: 2015 • >>> keempat

(9)

PENG-INDEKS-AN

• Contoh, menerjemahkan tanggal, bulan tahun dalam bahasa

inggris

• > Tahun : 1974

• > Bulan: 8

• > Hari : 16

(10)
(11)

PENGIRISAN, SLICING

• Untuk mengakses sejumlah elemen, digunakan range indeks dengan

tanda titik2, :

• >>> tag = ‘<a href=”http://www.python.org”> Python website </a>’

• >>> tag[9:30]

• ‘http://www.python.org’

• tag[32:-4]

(12)

PENGIRISAN, SLICING

• Mudah, bukan?

• Jadi, perhatikan sekali lagi bahwa indeks pertama adalah elemen yang hendak

diikutkan dalam irisan

• bilangan = [1,2,3,4,5,6,7,8,9,10] • bilangan[3:6]

• [4,5,6]

• bilangan[0:1] • [1]

(13)
(14)

CONTOH

• Buatlah program untuk mendapatkan nama domain dari link

website yang di-inputkan

• Masukkan nama tautan (URL) : http://www.google.com

• Nama domain : google

• . • .

(15)

LONGER STEPS

• bilangan[0:10:1]

• [1,2,3,4,5,6,7,8,9,10]

• pada contoh diatas, ditambah satu bilangan di belakang sendiri, yaitu ukuran

langkahnya, dalam hal ini 1

• bilangan[0,10,2] • [1,3,5,7,9]

• bilangan[::4] • [1,5,9]

(16)

• Ukuran langkah tidak boleh nol, tapi boleh negatif • bilangan[8:3:-1] • [9,8,7,6,5] • bilangan[10:0,-2] • [10,8,6,4,2] • bilangan[:5:-2]

(17)

MENAMBAH URUTAN

• [1,2,3]+[4,5,6] • [1,2,3,4,5,6] • ‘Halo, ‘ + ‘dunia!’ • ‘Hallo, dunia!’ • [1,2,3] + ‘dunia’

(18)

PERKALIAN

• ‘python’ * 5 • pythonpythonpythonpythonpython • [42] * 10 • [42, 42, 42, 42, 42, 42, 42, 42, 42, 42] • urutan = [kosong] * 9 • urutan

(19)
(20)

KEANGGOTAAN

• >>> permission = ‘rw’ • >>> ‘w’ in permission • True • >>> ‘x’ in permission • False

(21)

• # periksa nama pemakai dan kode PINnya • database = [ • [‘albert’, ‘1234’], • [‘dilbert’, ‘4242’], • [‘smith’, ‘7524’], • [‘jones’, ‘9843’] • ]

• username = raw_input(‘Nama pengguna : ‘) • pin = raw_input(‘kode PIN :’)

(22)

PANJANG, MIN, MAX

• bilangan = [100, 34, 678] • len(bilangan) • 3 • min(bilangan) • 34 • max(bilangan) • 678 • max(2,3) • 3 • min(9,3,2,5) • 2

(23)

FUNGSI LIST

• Sering kali kita memerlukan untuk mengubah sebuah string

menjadi list. Dalam Python ada fungsi list

• >>> list(‘Hello’)

• [‘H’, ‘e’, ‘l’, ‘l’, ‘o’]

• Sebaliknya, list dari beberapa karakter dapat diubah menjadi

string dengan perintah >>> ‘ ‘.join(bebarapakarakter)

(24)

OPERASI DASAR LIST

mengubah list • >>> x = [1, 1, 1] • >>> x[1] = 2 • >>> x • [1, 2, 1] menghapus elemen

• >>> nama = [‘wiwit’, ‘iwan’, ‘nukman’, ‘afif ’,”Nu’ma”] • >>> del nama[4]

• >>> nama

(25)

MENETAPKAN KARAKTER

• Pengirisan merupakan fitur canggih dalam Python, dan menjadi semakin lebih baik karena kita dapat menetapkan sebuah karakter atau nilai di pada irisan. Dalam Matlab hal ini bisa dilakukan, namun agak tricky ...

• >>> nama = list(‘Pascal’) • >>> nama[1:]=list(‘ython’] • >>> nama • [‘P’, ‘y’, ‘t’, ‘h’, ‘o’, ‘n’] • >>> bilangan = [1, 5] • >>> bilangan[1:1] = [2, 3, 4] • >>> bilangan • >>> [1, 2, 3, 4,5] • >>> bilangan[1:4]=[] • [1, 5]

(26)

METODE-METODE LIST

• Dalam Python, metode adalah sebuah fungsi, yang terikat oleh sebuah obyek,

baik itu berupa list, bilangan, string atau apapun, defaultnya dibelakang

• Cara memanggilnya: obyek.method(argumen) • metode 1, append

• lst=[1, 2, 3] • lst.append(4) • lst

(27)

METODE-METODE LIST

metode 2, count

• menghitung kejadian dari sebuah elemen dalam list

• >>>[‘to’, ‘be’,’or’,‘not’,’to’,’be’].count(‘to’) • 2 • >>> x = [[1, 2],1, 1, [2, 1, [1, 2]]] • >>> x.count(1) • 2 • >>> x.count([1, 2]) • 1

(28)

METODE-METODE LIST

metode 3, extend

• meng-ekstensi list aslinya • >>> a = [1, 2, 3]

• >>> b = [4, 5, 6] • >>> a.extend(b) • >>>a

• [1, 2, 3, 4, 5, 6]

• atau dapat juga dengan assigning • >>> a[len(a):]=b

(29)

METODE-METODE LIST

metode 4, index

• mencari indeks dari kejadian dalam list

• >>> moto = [‘satu’, ‘nusa’,satu’,‘bangsa’]

• >>> moto.index(‘nusa’)

(30)

METODE-METODE LIST

metode 5, insert

• menyisipkan obyek di dalam list • >>> bilangan = [1, 2, 3, 5, 6, 7] • >>> bilangan.insert(3,‘empat’) • >>> bilangan

• [1, 2, 3, ‘empat’, ‘5’,’6’,’7’] • keren, huh?

(31)

METODE-METODE LIST

metode 6, pop

• menghilangkan elemen di dalam list. Defaultnya elemen terbelaaaaakang. • >>> x = [1, 2, 3] • >>> x.pop() • 3 • >>> x • [1, 2] • >>> x.pop(0) • 1 • >>> x • [2]

(32)

METODE-METODE LIST

metode 7, remove

• menghilangkan elemen di dalam list yang muncul pertama kali.

• >>> x = [‘to’,’be’,‘or’,‘not’,’to’,‘be’]

• >>> x.remove(‘be’)

• >>> x

(33)

METODE-METODE LIST

metode 8, reverse

• membalik elemen di dalam list

• >>> x = [1, 2, 3]

• >>> x.reverse()

• >>> x

(34)

METODE-METODE LIST

metode 9, sort

• mengurutkan elemen di dalam list • >>> x = [4, 6, 2, 1, 7, 9]

• >>> x.sort() • >>> x

• [1, 2, 4, 6, 7, 9] • Namun awas !

(35)

METODE-METODE LIST

metode 9a sort • >>> x = [‘I’,‘want’,’to’] • >>> x.sort(key=len) • >>>x • [‘I’,’to’,‘want’] • >>> x = [4,6,2,1,7,9] • >>> x.sort(reverse=True) • >>> x • [9,7,6,4,2,1]

(36)

TUPLE, URUTAN TAK

TERGANTI

• sama dengan urutan, namun tak dapat diganti.

• nulisnya sederhana, hanya menulis berurutan dengan koma • jadilah tuple !

• >>> 1, 2, 3 • (1, 2, 3)

• Fungsi tuple >>> tuple([1, 2, 3])

(37)

Referensi

Dokumen terkait

Ketoksikan kepada daphnia dan invertebrat-invertebrat akuatik yang lain ujian semi-statik EC50 Daphnia magna (Telepuk): &gt; 1,000 mg/l; 48 h Garis Panduan Ujian OECD 202.

RADIO VISI INTI SWARA FM/H... JEMBER

Penelitian ini bertujuan untuk mengetahui: 1) kelayakan software pengukur tingkat konflik kognitif pada materi asam-basa berdasarkan penilaian guru dan dosen ditinjau

tiga titik atau lebih yang segaris, Banyak segitiga yang dapat dibentuk dengan menghubungkan sebarang tiga titik pada bidang tersebut adalah

Dari kenyataan diatas penulis memandang penelitian ini sangat perlu dilakukan dengan beberapa pertimbangan: Pertama, pendidikan karakter di sekolah atau madrasah

Halaman Peta untuk melihat tempat wisata yang pada permainan ini terdapat 4 tempat wisata yang akan ditampilkan yaitu Gunung Lauser, Aceh Tengah, Gedung Mesium Tsunami,

- PALING SEDIKIT 40% DARI JUMLAH KESELURUHAN SAHAM YANG DISETOR DICATATKAN DI BURSA EFEK DI INDONESIA, TIDAK TERMASUK SAHAM YANG DIBELI KEMBALI ATAU TREASURY STOCK DENGAN

Prototipe alat pengaduk dodol menghasilkan mutu dodol yang baik, dengan nilai 12.26 dari hasil uji organoleptik, pada putaran pengadukan 20 rpm dan kapasitas 4 kg, serta