Mengelola Data dalam Bentuk List dan String

Operasi Pada Urutan (sequences: List, Set, String) len()

Sebelumnya, kamu telah mempelajari bahwa slicing digunakan untuk urutan. Salah satu fungsi yang sangat berguna untuk List atau String adalah len(), yang akan menghitung jumlah elemen dari List (atau jumlah karakter dari String).

l = [1,2,3,3,4,4,4,4,5,6]

s = set(l)

x = "Hello, World"

 

print(l)

print(len(l))

 

print(s)

print(len(s))

 

print(x)

print(len(x))

Hasil :

[1, 2, 3, 3, 4, 4, 4, 4, 5, 6]
10
{1, 2, 3, 4, 5, 6}
6
Hello, World
12

Penggabungan dan Replikasi

Pada List, kamu juga dapat menggabungkan dua list menggunakan operator (+) atau membuat duplikat list menggunakan operator (*).

[1, 2, 3] + ['A', 'B', 'C']

Hasil :

[1, 2, 3, ‘A’, ‘B’, ‘C’]
['X', 'Y', 'Z'] * 3

Hasil :

[‘X’, ‘Y’, ‘Z’, ‘X’, ‘Y’, ‘Z’, ‘X’, ‘Y’, ‘Z’]
spam = [1, 2, 3]

spam = spam + ['A', 'B', 'C']

spam

Hasil :

[1, 2, 3, ‘A’, ‘B’, ‘C’]

Kamu dapat menggunakan operator pengali untuk membuat sebuah list yang diinisialisasi dengan beberapa elemen yang sama.

arr = [0]*10

len(arr)

arr

Hasil :

10
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

Range

Fungsi range() memberikan deret bilangan yang memenuhi pola tertentu. Dalam Python, kamu dapat menggunakan fungsi range() dalam perulangan (seperti for) untuk mengakses elemen-elemen dalam sebuah list. Operasi perulangan dan kontrol perulangan akan dibahas lebih lanjut dalam artikel yang terpisah.

Fungsi range memiliki maksimum tiga parameter yang dapat ditentukan :

1. Jika kamu hanya memberikan satu parameter ke fungsi range, maka akan dibuat deret bilangan yang dimulai dari nol sebanyak n bilangan.

for i in range(9):

    print(i)

Hasil :

0
1
2
3
4
5
6
7
8

2. Jika kamu memberikan dua parameter ke fungsi range, maka akan dibuat deret bilangan yang dimulai dari n hingga sebelum p (bilangan p tidak termasuk). Deret ini sering disebut sebagai inklusif n (deret dimulai dari bilangan n) dan eksklusif p (deret tidak menyertakan bilangan p).

for i in range(3, 9):

    print(i)

Hasil :

3
4
5
6
7
8

3. Jika kamu memberikan tiga parameter ke fungsi range, maka akan dibuat deret bilangan yang dimulai dari n hingga sebelum p (bilangan p tidak termasuk), dengan setiap elemennya memiliki selisih q.

[_ for _ in range(1, 9, 2)]  # list comprehension

Hasil :

[1, 3, 5, 7]

in dan not in

Untuk mengetahui apakah sebuah nilai atau objek ada dalam sebuah list, kamu dapat menggunakan operator in dan not in. Fungsi ini akan mengembalikan nilai boolean True atau False. Berikut ini adalah contohnya :

'howdy' in ['hello', 'hi', 'howdy', 'heyas']

Hasil :

True
spam = ['hello', 'hi', 'howdy', 'heyas']

'cat' in spam

Hasil :

False
'howdy' not in spam

Hasil :

False
'cat' not in spam

Hasil :

True

Memberikan Nilai (Assignment) Untuk Lebih dari 1 Variabel Sekaligus

Kamu dapat memberikan nilai ke beberapa variabel secara bersamaan dari elemen-elemen dalam sebuah List atau Tuple, sehingga tidak perlu menandai satu per satu seperti yang biasa dilakukan :

cat = ['fat', 'orange', 'loud']

size = cat[0]

color = cat[1]

disposition = cat[2]

Untuk melakukan hal tersebut, kamu dapat menggunakan cara seperti berikut :

cat = ['fat', 'orange', 'loud'] # From List

size, color, disposition = cat

cat = ('fat', 'orange', 'loud')  # From Tuple

size, color, disposition = cat

Untuk dapat melakukan ini, jumlah variabel dan jumlah item pada List/Tuple harus sama. Jika tidak, Python akan menampilkan kesalahan ValueError. Meskipun hanya memberikan gambaran tentang operasi pada List/Tuple, kamu akan mempelajari lebih lanjut tentang penanganan kesalahan (Error) di artikel yang terpisah.

cat = ['fat', 'orange', 'loud']

size, color, disposition, name = cat

Hasil :

Traceback (most recent call last):
  File “”, line 1, in
    size, color, disposition, name = cat
ValueError: need more than 3 values to unpack

Saran : Kamu dapat menggunakan assignment pada beberapa variabel untuk menukar nilai dua atau lebih variabel :

a, b = 'Alice', 'Bob'

a, b = b, a

print(a)

print(b)

Hasil :

Bob
Alice

Sort

List dapat diurutkan dengan menggunakan method sort(). Berikut ini adalah contohnya :

x = [2, 5, 3.14, 1, -7]

x.sort()

x

Hasil :

[-7, 1, 2, 3.14, 5]
y = ['ants', 'cats', 'dogs', 'badgers', 'elephants']

y.sort()

y

Hasil :

[‘ants’, ‘badgers’, ‘cats’, ‘dogs’, ‘elephants’]

Untuk menjadikan urutan yang sebaliknya, kamu dapat memasukkan keyword reverse=True.

y.sort(reverse=True)

y

Hasil :

[‘elephants’, ‘dogs’, ‘cats’, ‘badgers’, ‘ants’]

Ada tiga hal yang perlu kamu ingat saat menggunakan metode sort:

1. Metode sort langsung melakukan pengurutan pada variabel yang dioperasikannya, sehingga tidak perlu menggunakan operasi assignment (=).

2. Metode sort tidak dapat mengurutkan list yang memiliki angka dan string sekaligus di dalamnya.

z = [1, 3, 2, 4, 'Alice', 'Bob']

z.sort()

Hasil :

Meskipun hanya memberikan gambaran tentang operasi sort, kamu akan mempelajari lebih lanjut tentang penanganan kesalahan (Error) di artikel yang terpisah.

Traceback (most recent call last):
File “”, line 1, in
z.sort()
TypeError: unorderable types: str() < int()

3. Metode sort menggunakan urutan ASCII, sehingga nilai huruf kapital (uppercase) akan lebih dahulu dibandingkan dengan huruf kecil (lowercase). Berikut ini adalah contohnya :

m = ['Alice', 'ants', 'Bob', 'badgers', 'Carol', 'cats']

m.sort()

m

Hasil :

[‘Alice’, ‘Bob’, ‘Carol’, ‘ants’, ‘badgers’, ‘cats’]

Untuk mengatasi masalah ini, kamu dapat memasukkan keyword str.lower sebagai argumen metode sort. Ini akan membuat metode sort menganggap semua objek menggunakan huruf kecil, tanpa mengubah kondisi asli dari objek tersebut.

spam = ['a', 'z', 'A', 'Z']

spam.sort(key=str.lower)

spam

Hasil :

[‘a’, ‘A’, ‘z’, ‘Z’]

Manipulasi String

String atau teks merupakan salah satu jenis data yang dapat kamu olah dalam program. Kamu dapat melakukan berbagai manipulasi terhadap string, seperti penggabungan, pemisahan, mengambil sub-string, menambah atau mengurangi spasi, mengubah huruf menjadi kapital, menformat string, dan lain-lain.

String Literals

Biasanya, string mudah ditulis di Python dengan menggunakan tanda petik tunggal. Namun, dalam beberapa kondisi, di dalam string diperlukan tanda petik tunggal (misalnya untuk menunjukkan kepemilikan dalam bahasa Inggris – That’s Alice’s Cat). Jika ditulis sebagai 'That is Alice's cat.', Python akan salah menganggap bahwa string berakhir di Alice, dan bagian yang lainnya merupakan kode yang tidak valid.

Untuk mengatasi masalah tersebut, Python memperbolehkan kamu menggunakan tanda petik dua seperti yang kamu lakukan dengan tanda petik tunggal. Dalam kasus sebelumnya, kamu cukup mengetikkan :

st = "That is Alice's cat."

Dengan demikian, Python akan mengenali bahwa tanda petik tunggal merupakan bagian yang tidak terpisahkan dari string tersebut. Namun, bagaimana jika di dalam string tunggal diperlukan kedua jenis tanda petik? Python menyediakan escape character sebagai solusi.

Escape character memungkinkan kamu untuk menggunakan karakter yang sebelumnya tidak bisa dimasukkan dalam string. Escape character biasanya diawali dengan backslash (\) dan diikuti oleh karakter tertentu yang diinginkan. Sebagai contoh, untuk menambahkan tanda petik tunggal dalam string tunggal, kamu dapat menuliskannya seperti ini: \'.

Cara ini merupakan cara teraman untuk menambahkan atau menyunting variabel. Berikut ini adalah contohnya :

st = 'Say hi to Bob\'s mother.'

Dengan demikian, Python akan mengetahui bahwa dalam Bob\’s, sebelum tanda petik terdapat backslash (\) yang menandakan bahwa tanda petik tunggal merupakan bagian dari string dan bukan merupakan akhir dari string. Escape character \’ dan \” memungkinkan kamu untuk memasukkan karakter \' dan \" dalam bagian string. Berikut ini beberapa contoh escape character :

  • \’ : Single quote
  • \” : Double quote
  • \t : Tab
  • \n : Newline (line break)
  • \\ : Backslash

Untuk mencoba contoh-contoh tersebut, kamu dapat memasukkannya ke dalam shell python seperti berikut:

print("Hello there!\nHow are you?\nI\'m doing fine.")

Hasil :

Hello there!
How are you?
I’m doing fine.

Selain tanda petik tunggal dan petik dua, Python juga menyediakan cara lain untuk menuliskan string yaitu dengan menggunakan 3 tanda petik tunggal atau 3 tanda petik dua. Ini juga memiliki kemampuan untuk menyimpan string lebih dari satu baris (multi-line).

multi_line = """Hello there!

How are you?

I'm fine."""

print(multi_line)

Hasil :

Hello there!
How are you?
I’m fine.

Raw Strings

Sebaliknya, Python juga menyediakan cara untuk memasukkan string sesuai dengan apa pun input atau teks yang diberikan. Metode ini disebut sebagai raw strings. Raw strings biasanya digunakan untuk regex atau beberapa implementasi lain yang sangat bergantung pada keberadaan backslash. Untuk menjadikan sebuah string menjadi raw string, tambahkan huruf r sebelum tanda petik pembuka :

print(r'That is Carol\'s cat.')

Hasil :

That is Carol\’s cat.

Demikianlah artikel tentang cara mengelola data dalam bentuk List dan String di Python. Kami harap artikel ini dapat membantu kamu dalam memahami cara mengolah List dan String di Python. Selain itu, jangan lupa untuk terus mempelajari dan mencoba sendiri di Python Shell atau Notebook, agar lebih memahami cara kerja dan aplikasi dari setiap operasi yang dibahas. Selamat belajar!

Next Post Previous Post
No Comment
Add Comment
comment url