Tuples

mytuple = ("apple", "banana", "cherry")
  • Tuple digunakan untuk menyimpan beberapa item dalam satu variabel.

  • Tuple adalah salah satu dari 4 tipe data bawaan Python yang digunakan untuk menyimpan koleksi data. Tiga lainnya adalah List, Set, dan Dictionary, yang semuanya memiliki kualitas dan penggunaan yang berbeda.

  • Tuple adalah koleksi yang terurut dan tidak dapat diubah.

  • Tuple ditulis dengan tanda kurung bulat.

  • Tuple Items
    • Item tuple diurutkan, tidak dapat diubah, dan memungkinkan nilai duplikat.

    • Item tuple diindeks, item pertama memiliki indeks [0], item kedua memiliki indeks [1], dst.

  • Ordered

    Ketika kita katakan bahwa tupel diurutkan, artinya item-itemnya memiliki urutan yang pasti, dan urutan itu tidak akan berubah.

  • Unchangeable

    Tuple tidak dapat diubah, artinya kita tidak dapat mengubah, menambah atau menghapus item setelah tuple dibuat.

  • Allow Duplicates

    Karena tupel diindeks, tupel tersebut dapat memiliki item dengan nilai yang sama:

    thistuple = ("apple", "banana", "cherry", "apple", "cherry")
    

Access Tuple Items

Anda dapat mengakses item tupel dengan merujuk ke nomor indeks, di dalam tanda kurung siku:

thistuple = ("apple", "banana", "cherry")
print(thistuple[1]) #return banana

Negative Indexing

Pengindeksan negatif berarti mulai dari akhir. -1 merujuk pada item terakhir, -2 merujuk pada item kedua terakhir, dst.

thistuple = ("apple", "banana", "cherry")
print(thistuple[-1]) #return cherry

Range of Indexes

Anda dapat menentukan rentang indeks dengan menentukan titik awal dan titik akhir rentang. Saat menentukan rentang, nilai yang dikembalikan akan berupa tupel baru dengan item yang ditentukan.

thistuple = ("apple", "banana", "cherry", "orange", "kiwi", "melon", "mango")
print(thistuple[2:5]) #return ('cherry', 'orange', 'kiwi')

#This will return the items from position 2 to 5.

#Remember that the first item is position 0,
#and note that the item in position 5 is NOT included

Dengan menghilangkan nilai awal, rentang akan dimulai pada item pertama:

thistuple = ("apple", "banana", "cherry", "orange", "kiwi", "melon", "mango")
print(thistuple[:4]) #return ('apple', 'banana', 'cherry', 'orange')

Dengan menghilangkan nilai akhir, rentang akan berlanjut hingga akhir tupel:

thistuple = ("apple", "banana", "cherry", "orange", "kiwi", "melon", "mango")
print(thistuple[2:]) #return ('cherry', 'orange', 'kiwi', 'melon', 'mango')

Range of Negative Indexes

Tentukan indeks negatif jika Anda ingin memulai pencarian dari akhir tupel:

thistuple = ("apple", "banana", "cherry", "orange", "kiwi", "melon", "mango")
print(thistuple[-4:-1]) #return ('orange', 'kiwi', 'melon')

#Negative indexing means starting from the end of the tuple.
#This example returns the items from index -4 (included) to index -1 (excluded)
#Remember that the last item has the index -1

Check if Item Exists

Untuk menentukan apakah item tertentu ada dalam suatu tuple gunakan kata kunci in:

thistuple = ("apple", "banana", "cherry")
if "apple" in thistuple:
  print("Yes, 'apple' is in the fruits tuple")

#return Yes, 'apple' is in the fruits tuple

Update Tuples

Tuple tidak dapat diubah, artinya Anda tidak dapat mengubah, menambah, atau menghapus item setelah tuple dibuat. Namun, ada beberapa solusi.

Change Tuple Values

Setelah sebuah tuple dibuat, Anda tidak dapat mengubah nilainya. Tuple tidak dapat diubah, atau disebut juga immutable.

Namun, ada solusinya. Anda dapat mengonversi tuple menjadi list, mengubah list, dan mengonversi list kembali menjadi tuple.

x = ("apple", "banana", "cherry")
y = list(x)
y[1] = "kiwi"
x = tuple(y)

print(x) #return ("apple", "kiwi", "cherry")

Add Items

Karena tuple bersifat immutable, tuple tidak memiliki metode append() bawaan, tetapi ada cara lain untuk menambahkan item ke dalam tuple.

  1. Konversi menjadi list: Sama seperti solusi untuk mengubah tuple, Anda dapat mengonversinya menjadi list, menambahkan item, dan mengubahnya kembali menjadi tuple.

    # Convert the tuple into a list, add "orange", and convert it back into a tuple:
    thistuple = ("apple", "banana", "cherry")
    y = list(thistuple)
    y.append("orange")
    thistuple = tuple(y)
    
  2. Tambahkan tupel ke tupel. Anda diperbolehkan menambahkan tupel ke tupel, jadi jika Anda ingin menambahkan satu item (atau banyak), buat tupel baru dengan item tersebut, dan tambahkan ke tupel yang sudah ada:

    # Create a new tuple with the value "orange", and add that tuple:
    
    thistuple = ("apple", "banana", "cherry")
    y = ("orange",)
    thistuple += y
    print(thistuple) #return ('apple', 'banana', 'cherry', 'orange')
    

Remove Item

Catatan

Anda tidak dapat menghapus item dalam suatu tupel.

Tuple tidak dapat diubah, jadi Anda tidak dapat menghapus item darinya, tetapi Anda dapat menggunakan solusi yang sama seperti yang kami gunakan untuk mengubah dan menambahkan item tuple:

# Convert the tuple into a list, remove "apple", and convert it back into a tuple:

thistuple = ("apple", "banana", "cherry")
y = list(thistuple)
y.remove("apple")
thistuple = tuple(y)

Atau Anda dapat menghapus tupel sepenuhnya:

thistuple = ("apple", "banana", "cherry")
del thistuple
print(thistuple) #this will raise an error because the tuple no longer exists

Unpack Tuples

Saat kita membuat sebuah tupel, biasanya kita menetapkan nilai padanya. Ini disebut "mengemas" sebuah tupel:

Packing a tuple:

fruits = ("apple", "banana", "cherry")

Namun, dalam Python, kita juga dapat mengekstrak nilai kembali ke dalam variabel. Ini disebut "unpacking":

Unpacking a tuple:

fruits = ("apple", "banana", "cherry")

(green, yellow, red) = fruits

print(green)   #return apple
print(yellow)  #return banana
print(red)     #return cherry

Catatan

Jumlah variabel harus sesuai dengan jumlah nilai dalam tupel, jika tidak, Anda harus menggunakan tanda bintang untuk mengumpulkan nilai yang tersisa sebagai list.

Using Asterisk *

Jika jumlah variabel lebih kecil dari jumlah nilai, Anda dapat menambahkan tanda * pada nama variabel dan nilai akan ditetapkan ke variabel tersebut sebagai daftar:

fruits = ("apple", "banana", "cherry", "strawberry", "raspberry")

(green, yellow, *red) = fruits

print(green)   #return apple
print(yellow)  #return banana
print(red)     #return ['cherry', 'strawberry', 'raspberry']

Jika tanda bintang ditambahkan ke nama variabel lain selain yang terakhir, Python akan menetapkan nilai ke variabel tersebut hingga jumlah nilai yang tersisa cocok dengan jumlah variabel yang tersisa.

# Add a list of values the "tropic" variable:

fruits = ("apple", "mango", "papaya", "pineapple", "cherry")

(green, *tropic, red) = fruits

print(green)   #return apple
print(tropic)  #return ['mango', 'papaya', 'pineapple']
print(red)     #return cherry

Loop Tuples

Loop Through a Tuple

Anda dapat melakukan pengulangan melalui item tupel dengan menggunakan perulangan for.

thistuple = ("apple", "banana", "cherry")
for x in thistuple:
  print(x)

Loop Through the Index Numbers

Anda juga dapat melakukan pengulangan melalui item tuple dengan merujuk ke nomor indeksnya. Gunakan fungsi range() dan len() untuk membuat iterable yang sesuai.

thistuple = ("apple", "banana", "cherry")
for i in range(len(thistuple)):
  print(thistuple[i])

Using a While Loop

Anda dapat melakukan perulangan melalui item-item tuple dengan menggunakan while loop. Gunakan fungsi len() untuk menentukan panjang tuple, lalu mulai dari 0 dan lakukan perulangan melalui item-item tuple dengan merujuk pada indeksnya. Ingatlah untuk menambah indeks sebesar 1 setelah setiap iterasi.

thistuple = ("apple", "banana", "cherry")
i = 0
while i < len(thistuple):
  print(thistuple[i])
  i = i + 1

Join Tuples

Untuk menggabungkan dua atau lebih tupel, Anda dapat menggunakan operator +:

tuple1 = ("a", "b" , "c")
tuple2 = (1, 2, 3)

tuple3 = tuple1 + tuple2
print(tuple3) #return ('a', 'b', 'c', 1, 2, 3)

Multiply Tuples

Jika Anda ingin mengalikan konten suatu tupel sejumlah tertentu, Anda dapat menggunakan operator *:

# Multiply the fruits tuple by 2:

fruits = ("apple", "banana", "cherry")
mytuple = fruits * 2

print(mytuple) #return ('apple', 'banana', 'cherry', 'apple', 'banana', 'cherry')

Tuple Methods

Python memiliki dua metode bawaan yang dapat Anda gunakan pada tupel.

Method

Description

count()

Returns the number of times a specified value occurs in a tuple

index()

Searches the tuple for a specified value and returns the position of where it was found