Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> Python

Python Tuple

Tuple Python

Dalam artikel ini, Anda akan mempelajari segala sesuatu tentang tupel Python. Lebih khusus lagi, apa itu tupel, cara membuatnya, kapan menggunakannya, dan berbagai metode yang harus Anda ketahui.

Video:Daftar Python dan Tuple

Tuple dalam Python mirip dengan daftar. Perbedaan antara keduanya adalah bahwa kita tidak dapat mengubah elemen dari sebuah tuple setelah ditugaskan sedangkan kita dapat mengubah elemen dari sebuah daftar.


Membuat Tuple

Tuple dibuat dengan menempatkan semua item (elemen) di dalam tanda kurung () , dipisahkan dengan koma. Tanda kurung bersifat opsional, namun merupakan praktik yang baik untuk menggunakannya.

Sebuah tuple dapat memiliki sejumlah item dan mereka mungkin memiliki tipe yang berbeda (integer, float, list, string, dll.).

# Different types of tuples

# Empty tuple
my_tuple = ()
print(my_tuple)

# Tuple having integers
my_tuple = (1, 2, 3)
print(my_tuple)

# tuple with mixed datatypes
my_tuple = (1, "Hello", 3.4)
print(my_tuple)

# nested tuple
my_tuple = ("mouse", [8, 4, 6], (1, 2, 3))
print(my_tuple)

Keluaran

()
(1, 2, 3)
(1, 'Hello', 3.4)
('mouse', [8, 4, 6], (1, 2, 3))

Tuple juga dapat dibuat tanpa menggunakan tanda kurung. Ini dikenal sebagai pengepakan tuple.

my_tuple = 3, 4.6, "dog"
print(my_tuple)

# tuple unpacking is also possible
a, b, c = my_tuple

print(a)      # 3
print(b)      # 4.6
print(c)      # dog

Keluaran

(3, 4.6, 'dog')
3
4.6
dog

Membuat tuple dengan satu elemen agak rumit.

Memiliki satu elemen di dalam tanda kurung tidak cukup. Kita memerlukan tanda koma untuk menunjukkan bahwa itu sebenarnya adalah tuple.

my_tuple = ("hello")
print(type(my_tuple))  # <class 'str'>

# Creating a tuple having one element
my_tuple = ("hello",)
print(type(my_tuple))  # <class 'tuple'>

# Parentheses is optional
my_tuple = "hello",
print(type(my_tuple))  # <class 'tuple'>

Keluaran

<class 'str'>
<class 'tuple'>
<class 'tuple'>

Mengakses Elemen Tuple

Ada berbagai cara di mana kita dapat mengakses elemen tuple.

1. Pengindeksan

Kita dapat menggunakan operator indeks [] untuk mengakses item dalam tuple, di mana indeks dimulai dari 0.

Jadi, tuple yang memiliki 6 elemen akan memiliki indeks dari 0 hingga 5. Mencoba mengakses indeks di luar rentang indeks tuple (6,7,... dalam contoh ini) akan memunculkan IndexError .

Indeks harus bilangan bulat, jadi kita tidak bisa menggunakan float atau tipe lainnya. Ini akan menghasilkan TypeError .

Demikian juga, tupel bersarang diakses menggunakan pengindeksan bersarang, seperti yang ditunjukkan pada contoh di bawah ini.

# Accessing tuple elements using indexing
my_tuple = ('p','e','r','m','i','t')

print(my_tuple[0])   # 'p' 
print(my_tuple[5])   # 't'

# IndexError: list index out of range
# print(my_tuple[6])

# Index must be an integer
# TypeError: list indices must be integers, not float
# my_tuple[2.0]

# nested tuple
n_tuple = ("mouse", [8, 4, 6], (1, 2, 3))

# nested index
print(n_tuple[0][3])       # 's'
print(n_tuple[1][1])       # 4

Keluaran

p
t
s
4

2. Pengindeksan Negatif

Python memungkinkan pengindeksan negatif untuk urutannya.

Indeks -1 mengacu pada item terakhir, -2 untuk item terakhir kedua dan seterusnya.

# Negative indexing for accessing tuple elements
my_tuple = ('p', 'e', 'r', 'm', 'i', 't')

# Output: 't'
print(my_tuple[-1])

# Output: 'p'
print(my_tuple[-6])

Keluaran

t
p

3. Mengiris

Kita dapat mengakses berbagai item dalam sebuah tuple dengan menggunakan operator pengiris titik dua : .

# Accessing tuple elements using slicing
my_tuple = ('p','r','o','g','r','a','m','i','z')

# elements 2nd to 4th
# Output: ('r', 'o', 'g')
print(my_tuple[1:4])

# elements beginning to 2nd
# Output: ('p', 'r')
print(my_tuple[:-7])

# elements 8th to end
# Output: ('i', 'z')
print(my_tuple[7:])

# elements beginning to end
# Output: ('p', 'r', 'o', 'g', 'r', 'a', 'm', 'i', 'z')
print(my_tuple[:])

Keluaran

('r', 'o', 'g')
('p', 'r')
('i', 'z')
('p', 'r', 'o', 'g', 'r', 'a', 'm', 'i', 'z')

Mengiris dapat divisualisasikan dengan baik dengan mempertimbangkan indeks berada di antara elemen-elemen seperti yang ditunjukkan di bawah ini. Jadi jika kita ingin mengakses suatu range, kita membutuhkan indeks yang akan mengiris bagian dari tuple.


Mengubah Tuple

Tidak seperti daftar, tupel tidak dapat diubah.

Ini berarti bahwa elemen tupel tidak dapat diubah setelah mereka ditetapkan. Namun, jika elemen itu sendiri merupakan tipe data yang dapat diubah seperti daftar, item bersarangnya dapat diubah.

Kami juga dapat menetapkan tupel ke nilai yang berbeda (penugasan kembali).

# Changing tuple values
my_tuple = (4, 2, 3, [6, 5])


# TypeError: 'tuple' object does not support item assignment
# my_tuple[1] = 9

# However, item of mutable element can be changed
my_tuple[3][0] = 9    # Output: (4, 2, 3, [9, 5])
print(my_tuple)

# Tuples can be reassigned
my_tuple = ('p', 'r', 'o', 'g', 'r', 'a', 'm', 'i', 'z')

# Output: ('p', 'r', 'o', 'g', 'r', 'a', 'm', 'i', 'z')
print(my_tuple)

Keluaran

(4, 2, 3, [9, 5])
('p', 'r', 'o', 'g', 'r', 'a', 'm', 'i', 'z')

Kita dapat menggunakan + operator untuk menggabungkan dua tupel. Ini disebut gabungan .

Kami juga dapat mengulang elemen dalam sebuah tuple untuk beberapa kali menggunakan * operator.

Keduanya + dan * operasi menghasilkan tupel baru.

# Concatenation
# Output: (1, 2, 3, 4, 5, 6)
print((1, 2, 3) + (4, 5, 6))

# Repeat
# Output: ('Repeat', 'Repeat', 'Repeat')
print(("Repeat",) * 3)

Keluaran

(1, 2, 3, 4, 5, 6)
('Repeat', 'Repeat', 'Repeat')

Menghapus Tuple

Seperti dibahas di atas, kita tidak dapat mengubah elemen dalam sebuah tuple. Artinya, kami tidak dapat menghapus atau menghapus item dari tuple.

Menghapus tuple seluruhnya, bagaimanapun, dimungkinkan menggunakan kata kunci del.

# Deleting tuples
my_tuple = ('p', 'r', 'o', 'g', 'r', 'a', 'm', 'i', 'z')

# can't delete items
# TypeError: 'tuple' object doesn't support item deletion
# del my_tuple[3]

# Can delete an entire tuple
del my_tuple

# NameError: name 'my_tuple' is not defined
print(my_tuple)

Keluaran

Traceback (most recent call last):
  File "<string>", line 12, in <module>
NameError: name 'my_tuple' is not defined

Metode Tuple

Metode yang menambahkan item atau menghapus item tidak tersedia dengan Tuple. Hanya dua metode berikut yang tersedia.

Beberapa contoh metode tuple Python:

my_tuple = ('a', 'p', 'p', 'l', 'e',)

print(my_tuple.count('p'))  # Output: 2
print(my_tuple.index('l'))  # Output: 3

Keluaran

2
3

Operasi Tuple Lainnya

1. Uji Keanggotaan Tuple

Kita dapat menguji apakah suatu item ada dalam sebuah tuple atau tidak, dengan menggunakan kata kunci in .

# Membership test in tuple
my_tuple = ('a', 'p', 'p', 'l', 'e',)

# In operation
print('a' in my_tuple)
print('b' in my_tuple)

# Not in operation
print('g' not in my_tuple)

Keluaran

True
False
True

2. Iterasi Melalui Tuple

Kita dapat menggunakan for loop untuk mengulangi setiap item dalam sebuah tuple.

# Using a for loop to iterate through a tuple
for name in ('John', 'Kate'):
    print("Hello", name)

Keluaran

Hello John
Hello Kate

Kelebihan Tuple dibandingkan Daftar

Karena tupel sangat mirip dengan daftar, keduanya digunakan dalam situasi yang sama. Namun, ada keuntungan tertentu dari penerapan tuple dibandingkan daftar. Di bawah ini tercantum beberapa keuntungan utama:

  • Kami biasanya menggunakan tupel untuk tipe data yang heterogen (berbeda) dan daftar untuk tipe data yang homogen (serupa).
  • Karena tupel tidak dapat diubah, iterasi melalui tupel lebih cepat daripada dengan daftar. Jadi ada sedikit peningkatan performa.
  • Tuple yang berisi elemen yang tidak dapat diubah dapat digunakan sebagai kunci untuk kamus. Dengan daftar, ini tidak mungkin.
  • Jika Anda memiliki data yang tidak berubah, mengimplementasikannya sebagai Tuple akan menjamin bahwa data tersebut tetap terlindungi dari penulisan.

Python

  1. Tipe Data Python
  2. Operator Python
  3. Pernyataan lulus python
  4. Argumen Fungsi Python
  5. Kamus Python
  6. Python Iterator
  7. Penutupan Python
  8. Tanggal waktu Python
  9. Python - Ikhtisar
  10. Python - Angka