List
List adalah tipe data untuk kumpulan data. Mirip dengan Array pada bahasa pemrograman lain namun bedanya List bisa diisi berbagai jenis Tipe Data. pada python ada beberapa tipe data yang mirip dengan List yaitu Tuple, Set, dan Dictionary. Tipe data tersebut akan kita bahas lebih lanjut nantinya. kita akan mulai dengan List terlebih dahulu.
untuk membuat List cukup mudah yaitu menggunakan kurung siku lalu setiap datanya dipisah dengan tanda koma.
data = [‘Rahmat’, 1, 2.0]
print(data)
Output:
['Rahmat', 1, 2.0]
anda juga dapat membuat list kosong lalu menambahkan isi dari list satu persatu menggunakan fungsi append().
# membuat list kosong
data = []
# memasukkan isi dari list satu persatu
data.append(‘Rahmat’)
data.append(1)
data.append(2.0)
print(data)
Dalam kode diatas saya membuat list kosong. lalu saya tambahkan isinya satu per satu. fungsi append() adalah menambahkan sesuatu ke bagian akhir List. Hasilnya akan sama seperti yang kita lakukan sebelumnya.
Kita juga dapat memasukkan List ke dalam List.
data = [‘Rahmat’, 1, 2.0, [1, 2]]
Anda dapat mengakses setiap elemen yang ada pada list dengan cara slicing. kita akan menggunakan index dari list untuk melakukan slicing, dimana index pada python dimulai dari 0. yang artinya elemen pertama pada List mempunyai index ke-0. Ayo kita coba langsung agar lebih memahami. untuk mengakses data dari List sangat mudah kita hanya perlu menambahkan index di belakang nama listnya.
data = [[1,2],30,40,50,60,70,80]
print(data[0])
print(data[1])
print(data[4])
print(data[5])
print(data[-3])
Output :
[1,2] 30 60 70 60
bila anda memasukkan angka negatif maka program akan mengambil elemen mulai dari belakang. data[-3] artinya mengambil data ketiga dari belakang.
anda juga bisa menggunakan range untuk mengakses elemennya.
data = [[1,2],30,40,50,60,70,80]
print(data[0:6])
print(data[0:2])
print(data[:4])
print(data[1:5:2])
print(data[:])
Output:
[[1,2], 30, 40, 50, 60, 70] [[1,2], 30] [[1,2], 30, 40, 50] [30, 50] [[1,2], 30, 40, 50, 60, 70, 80]
data[0:6] Mengambil elemen index ke-0 sampai sebelum elemen index ke-6 (tidak termasuk elemen index ke-6, artinya 0-5)
data[0:2] Mengambil elemen index ke-0 sampai sebelum elemen index ke-2.
data[:4] Mengambil elemen mulai dari paling awal sampai sebelum elemen index ke-4.
data[1:5:2] Mengambil elemen index ke-1 sampai sebelum elemen index ke-5 dengan step 2.
data[:] Mengambil semua elemen pada List data.
Anda pun dapat mengganti nilai dari setiap elemen pada list. Contohnya
data = [20,30,40,50,60,70,80]
data[0] = "namaku"
data[4] = False
print(data)
Output:
['namaku', 30, 40, 50, False, 70, 80]
untuk menghapus elemen kita dapat menggunakan fungsi remove atau del.
data.remove(‘namaku’)
del data[3]print(data)
Output:
[30, 40, 50, 70, 80]
Menariknya kita dapat melakukan semua hal diatas pada tipe data String. hal ini dikarenakan data String merupakan kumpulan dari Karakter-karakter.
nama = "Rahmatsyah"
print(nama[0])
print(nama[1])
print(nama[4])
print(nama[-2])
print(nama[0:6])
print(nama[0:2])
print(nama[:4])
print(nama[1:5:2])
print(nama[:])
Output:
R a a a Rahmat Ra Rahm am Rahmatsyah
Tuple
Tipe data Tuple sangat mirip dengan List yang telah kita pelajari sebelumnya yaitu Kumpulan data. bedanya elemen dari dari Tuple tidak dapat diubah. mari kita coba.
untuk mendeklarasikan atau membuat Tuple kita menggunakan kurung lalu koma sebagai pemisah setiap elemen.
data = (‘Rahmat’, 1, 2.0)
print(data)
Output:
('Rahmat', 1, 2)
sama seperti list kita juga dapat melakukan slicing pada tuple
print(data[0])
print(data[1])
Output:
Rahmat 1
Bila kita mencoba mengubah elemen dari Tuple maka akan menghasilkan error.
data[0] = “labkom”
Output:
Traceback (most recent call last): File "TipeData_Tuple.py", line 4, in data[0] = "labkom" TypeError: 'tuple' object does not support item assignment
Set
Set memiliki beberapa perbedaan dari List dan Tuple. yaitu dalah hal index, urutan, dan unique value. pada Set data yang terduplikasi akan di hapus.
fruits = {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'}
print(fruits)
Output
{'orange', 'banana', 'pear', 'apple'}
Indexing tidak berlaku untuk Set dikarenakan Set tidak memiliki urutan/unordered.
print(fruits[0])
Output:
Traceback (most recent call last): File "TipeData_Set.py", line 3, in print(fruits[0]) TypeError: 'set' object is not subscriptable
Dictionary
Dictionary juga merupakan Kumpulan data. akan tetapi berbeda dengan tipe data sebelum-sebelumnya. Dictionary berbentuk ‘key and value’. sama seperti array asosiatif dalam bahasa PHP. untuk membuat Dictionary kita menggunakan kurung kurawal dan koma untuk pemisah/separator dari setiap key dan value.
harga = {'pensil': 3000, 'pulpen': 5000}
print(harga)
Output:
{'pensil': 3000, 'pulpen': 5000}
atau anda dapat membuat Dictionary menggunakan Constructor dict().
harga = dict(pensil=3000, pulpen=5000)
print(harga)
Output:
{'pensil': 3000, 'pulpen': 5000}
berbeda dengan List dan Tuple. pada Dictionary key adalah indexnya. sehingga untuk mengakses elemennya yang kita gunakan adalah key-nya.
harga = {'pensil': 3000, 'pulpen': 5000}
print(harga['pensil'])
print(harga['pulpen'])
Output:
3000 5000
untuk mengubah elemen dari Dictionary caranya sama seperti List dan Tuple akan tetapi menggunakan key sebagai index.
harga['pensil'] = 5000
harga['pulpen'] = 7000
print(harga)
Output:
{'pensil': 5000, 'pulpen': 7000}
menghapus elemen dictionary kita dapat menggunakan fungsi del.
del harga[‘pensil’] # akan menghapus elemen dengan key pensil
lalu untuk menambahkan elemen.
harga[‘penghapus’] = 2000
harga[‘kertas’] = 200
print(harga)
Output:
{'pulpen': 7000, 'penghapus': 2000, 'kertas': 200}
pada dictionary kita bisa menambahkan dictionary lagi didalamnya. contoh kasus yaitu pada data mahasiswa, yang berisi Nama, NIM, Nilai Mata Kuliah, dimana nilai mata kuliah ini terbagi lagi.
mahasiswa = {
'nama':'Baso',
'nim':1711103211,
'nilaiMatkul':{
'aljabarLinear':99,
'kalkulus':98,
'JST':97
}
}
print(mahasiswa)
print(mahasiswa['nilaiMatkul']['aljabarLinear'])
print(mahasiswa['nilaiMatkul']['kalkulus'])
print(mahasiswa['nilaiMatkul']['JST'])
Output:
{'nama': 'Baso', 'nim': 1711103211, 'nilaiMatkul': {'aljabarLinear': 99, 'kalkulus': 98, 'JST': 97}} 99 98 97
Itulah tadi penjelasan mengenai beberapa tipe data yang ada pada